
Wireshark를 설치했다고 해서 바로 패킷을 정상적으로 확인할 수 있는 것은 아닙니다.
Windows에서는 Wireshark와 함께 패킷 캡처 드라이버인 Npcap이 정상적으로 설치되어 있어야 하며, 실제 통신에 사용 중인 네트워크 인터페이스를 선택해야 합니다.
이 글에서는 단순히 Wireshark 설치 화면을 따라가는 데서 끝내지 않고, 설치 후 실제 DNS와 HTTPS 트래픽을 발생시켜 패킷이 정상적으로 캡처되는 상태까지 확인하는 과정을 정리합니다.
먼저 확인할 내용
증상
- Wireshark를 설치했지만 어떤 인터페이스를 선택해야 할지 모르겠습니다.
- 캡처를 시작했는데 패킷이 거의 보이지 않습니다.
- Wi-Fi와 Ethernet 중 무엇을 선택해야 하는지 모르겠습니다.
- 필터를 입력했는데 아무것도 표시되지 않습니다.
- Wireshark는 실행되지만 실시간 패킷을 캡처할 수 없습니다.
결론
Windows에서 Wireshark 캡처 문제가 있다면 먼저 다음 순서로 확인합니다.
- Wireshark와 Npcap 설치 여부 확인
- Windows에서 실제 사용 중인 네트워크 인터페이스 확인
- 해당 인터페이스에서 캡처 시작
- 테스트용 DNS 트래픽 발생
dns필터로 Query/Response 확인- HTTPS 트래픽 발생
tcp.port == 443또는tls필터로 통신 확인- 패킷이 보이지 않으면 Npcap·인터페이스·VPN 등을 다시 확인
Wireshark 공식 Windows 설치 프로그램에는 Npcap 설치 과정이 포함되어 있으며, Npcap이 없으면 저장된 캡처 파일은 열 수 있어도 Windows에서 실시간 네트워크 트래픽을 캡처할 수 없습니다.
적용 대상
이 글은 다음 환경에서 Wireshark를 처음 설치하거나 패킷 캡처 상태를 점검할 때 사용할 수 있습니다.
- Windows 11
- Windows 10
- 유선 Ethernet 환경
- Wi-Fi 환경
- Wireshark를 이용한 기본 네트워크 장애 분석
- DNS·TCP·TLS 통신 확인
Wireshark 버전에 따라 화면 구성이나 메뉴 이름은 일부 달라질 수 있으므로 설치 파일은 공식 다운로드 페이지에서 확인하는 것이 좋습니다. Wireshark 공식 문서에서는 Windows와 macOS용 공식 설치 프로그램을 Wireshark 사이트에서 제공하며, Windows 설치 프로그램은 신뢰된 인증서로 서명된다고 안내합니다.
1. Wireshark와 Npcap의 역할
Wireshark는 네트워크 패킷을 캡처하고 분석할 수 있는 도구입니다.
하지만 Windows에서 실제 네트워크 인터페이스의 패킷을 캡처하기 위해서는 Npcap이 필요합니다.
구조를 간단하게 보면 다음과 같습니다.
네트워크 인터페이스
→ Npcap
→ Wireshark
→ 패킷 분석
따라서 Wireshark 프로그램 자체가 정상적으로 실행된다고 해서 패킷 캡처 환경까지 정상이라는 의미는 아닙니다.
Npcap이 설치되지 않았거나 정상적으로 동작하지 않는다면 Wireshark에서 네트워크 인터페이스가 제대로 표시되지 않거나 Live Capture를 수행하지 못할 수 있습니다.
2. Wireshark 설치 시 Npcap 확인
Wireshark는 반드시 공식 사이트에서 내려받는 것을 권장합니다.
Windows용 Wireshark 설치 프로그램에는 Npcap 설치 과정이 포함되어 있습니다. Wireshark 공식 User’s Guide에서도 Windows에서 Live Capture를 사용하려면 Npcap이 필요하다고 설명합니다.
설치 과정에서 Npcap 관련 항목이 나타난다면 특별한 이유가 없는 한 함께 설치합니다.
이미 Npcap이 설치된 환경에서는 기존 버전을 사용할 수도 있으며, Wireshark 업데이트에 새로운 Npcap 버전이 포함될 수도 있습니다. Npcap 업데이트 후 환경에 따라 Windows 재부팅이 필요할 수도 있습니다.
Npcap은 Windows의 패킷 캡처 계층에서 동작하므로 Wireshark 이외의 다른 네트워크 프로그램에서도 사용될 수 있습니다.
따라서 Wireshark를 제거한다고 해서 Npcap까지 반드시 같이 제거해야 하는 것은 아닙니다.
3. 실제 사용 중인 네트워크 인터페이스 확인
Wireshark를 실행하면 여러 개의 인터페이스가 표시될 수 있습니다.
예를 들면 다음과 같습니다.
- Ethernet
- Wi-Fi
- Bluetooth Network Connection
- Loopback Adapter
- VPN Adapter
- VMware Network Adapter
- VirtualBox Host-Only Network
- Hyper-V Virtual Ethernet Adapter
- WSL 관련 가상 인터페이스
가상화 프로그램이나 VPN을 사용하는 PC라면 인터페이스가 상당히 많아질 수 있습니다.
이때 아무 인터페이스나 선택하면 실제 인터넷 트래픽이 보이지 않을 수 있습니다.
PowerShell에서 현재 활성 인터페이스 확인
PowerShell을 실행하고 다음 명령을 사용할 수 있습니다.
Get-NetAdapter | Where-Object Status -eq 'Up'
현재 연결 상태가 Up인 네트워크 어댑터를 확인합니다.
보다 자세한 IP 정보를 확인하려면 다음 명령도 사용할 수 있습니다.
Get-NetIPConfiguration
또는 CMD에서 익숙한 명령을 사용할 수도 있습니다.
ipconfig
현재 IP 주소와 Default Gateway가 설정되어 있는 Ethernet 또는 Wi-Fi 인터페이스를 먼저 확인합니다.
예를 들어 현재 PC가 Wi-Fi를 통해 인터넷에 연결되어 있다면 Wireshark에서도 우선 Wi-Fi 인터페이스를 선택합니다.
유선 LAN을 사용하고 있다면 일반적으로 Ethernet 인터페이스를 선택합니다.
4. 패킷 캡처 시작
Wireshark를 실행한 뒤 실제 통신에 사용하는 인터페이스를 더블 클릭하면 패킷 캡처가 시작됩니다.
정상적인 인터페이스라면 별도의 작업을 하지 않아도 ARP, DNS, TCP, TLS 등 다양한 패킷이 계속 증가하는 모습을 확인할 수 있습니다.
하지만 네트워크가 조용한 환경에서는 패킷 수가 많지 않을 수도 있으므로 직접 테스트 트래픽을 발생시킨 뒤 확인하는 것이 더 확실합니다.
이번 글에서는 DNS와 HTTPS 두 가지를 확인합니다.
5. DNS 패킷이 정상적으로 캡처되는지 확인
먼저 DNS Query를 직접 발생시킵니다.
CMD 또는 PowerShell에서 다음 명령을 실행합니다.
nslookup dailyo.net
정상이라면 DNS 서버 주소와 함께 dailyo.net에 대한 IP 조회 결과가 출력됩니다.
이제 Wireshark 상단의 Display Filter 입력창에 다음 값을 입력합니다.
dns
Enter를 누르면 DNS 프로토콜로 분석된 패킷만 표시됩니다.
Wireshark의 Display Filter는 캡처된 원본 패킷을 삭제하는 기능이 아니라, 이미 캡처된 패킷 가운데 조건에 맞는 패킷만 화면에 보여주는 기능입니다. Wireshark 공식 문서에서도 Capture Filter와 Display Filter를 서로 다른 필터 체계로 구분하고 있습니다.
정상적으로 캡처되었다면 대체로 다음과 같은 흐름을 확인할 수 있습니다.
DNS Query
→ dailyo.net 주소를 DNS 서버에 질의
DNS Response
→ DNS 서버가 조회 결과 반환
즉 Query와 Response가 모두 확인된다면 최소한 현재 선택한 인터페이스에서 DNS 트래픽을 정상적으로 캡처하고 있다고 판단할 수 있습니다.
6. DNS 패킷이 보이지 않는 경우
nslookup은 정상적으로 동작하지만 Wireshark에서 dns 필터 결과가 전혀 없다면 다음 항목을 먼저 확인합니다.
다른 인터페이스를 선택했는지 확인
가장 흔한 원인입니다.
예를 들어 Windows는 Wi-Fi를 사용하고 있는데 Wireshark에서 Ethernet을 캡처하고 있다면 실제 DNS 요청이 보이지 않을 수 있습니다.
다시 다음 명령으로 활성 어댑터를 확인합니다.
Get-NetAdapter | Where-Object Status -eq 'Up'
현재 통신에 사용하는 인터페이스와 Wireshark에서 선택한 인터페이스가 같은지 확인합니다.
VPN 사용 여부 확인
VPN을 사용하는 경우 트래픽이 물리적인 Wi-Fi 또는 Ethernet이 아니라 VPN이 만든 가상 인터페이스를 통해 보일 수 있습니다.
이 경우 Wireshark 인터페이스 목록에서 VPN 관련 어댑터의 트래픽도 확인합니다.
가상화 네트워크 확인
VMware, VirtualBox, Hyper-V, WSL 등을 사용하면 여러 개의 가상 인터페이스가 생성됩니다.
이들 인터페이스는 특정 VM이나 가상 네트워크의 패킷을 확인할 때 필요하지만 일반적인 Windows 인터넷 트래픽 확인에서는 잘못 선택하기 쉽습니다.
7. HTTPS 트래픽 캡처 확인
DNS가 정상적으로 확인되었다면 이번에는 HTTPS 통신을 확인합니다.
패킷 캡처를 계속 진행한 상태에서 PowerShell 또는 CMD를 열고 다음과 같이 실행합니다.
curl.exe -I https://dailyo.net
curl.exe가 HTTPS 연결을 시도하면서 TCP와 TLS 통신이 발생합니다.
Wireshark Display Filter에 다음 값을 입력합니다.
tcp.port == 443
이 필터는 Source 또는 Destination TCP Port가 443인 패킷을 화면에 표시합니다.
Wireshark 공식 Display Filter 문서에서도 tcp.port 같은 프로토콜 필드를 이용하여 특정 포트에 해당하는 패킷을 필터링할 수 있다고 설명합니다.
TLS로 분석된 패킷만 보고 싶다면 다음 필터도 사용할 수 있습니다.
tls
두 필터의 목적은 다릅니다.
tcp.port == 443
TCP 443 통신 자체를 확인합니다.
tls
Wireshark가 TLS로 해석한 패킷을 확인합니다.
HTTPS 장애를 분석할 때 처음부터 tls만 보는 것보다는 TCP 연결 자체가 만들어지는지도 함께 확인하는 편이 좋습니다.
8. TCP 연결이 만들어지는지 확인
HTTPS는 일반적으로 먼저 TCP 연결이 성립한 뒤 TLS 통신이 이어집니다.
TCP 연결의 기본 흐름은 다음과 같습니다.
Client → SYN
Server → SYN/ACK
Client → ACK
이른바 TCP 3-way handshake입니다.
필요하다면 SYN 패킷만 다음과 같이 확인할 수도 있습니다.
tcp.flags.syn == 1
다만 처음 Wireshark를 사용하는 단계에서는 필터를 지나치게 복잡하게 만들 필요는 없습니다.
먼저:
tcp.port == 443
으로 전체 흐름을 확인하고, 필요한 경우 특정 IP나 TCP Flag 조건을 추가하는 편이 이해하기 쉽습니다.
9. 정상적인 캡처 상태 판단
이번 글의 목표는 상세한 패킷 분석이 아니라 Wireshark가 실제 네트워크 트래픽을 정상적으로 캡처하고 있는지 확인하는 것입니다.
다음 조건을 만족하면 기본적인 캡처 환경은 정상이라고 판단할 수 있습니다.
DNS
nslookup dailyo.net
실행 후:
dns
필터에서 DNS Query와 Response가 확인됩니다.
HTTPS
curl.exe -I https://dailyo.net
실행 후:
tcp.port == 443
필터에서 TCP 443 통신이 확인됩니다.
그리고:
tls
필터에서 TLS 관련 패킷이 확인됩니다.
이 정도까지 확인했다면 다음 단계부터는 단순 설치 문제가 아니라 실제 DNS·TCP·TLS 장애 분석에 Wireshark를 사용할 수 있는 상태입니다.
10. Wireshark에 인터페이스가 보이지 않는 경우
Wireshark를 실행했는데 Ethernet이나 Wi-Fi 자체가 나타나지 않는다면 Npcap 상태를 우선 확인합니다.
Windows의 설치된 앱 목록에서 Npcap이 존재하는지 확인합니다.
Npcap이 없다면 Wireshark 공식 설치 프로그램을 다시 실행하여 Npcap을 함께 설치하는 방법을 사용할 수 있습니다.
Wireshark 공식 문서에 따르면 Npcap이 없는 환경에서도 기존 .pcap 또는 .pcapng 파일을 열어 분석할 수는 있지만 Live Capture는 사용할 수 없습니다.
Npcap 자체를 별도로 설치해야 하는 상황이라면 공식 Npcap 사이트에서 설치 프로그램을 받을 수 있습니다. Npcap은 서명된 Windows 실행 파일 형태로 배포됩니다.
11. 패킷은 보이지만 원하는 통신만 찾기 어려운 경우
Wireshark를 처음 사용하면 수백 또는 수천 개의 패킷이 빠르게 쌓이기 때문에 원하는 통신을 찾기 어렵습니다.
이럴 때 Display Filter를 이용합니다.
DNS만 확인
dns
TCP 443 확인
tcp.port == 443
특정 IP 통신 확인
예를 들어 분석하려는 IP가 192.168.0.10이라면:
ip.addr == 192.168.0.10
TCP 전체 확인
tcp
필터 조건을 결합할 수도 있습니다.
ip.addr == 192.168.0.10 && tcp.port == 443
Wireshark Display Filter는 프로토콜, 필드, 값 비교 및 논리 연산자를 조합할 수 있으므로 장애 범위를 좁혀갈 때 유용합니다.
12. Capture Filter와 Display Filter를 혼동하지 않기
Wireshark를 사용할 때 자주 헷갈리는 부분입니다.
Wireshark에는 크게 두 종류의 필터가 있습니다.
Capture Filter
패킷을 캡처하는 시점부터 어떤 패킷을 수집할지 결정합니다.
Display Filter
이미 캡처한 패킷 가운데 어떤 패킷을 화면에 표시할지 결정합니다.
초기 장애 분석에서는 가능하면 필요한 패킷을 넓게 캡처한 뒤 Display Filter로 분석 범위를 좁히는 방법이 편리합니다.
Display Filter를 적용해도 원래 캡처된 다른 패킷이 삭제되는 것은 아닙니다. 필터를 해제하면 다시 전체 패킷을 확인할 수 있습니다.
13. 패킷 캡처 파일 저장
문제를 분석하거나 나중에 다시 확인해야 한다면 캡처한 패킷을 파일로 저장할 수 있습니다.
Wireshark의 기본 캡처 파일 형식은 pcapng입니다.
캡처 파일은 장애 발생 시점의 통신 흐름을 다시 분석하거나 다른 담당자와 협업할 때 유용합니다.
하지만 저장된 패킷에는 IP 주소뿐만 아니라 통신 환경에 따라 호스트 정보, DNS 질의, HTTP 데이터 또는 기타 민감한 정보가 포함될 수 있습니다.
따라서 캡처 파일을 외부에 공유하기 전에 반드시 포함된 데이터를 확인해야 합니다.
14. Wireshark 사용 시 주의사항
Wireshark는 네트워크 장애 분석에 매우 유용하지만 패킷에는 민감한 정보가 포함될 수 있습니다.
다음 사항을 주의합니다.
- 자신이 관리하거나 분석 권한이 있는 시스템과 네트워크에서 사용
- 업무 환경에서는 조직의 보안 정책 확인
- 캡처 파일 외부 공유 전 민감정보 포함 여부 확인
- 장시간 무제한 캡처 시 파일 크기와 시스템 자원 사용량 확인
- 분석 목적과 관계없는 패킷을 불필요하게 수집하지 않기
특히 회사나 기관 네트워크에서 임의로 다른 사용자의 통신을 캡처하거나 분석해서는 안 됩니다.
마무리
Windows에서 Wireshark를 설치한 뒤에는 프로그램이 실행되는지만 확인할 것이 아니라 실제 패킷을 정상적으로 캡처할 수 있는지 검증하는 과정이 필요합니다.
기본 확인 순서는 다음과 같습니다.
Wireshark 설치
↓
Npcap 확인
↓
실제 사용 중인 네트워크 인터페이스 선택
↓
DNS 테스트 트래픽 발생
↓
dns
Query / Response 확인
↓
HTTPS 테스트 트래픽 발생
↓
tcp.port == 443
TCP 통신 확인
↓
tls
TLS 통신 확인
여기까지 정상이라면 Wireshark 설치 자체는 끝났다고 볼 수 있으며, 이후부터는 DNS 장애, TCP 연결 실패, TLS Handshake 문제처럼 실제 네트워크 문제를 분석하는 단계로 넘어갈 수 있습니다.
단순히 Wireshark를 설치하는 것보다 “어떤 인터페이스에서 어떤 트래픽을 캡처했고, 정상 여부를 무엇으로 판단했는가”를 확인하는 것이 실제 장애 분석에서는 더 중요합니다.