Wireshark에서 ping 명령을 캡처할 때 표시되는 "데이터"의 문자 시퀀스는 무엇입니까?

Wireshark에서 ping 명령을 캡처할 때 표시되는 "데이터"의 문자 시퀀스는 무엇입니까?

내 모든 핑 캡처에는 "데이터"에 이 시퀀스가 ​​있습니다 abcdef.... 이와 관련된 내용이 있습니까, 아니면 그냥 더미 데이터입니까? 왕복 시간을 측정하는 것 외에 다른 목적이 있나요?

여기에 이미지 설명을 입력하세요

답변1

이는 패킷이 최소 이더넷 프레임 크기인 64바이트(16진수 40)에 도달하도록 패딩하는 것입니다.

ICMP 세그먼트는 64보다 작기 때문에 최소값을 충족하도록 채워야 합니다. 이는 최소값에 도달할 때까지 알파벳을 추가하면 됩니다.

위키피디아 보기 이더넷 프레임.

답변2

페이로드가 반드시 필요한 것은 아닙니다.단지심. 실제로 페이로드는 OS의 지문을 확인하는 데 어느 정도 사용될 수도 있습니다. 이 경우 다음 두 가지 이유로 인해 핑이 Windows 시스템에서 실행되었다고 확신합니다.

  1. 페이로드에 타임스탬프가 부족함
  2. 식별자는 1입니다.

이를 Mike Muuss 기반 핑(FreeBSD, Mac OSX, ...)과 대조해 보세요.

  1. 페이로드의 처음 8바이트는 타임스탬프를 나타냅니다(struct tv32).
  2. 식별자는 프로그램 자체의 프로세스 ID 중 하위 16비트입니다 ping.

또는 Solaris에서 타임스탬프는 초 값이 64비트 초 필드를 가질 수 있는 "struct timeval"입니다. 다른 OS에서도 페이로드가 다를 수 있습니다.

참고로 이전 Wireshark 버그에 대한 설명을 읽을 수 있습니다.버그 5770.

물론 ICMP 터널링과 같이 ICMP 페이로드에는 다른 용도도 있습니다. 여기에 이것에 대해 이야기하는 기사가 하나 있습니다.핑 전원 - ICMP 터널.

어떤 경우든 ICMP 페이로드가 반드시 패딩일 필요는 없습니다.

관련 정보