Computer >> 컴퓨터 >  >> 시스템 >> Windows

Windows 10 내장 네트워크 스니퍼 도구 PktMon.exe 활용법 완벽 가이드

Windows 10에는 PktMon.exe라는 기본 제공 네트워크 스니퍼 도구가 탑재되어 있어, 시스템 내부의 패킷 전달 과정과 패킷 손실 현황을 모니터링할 수 있습니다. 이 도구를 활용하면 네트워크 상태를 세밀하게 들여다보고, 네트워크 지연의 원인을 파악하거나 영향을 받은 애플리케이션을 식별하는 데 큰 도움을 받을 수 있습니다. 여기에 추가 도구를 함께 사용하면 주요 성능 지표에 대한 통찰까지 얻을 수 있습니다. 이번 글에서는 Windows 10의 새로운 네트워크 스니퍼 도구인 PktMon.exe를 사용하는 방법을 단계별로 소개합니다.

Windows 10의 네트워크 스니퍼 도구 pktmon.exe란?

PktMon.exe(Packet Monitor)는 네트워크 진단과 패킷 모니터링을 위해 새롭게 추가된 스니퍼 도구입니다. 시스템 폴더에 위치해 있기 때문에 실행 창(Run), 명령 프롬프트 또는 PowerShell 어디에서든 바로 호출할 수 있습니다.

이 도구를 보면 Netsh Trace 명령어가 떠오르신다면 정확한 기억입니다. Netsh Trace는 네트워크 연결 문제를 해결할 때 참고할 수 있도록 네트워크 추적을 활성화하고 구성하는 명령입니다.

Windows 10 내장 네트워크 스니퍼 도구 PktMon.exe 활용법 완벽 가이드

PktMon으로 할 수 있는 작업

명령 프롬프트에서 pktmon help를 실행하면 다음과 같은 하위 명령 목록을 확인할 수 있습니다.

  • filter: 패킷 필터를 관리합니다.
  • comp: 등록된 구성 요소를 관리합니다.
  • reset: 카운터를 0으로 초기화합니다.
  • start: 패킷 모니터링을 시작합니다.
  • stop: 모니터링을 중지합니다.
  • format: 로그 파일을 텍스트 형식으로 변환합니다.
  • unload: PktMon 드라이버를 언로드합니다.

특정 명령에 대해 더 자세한 설명이 필요하다면 해당 명령에 help 옵션을 붙여 실행하면 됩니다. 예시는 다음과 같습니다.

pktmon filter help

pktmon filter { list | add | remove } [OPTIONS | help]
Commands
list   : 현재 활성화된 패킷 필터를 표시합니다.
add    : 어떤 패킷을 보고할지 제어하는 필터를 추가합니다.
remove : 설정된 모든 필터를 제거합니다.

또한 PktMon.exe는 실시간 모니터링 기능과 PCAPNG 파일 형식도 지원합니다.

함께 읽으면 좋은 글: Windows 10에서 DNS over HTTPS 활성화 및 테스트하는 방법

PktMon으로 네트워크 트래픽 모니터링하기

간단한 예제를 통해 실제 사용 방법을 살펴보겠습니다. 전체 과정은 다음 세 단계로 이루어집니다.

  1. 모니터링할 포트에 대한 필터 생성
  2. 모니터링 시작
  3. 로그를 읽기 쉬운 형식으로 내보내기

여기서는 컴퓨터에서 문제가 자주 발생하는 특정 포트 번호를 모니터링한다고 가정합니다.

1단계: 필터 만들기

트래픽 모니터링의 핵심이 되는 옵션은 filter입니다. 이 옵션을 사용하면 이더넷 프레임, IP 헤더, TCP 헤더, 캡슐화 정보를 기준으로 어떤 패킷을 보고할지 제어하는 필터를 만들 수 있습니다. 아래 명령을 실행하면 filter 옵션으로 수행할 수 있는 작업의 전체 내용을 확인할 수 있습니다.

pktmon filter add help

이제 TCP 포트 1088번을 모니터링한다고 가정해 보겠습니다. 이 포트는 충돌이 잦은 사용자 지정 애플리케이션이 사용하는 포트일 수 있으며, PktMon을 통해 문제의 원인이 네트워크에 있는지 쉽게 확인할 수 있습니다.

먼저 관리자 권한으로 명령 프롬프트 또는 PowerShell을 엽니다.

다음 명령 형식으로 패킷 필터를 생성합니다: 'pktmon filter add -p [포트번호]'

pktmon filter add -p 1088

'pktmon filter list' 명령을 실행하면 추가된 필터 목록을 확인할 수 있습니다.

Windows 10 내장 네트워크 스니퍼 도구 PktMon.exe 활용법 완벽 가이드

설정된 모든 필터를 제거하려면 'pktmon filter remove' 명령을 실행합니다.

2단계: 모니터링 시작

PktMon은 백그라운드에서 상시 실행되는 프로그램이 아니라 필요할 때 직접 작동하는 도구이므로, 모니터링을 수동으로 시작해야 합니다. 다음 명령을 실행하여 패킷 모니터링을 시작하세요.

pktmon start --etw -p 0

명령을 실행하면 모니터링이 시작되고 지정된 위치에 로그 파일이 생성됩니다. 로깅을 중지하려면 'stop' 인수를 사용해 수동으로 종료해야 하며, 별도로 중지하지 않으면 컴퓨터가 종료될 때까지 기록이 계속됩니다. '-p 0' 옵션을 함께 사용하면 각 패킷에서 128바이트만 캡처합니다.

Log filename: C:\Windows\system32\PktMon.etl
Logging mode: Circular
Maximum file size: 512 MB

3단계: 로그를 읽기 쉬운 형식으로 내보내기

Windows 10 내장 네트워크 스니퍼 도구 PktMon.exe 활용법 완벽 가이드

로그 파일은 PktMon.etl 형식으로 저장되며, 다음 명령을 사용하면 사람이 읽을 수 있는 형식으로 변환할 수 있습니다.

pktmon format PktMon.etl -o port-monitor-1088.txt

변환이 완료되면 메모장으로 파일을 열어 내용을 확인할 수 있지만, 의미 있는 분석을 위해서는 Microsoft Network Monitor를 사용하는 것이 좋습니다. 이 도구는 ETL 파일을 직접 읽을 수 있기 때문입니다.

참고로 Microsoft는 실시간 모니터링 지원을 Windows 10 버전 2004부터 단계적으로 제공할 예정이었지만, 아직 해당 옵션은 확인되지 않고 있습니다.

함께 읽으면 좋은 글: Windows 10용 무료 패킷 스니핑 도구