Wireshark는 Ethernet 인터페이스에서는 완벽하게 동작하지만, VPN 어댑터에서는 캡처가 시작되는 순간 터널이 트래픽을 통과시키지 않습니다. 캡처 창은 계속 채워지므로 도구는 건강해 보이는 동안 그 아래의 연결은 죽어 있습니다. 원인은 대개 프로미스큐어스 모드로, 자기에게 없는 세그먼트의 모든 프레임을 요구받은 터널 드라이버가 아무것도 나가지 않는 상태에 빠질 수 있기 때문입니다.

먼저 그 옵션을 끄고, 그다음에 정말로 보아야 할 계층을 정하십시오.

두 어댑터, 두 가지 다른 시점

VPN 클라이언트는 보통 암호화된 전송을 담당하는 물리 인터페이스와 복호화된 내부 트래픽을 담당하는 가상 인터페이스, 두 개의 인터페이스를 제시합니다. 둘은 서로 다른 질문에 답합니다. 물리 캡처는 끝점, 포트, 패킷 크기를 보여 주고, 가상 인터페이스는 터널이 전달하는 대로의 응용 프로토콜을 보여 줍니다. 어떤 질문을 하는지 모른 채 하나를 고르면 캡처가 낭비됩니다.

어느 시점도 다른 쪽의 상위 집합이 아니며, 한 번의 캡처가 두 질문에 동시에 답하는 경우는 드뭅니다.

인터페이스는, PPP 방식 클라이언트가 자기 어댑터를 Ethernet 장치로 제시할 수 있고 표시 이름만으로는 어느 계층을 골랐는지 알 수 없으므로, 목록 순서가 아니라 질문에 따라 고르십시오. 게이트웨이나 미러 포트에서의 캡처는 세 번째 시점을 더해 포워딩 이후의 경로를 보여 주며, 비대칭 라우팅과 필터링이 보이는 곳이 바로 그곳입니다.

Capture pointWhat it showsWhat it cannot show
Physical interfaceOuter endpoints, ports, packet sizesAny inner payload
Tunnel interfaceDecrypted inner trafficWhat the VPN added around it
Gateway or mirrorForwarded path after the tunnelThe client's own decision process

프로미스큐어스 모드가 터널 어댑터를 망가뜨리는 이유

프로미스큐어스 모드는, 공유 Ethernet 세그먼트에서는 말이 되지만 점대점 터널에서는 거의 의미가 없는, 호스트로 향하지 않은 프레임을 전달하라고 드라이버에 요구합니다. 어떤 드라이버는 요청을 차분히 처리하고, 어떤 드라이버는 전송 트래픽을 큐에서 꺼내지 않아 인터페이스가 조용히 블랙홀이 됩니다. 캡처는 도착하는 것을 계속 기록하므로 파일은 작동하는 링크의 증거처럼 보입니다. 파일이 보여 주는 것과 인터페이스가 실제로 한 일 사이의 이 간극이 바로 함정 전체입니다.

첫 패킷 전에 옵션을 끄고, 캡처 필터를 좁게 유지하고, 작은 버퍼를 사용하십시오. 혼잡한 인터페이스에서 큰 링 버퍼는 정작 중요했던 프레임을 버리므로, 장애가 있던 곳만 빠진 캡처가 만들어집니다.

캡처 도중 링크가 멈추면 캡처를 중지하고 복구를 지켜보십시오. 그 한 번의 관찰이 캡처의 부작용과 터널 자체의 장애를 구분해 주며, 어떤 필터 조정보다 시간이 적게 듭니다.

IPsec 캡처를 읽을 수 있게 만들기

IPsec 캡처는 ESP가 페이로드를 암호화하므로 그 자체로는 읽을 수 없습니다. 세션 키를 제공하면, 또는 그 키를 만든 IKE 협상을 따라갈 수 있으면 Wireshark가 복호화할 수 있으며, 이는 핸드셰이크가 같은 파일 안에 있어야 한다는 뜻입니다.

키는 만료됩니다. 양쪽이 키를 갱신한 뒤에는 오래된 키 묶음이 캡처 중간에서 작동을 멈추고, 결과는 시간 경계가 아니라 디코더 버그처럼 보입니다.

관련 없는 출처에서 자료를 가져오지 말고 공급업체가 문서화한 키 형식을 따르며, 일부 플랫폼은 이 작업 흐름 자체를 완전히 거부한다고 예상하십시오. 게이트웨이가 키를 넘기지 않거나 캡처를 허용하지 않으면, 당신이 있는 곳에서는 페이로드를 검사할 수 없다는 것을 받아들이십시오. 남는 증거는 끝점 로그와 인터페이스 카운터이며, 라우팅 질문에는 보통 그것으로 충분합니다.

안전하게 공유할 수 있는 캡처

내부 캡처는 로그보다 자격 증명 덤프에 가깝습니다. 아무도 읽지 않으리라는 가정 아래 쓰인 프로토콜의 이름, 주소, 평문을 담을 수 있으며, 그래서 민감한 산출물은 분석이 아니라 파일 자체가 됩니다.

호스트와 네트워크가 캡처가 허용된 곳인지 확인하고, 인터페이스와 필터를 결과와 함께 적어 두고, 세션을 질문에 답하는 몇 분으로 제한하고, 끝나면 파일을 지우십시오. 공유해야 한다면 먼저 흐름을 설명하거나 페이로드를 제거하십시오.

그다음 원래의 사용자 작업을 다시 하십시오. 패킷이 도착했음을 증명하는 캡처는 응용이 답을 받아들였다는 증거가 아니며, 이 둘의 차이가 보통 진짜 장애가 있는 자리입니다.

관련 글