Анализ на пакети с tcpdump
На всеки мрежов администратор рано или късно му се налага да анализира потока от пакети на определен интерфейс. Причините могат да бъдат много. Например искате да видите дали получавате някаква 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 :
На следващата снимка се вижда как DHCP клиента търси адреси по мрежата :