Пример из предшествующего раздела показывает, что snoop выводит единственную строку-резюме для каждого из полученных пакетов. В каждой строке содержатся адреса источника и получателя, а также используемый протокол (ICMP и RLOGIN в нашем примере).
Строки пакетов ICMP содержат сведения о типах пакетов (Echo request и Echo reply в нашем примере). Строки пакетов прикладных протоколов содержат номер порта источника и первые 20 символов данных пакета.
Этой сводки достаточно, чтобы понять, как обмениваются пакетами узлы и какие потенциальные проблемы могут возникать. Однако диагностирование проблем протоколов требует более подробных сведений о каждом пакете. Управление составом отображаемой информации реализуется ключами snoop. Чтобы вывести данные пакета, воспользуйтесь ключом -х. Ключ предписывает отображать полное содержимое пакета в шестнадцатеричном формате или ASCII. В большинстве случаев нет необходимости просматривать пакеты целиком - достаточно заголовков, чтобы продиагностировать проблему протокола. Ключ -v предписывает отображать заголовки - подробно и в удобном для чтения формате. Для каждого пакета отображается большое число строк, поэтому использовать ключ -v следует только по необходимости.
Следующий пример содержит пакет ICMP Echo Request, вывод которого предписан ключом -v. Пакет этого типа присутствовал в виде строки-резюме в предшествующем примере.
It snoop -v host crab and host minasi Using device /dev/le (promiscuous mode) ETHER: ..... Ether Header ..... ETHER: ETHER: Packet 3 arrived at 16:56:57.90 ETHER: Packet size = 98 bytes ETHER: Destination = 8:0:20:22:fd:51, Sun ETHER: Source = 0:0:c0:9a:d0:db, Western Digital ETHER: Ethertype = 0800 (IP) ETHER: IP: .....IP Header..... IP: IP: Version = 4 IP: Header length = 20 bytes IP: Type of service = 0x00 IP: xxx.....=0 (precedence) IP: ...0 ____ = normal delay IP: — 0... = normal throughput IP: .....0.. = normal reliability IP: Total length = 84 bytes IP: Identification = 3049 IP: Flags = 0x0 IP: .0......= may fragment IP: . .0.....= last fragment IP: Fragment offset = 0 bytes IP: Time to live = 64 seconds/hops IP: Protocol = 1 (ICMP) IP: Header checksum = fdeO IP: Source address = 172.16.55.106, minasi.wrotethebook.com IP: Destination address = 172.16.12.1, crab.wrotethebook.com IP: No options IP: ICMP: ..... ICMP Header ..... ICMP: ICMP: Type = 8 (Echo request) ICMP: Code = 0 ICMP: Checksum = ac54 ICMP:
Подробное форматирование snoop связывает байты, полученные из сети, со структурой заголовка. В поисках более подробной информации о различных полях заголовка обращайтесь к главе 1 и приложению G.