자주 묻는 질문 (FAQ)

이 페이지에서는 가장 자주 묻는 질문에 대한 답변부터 제공합니다. 원하는 답이 없다면 바로 SerialTool 개발팀에 문의하세요!

  • COM Sniffer란 무엇인가요?

    COM Sniffer는 Windows용 강력한 유틸리티로, 애플리케이션이나 서드파티 소프트웨어의 트래픽을 높은 안정성으로 분석할 수 있도록 시리얼 포트를 패시브하게, 그리고 24시간 연속(24/7)으로 로그 수집·스니핑·모니터링하게 해줍니다. 간단하고 직관적인 인터페이스를 제공하며, 물리적 포트와 가상 포트( USB‑시리얼 포함) 모두와 호환됩니다. 이미 다른 프로그램이 사용 중인 COM 포트의 트래픽도 모니터링할 수 있습니다.
  • COM Sniffer가 SerialTool의 일부인 이유는 무엇인가요?

    COM Sniffer는 현재 SerialTool에 통합된 모듈로 제공됩니다. SerialTool은 시리얼 포트 통신(Windows, macOS, Linux)을 위한 크로스 플랫폼 스위트로, 고급 기능이 풍부합니다. 향후 COM Sniffer가 단독 버전으로도 출시될 수 있으나, 현재는 SerialTool과 함께서만 제공됩니다.
    문의 사항이 있다면 SerialTool 팀에 직접 연락해 주세요.
  • COM Sniffer는 macOS 또는 Linux에서도 사용할 수 있나요?

    COM Sniffer는 현재 Windows에서만 제공됩니다. Windows에서 신뢰할 수 있는 시리얼 스니퍼를 구축하려면 커널 수준 드라이버와 복잡한 기술적 구현이 필요하기 때문입니다. macOS와 Linux에는 커널 드라이버가 필요 없고 사용자 공간에서 동작하는 대체 솔루션들이 존재합니다.
  • COM Sniffer는 어떻게 설치하나요?

    다운로드가 완료되면 COM Sniffer는 SerialTool 패키지에 포함되어 있습니다. 설치 프로그램이 필요한 모든 드라이버를 수동 설정 없이 자동으로 설치합니다. 몇 분이면 Windows에서 시리얼 포트 모니터링을 시작할 수 있습니다.
  • COM Sniffer는 어떤 운영체제에서 실행되나요?

    COM Sniffer는 SerialTool 패키지의 일부이므로, 모든 64비트 Windows 운영체제에서 동작합니다.
  • RS485, RS422, RS232 같은 USB‑시리얼 컨버터나 가상 포트와도 작동하나요?

    COM Sniffer는 PC가 인식하는 모든 시리얼 포트—물리적 또는 가상 COM 포트(USB–시리얼 컨버터 포함)—에서 동작합니다. 해당 포트가 Windows에 COM 포트로 등록되어 있다면, COM Sniffer는 주 애플리케이션의 동작을 변경하지 않고 그 포트를 지나는 모든 트래픽(RS‑232, RS‑422, RS‑485 링크 포함)을 가로채 분석할 수 있습니다.
    COM 포트가 열려 데이터 교환을 시작하면 모니터링은 패시브하고 비침습적으로 이루어집니다. COM Sniffer는 패킷과 파라미터를 실시간으로 캡처하여 신뢰할 수 있는 스니핑과 로깅을 보장합니다.
  • 시리얼 포트에서 데이터를 보내거나 받는 방법은?

    COM Sniffer는 시리얼 통신 프로그램이 아닙니다. COM 포트를 통해 바이트를 전송하거나 수신하지 않으며, 포트를 열거나 제어하지도 않습니다. 오로지 시리얼 트래픽을 패시브하게 모니터링/스니핑하고 로그를 수집하는 역할만 합니다.
    데이터 송수신, 여러 포트의 병렬 오픈, 고급 통신 기능이 필요하다면, 이러한 기능을 담당하는 SerialTool에 COM Sniffer가 통합되어 있으므로 SerialTool을 사용해 주세요.
  • 동시에 몇 개의 시리얼 포트를 모니터링할 수 있나요?

    여러 시리얼 포트를 동시에 모니터링할 수 있습니다. 안정성과 메모리 효율을 보장하기 위해, COM Sniffer는 실사용 관점에서 최대 32개의 COM 포트를 동시 모니터링하도록 제한을 둡니다.
  • 다른 소프트웨어가 이미 연 COM 포트도 로그/모니터/스니핑이 가능한가요?

    이미 열린 COM 포트를 흐르는 데이터를 로깅·모니터링·스니핑하는 것은 COM Sniffer가 설계된 핵심 사용 사례입니다.
    시리얼 포트를 다른 프로그램이 사용 중인 경우에도 COM Sniffer는 구성 파라미터(보오드레이트, 패리티, 데이터/스톱 비트, RTS/DTR, 타임아웃)와 저수준 호출(커널 수준 IOCTL/IRP)을 포함한 모든 트래픽을 실시간으로 가로채 표시합니다. 이를 통해 기존 환경을 바꾸지 않고도 애플리케이션의 동작을 분석하고 이상이나 버그를 신속히 파악할 수 있습니다.
  • 어떤 IOCTL_SERIAL 및 IRP_MJ 신호를 모니터링할 수 있나요?

    일반적으로 Windows의 저수준 라이브러리 ntddser.h에 정의된 모든 신호와, IRP Major Functions(IRP_MJ) 중 READ와 WRITE를 모니터링할 수 있습니다.
  • 시리얼 포트 트래픽을 저장할 수 있나요?

    모든 데이터를 파일로 저장할 수 있으며, 포함할 유형(예: Session Log, Read/Write, Dump, IOCTL)을 선택할 수 있습니다. 메인 화면에서 내보낼 항목을 빠르게 선택하고, ASCII 또는 16진수(HEX) 형식으로 클립보드에 복사할 수 있습니다.
  • 시리얼 트래픽의 프로토콜을 분석할 수 있나요?

    COM Sniffer를 사용하면 시리얼 트래픽의 페이로드—수신( IRP_MJ_READ )과 송신( IRP_MJ_WRITE )—을 PCAP 형식으로 저장·내보낼 수 있어, Wireshark 등으로(예: Modbus) 프로토콜을 분석할 수 있습니다. 내장 필터를 사용하면 관련 패킷을 빠르게 골라내어, 사용된 프로토콜을 정확히 식별·디코드할 수 있는 고급 도구로 보내 분석할 수 있습니다.
    이 기능들은 애플리케이션 개발 및 디버깅, 또는 서드파티 소프트웨어의 타겟형 리버스 엔지니어링에 최적입니다.
  • 시리얼 포트를 분석하려면 왜 커널 드라이버가 필요한가요?

    이미 열린 시리얼 포트의 모든 트래픽을 스니핑하려면 사용자 공간에서 포트를 다시 열 수 없습니다. 시리얼 포트로 향하는 모든 요청과 데이터(IOCTL/IRP, READ/WRITE)를 가로채고 필터링할 수 있는 커널 수준의 필터 드라이버가 필요합니다.
    효과적인 커널 드라이버는 안정적이고 설계가 견고하며, Microsoft의 디지털 서명(attestation/WHQL)을 받아야 하며, 이렇게 해야 Windows의 모든 지원 버전에서 안전하게 로드될 수 있습니다(보안 부팅(Secure Boot) 호환, DSE 활성화).
    커널 드라이버가 없는 애플리케이션(구현 난이도가 매우 높음)으로는 이미 사용 중인 COM 포트에서 동일 수준의 모니터링·스니핑·로깅을 달성하기 어렵습니다.
  • 시리얼 포트를 로그/모니터링하기 위한 대안은 무엇이 있나요?

    커널 드라이버가 없다면, 시리얼(COM) 포트를 로그·모니터·스니핑하는 유일한 대안은 TX/RX 핀을 물리적으로 탭(tap)하는 방법입니다. 실제로는 USB–시리얼 컨버터를 사용하고, PCB에 접점을 직접 납땜하거나 포고핀/클립으로 집게 형태로 고정합니다. 이렇게 하면 SerialTool 같은 소프트웨어로 전송된 바이트를 확인할 수 있습니다.
    하드웨어 방식의 한계는 다음과 같습니다:
    • 원래 소프트웨어가 포트를 어떻게 사용하는지(열기/닫기, 보오드레이트의 동적 변경, 패리티/데이터/스톱 비트, 타임아웃, 핸드셰이킹)를 관찰할 수 없습니다.
    • 제어 신호(예: RTS/DTR)와 그 상태 변화—리셋이나 플로우 컨트롤에 자주 사용됨—를 파악하기 어렵습니다.
    • 저수준 호출(IOCTL/IRP)이나 운영체제 동작의 정확한 순서를 보여주지 않습니다.
    • 납땜 등 침습적 작업이 필요해 하드웨어/보증에 위험이 있을 수 있으며, 전기적 레벨(RS‑232/422/485)에도 유의해야 합니다.
    이미 열린 COM 포트에서 페이로드, 구성 파라미터, IOCTL/IRP까지 모두 가시화해 정확하고 신뢰할 수 있는 스니핑을 하려면, 커널 수준의 필터 드라이버와 전용 소프트웨어의 조합이 필요합니다.