На всеки мрежов администратор рано или късно му се налага да анализира потока от пакети на определен интерфейс. Причините могат да бъдат много. Например искате да видите дали получавате някаква routing информация на определен интерфейс. Или пък просто искате да видите какво върви по жицата.

В подобни случаи Tcpdump е прекрасен за целта инструмент. Може би не е толкова добър и лесен за употреба като Wireshark ,но това че е инсталиран по подразбиране в доста Линукс дистрибуции го прави много добра алтернатива. Също така трябва да се отбележи че няма нужда от графична среда, каквато в повечето случаи от ежедневието на админа липсва. Извикването на програмата в терминала се осъществява с командата :

tcpdump

Ако не зададете никакви други опции по подразбиране започва да прихваща пакетите от първия ethernet интерфейс. За по-четлив изход бих препоръчал да се извика с опциите -q,-n.Също така за да няма объркване е добре да посочите точно интерфейса, който искате да се подслушва.Например :

tcpdump -qni wlan0

Опцията -q означава “quiet” режим, който спестява някои детайли като размер на TCP window и Ack number.

Добавянето на -n означава, че не искате решаване(resolving) на имената,т.е. да изписва само IP адреси. Последната опция -i е за посочване на точно определен интерфейс.В случая wlan0.

Ето пример в който стартирам tcpdump на wlan0 и пускам ping към 8.8.8.8,който е публичният DNS сървър на Google :

dump2

dump1

На следващата снимка се вижда как DHCP клиента търси адреси по мрежата :

dump3