1

Я слежу за SNMP-трафиком, чтобы закодировать тестовый набор для какого-либо сетевого оборудования. В настоящее время я запускаю tcpdump так:

tcpdump -i any -nn port snmp

Затем я отправляю некоторый SNMP-трафик с того же хоста:

snmpget -v 3 -u public 192.168.2.4 1.3.6.1.4.1.3181.10.6.3.65.1.1.5.0

tcpdump НЕ печатает ничего прямо сейчас. Я проверил с помощью tshark, что пакеты видны на проводе. Однако, если я повторю команду snmpget, она напечатает трафик:

pi@raspberrypi:~/martin_testframework/Frameworks/P2P $ sudo tcpdump -i any -nn port snmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked), capture size 262144 bytes
15:30:13.033363 IP 192.168.2.5.39351 > 192.168.2.4.161:  F=r U= E=  C= GetRequest(14) 
15:30:13.034473 IP 192.168.2.4.161 > 192.168.2.5.39351:  F= U= E= 0x800x000x1F0x880x040x4D0x490x430x520x4F0x530x450x4E0x53 C= Report(31)  .1.3.6.1.6.3.15.1.1.4.0=2
15:30:13.034908 IP 192.168.2.5.39351 > 192.168.2.4.161:  F=r U=public E= 0x800x000x1F0x880x040x4D0x490x430x520x4F0x530x450x4E0x53 C= GetRequest(35)  .1.3.6.1.4.1.3181.10.6.3.65.1.1.5.0
15:30:13.036447 IP 192.168.2.4.161 > 192.168.2.5.39351:  F= U=public E= 0x800x000x1F0x880x040x4D0x490x430x520x4F0x530x450x4E0x53 C= GetResponse(35)  .1.3.6.1.4.1.3181.10.6.3.65.1.1.5.0=""
^C
4 packets captured
8 packets received by filter
0 packets dropped by kernel

Обратите внимание, что это тот же процесс tcpdump, что и выше. Если бы я перезапустил tcpdump, он бы ничего не печатал. По сути, tcpdump, кажется, подавляет первые несколько (четыре?) пакеты snmp, которые он получает. После первых нескольких пакетов все работает правильно.

Как я могу заставить tcpdump печатать все пакеты без "фазы прогрева". Этот тест был выполнен вручную, и между вызовом tcpdump и вызовом snmpget прошло несколько секунд. Tshark видит и печатает весь трафик, но я не могу использовать tshark, поскольку он недоступен в производственной системе.

0