Warum kann ich mit tcpdump keinen Datenverkehr vom UDP-Port 69 erkennen?

1702
Chau Chee Yang

Ich habe einen seltsamen Fall, wo ich nicht weiß, was passiert. Normalerweise sollten tcpdumpwir wissen, ob ein Paket die NIC erreicht, bevor es iptablegefiltert wird. Das funktioniert soweit auf den meisten UDP-Ports, die ich ausprobiert habe, aber keinen Port 69.

Ich habe einen Server (IP:), der 192.168.0.10läuft

# tcpdump -nnvv src host 192.168.0.128 

Beide Hosts 192.168.0.10sind mit einem nicht verwalteten Switch verbunden. Das Netzwerk funktioniert gut. Ich kann mich gegenseitig anpingen und kann mich auch mit anderen TCP-Diensten verbinden.

Wenn ich einen UDP-Verkehr vom Host sende 192.168.0.128:

# echo "test" > /dev/udp/192.168.0.10/100 

Ich erhalte eine Antwort von 192.168.0.10:

12:29:09.210977 IP (tos 0x0, ttl 64, id 50828, offset 0, flags [DF], proto UDP (17), length 33) 192.168.0.128.33701 > 192.168.0.10.100: [udp sum ok] UDP, length 5 12:29:14.211507 ARP, Ethernet (len 6), IPv4 (len 4), Reply 192.168.0.128 is-at 00:0c:29:e8:30:d4, length 46 

Sogar der UDP-Port 100wird von keinem Dienst überwacht. Ich versuche auch andere UDP - Port wie 67, 68, 101und 102. Alle diese Ports funktionieren einwandfrei.

Als Nächstes versuche ich, einen UDP-Datenverkehr an Port 69 zu senden:

# echo "test" > /dev/udp/192.168.0.10/69 

Und ich erhalte keine Antwort tcpdump. Als Port 69wird normalerweise vom tftpDienst verwendet. Ich führe mit diesem Test heraus, warum das tftpAbhören von Port 69 keine Reaktion zeigt. Ich stelle auch sicher, dass der TFTP-Dienst beendet ist, bevor ich den Test durchführe.

Mein Linux-Kernel ist:

# uname -a Linux local 2.6.33.3-85.fc13.x86_64 #1 SMP Thu May 6 18:09:49 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux 

Gibt es eine andere Einstellung in der Linux-Box, die den UDP-Port 69-Verkehr entführt?

0
Unterstützt Ihr nic das Netzwerk? Es kann TFTP-Verkehr abfangen und in der Firmware verarbeitet werden, bevor er an den OS-Stack gelangt. Frank Thomas vor 7 Jahren 1
@FrankThomas. Ja, meine Netzwerkkarte unterstützt Netzwerkstart. Aber das ist nicht zuerst das Problem. In meinen Tests habe ich zwei Computer im Linux-Betriebssystem, dann sende ich einen UDP-Datenverkehr von einem Computer B an den UDP-Port 69 des Computers A. Warum konnte ich den Datenverkehr nicht erkennen? Ein anderer UDP-Port ist soweit in Ordnung. Chau Chee Yang vor 7 Jahren 0
Ich denke, Frank sagt, dass Ihre NIC möglicherweise einen Tftp-Client auf der NIC selbst (nicht unter Linux) ausführt, und der Tftp-Client der NIC verbraucht Pakete an UDP-Port 69 und leitet sie nicht an das Host-Betriebssystem weiter. Spiff vor 7 Jahren 0
@Spiff: Ich wusste nicht, ob meine NIC einen TFTP-Client ausführt. Meines Wissens sollte der TFTP-Client nicht laufen. Wie kann ich das bestätigen? Chau Chee Yang vor 7 Jahren 0
Es funktioniert jetzt. Ich verwende einen Dlink DGS-1210-Netzwerkswitch. Die Standard-IP-Adresse des Switches ist 10.90.90.90. Ich habe die IP-Adresse auf "192.168.0.1" eingestellt, und der Datenverkehr zum UDP-Port 69 funktioniert. Ich habe jedoch immer noch keine Ahnung, warum es funktioniert. Ich habe den Netzwerk-Switch noch einmal geprüft, ob es etwas mit Port 69 (TFTP) zu tun hat, aber ich konnte keinen finden. Chau Chee Yang vor 7 Jahren 0

0 Antworten auf die Frage