Ich habe mit einem Befehl einen TFTP-Server gestartet atftpd -v --port 69 --bind-address 10.10.10.2 --daemon /srv/tftp/
, aber aus irgendeinem Grund sehe ich in der SS/Netstat-Ausgabe keinen TFTP-Server, der auf Port 69 lauscht. Wenn ich mich jedoch mit einem TFTP-Client mit einem TFTP-Server verbinde, kann ich Dateien übertragen und automatisch wird eine weitere Instanz des TFTP-Servers gestartet (PID 5191):
# ss -l -4 -u
Recv-Q Send-Q Local Address:Port Peer Address:Port
# ss -l -6 -u
Recv-Q Send-Q Local Address:Port Peer Address:Port
# pgrep -lf tftp
4316 /usr/sbin/atftpd -v --port 69 --bind-address 10.10.10.2 --daemon /srv/tftp/
5191 in.tftpd --tftpd-timeout 300 --retry-timeout 5 --mcast-port 1758 --mcast-addr 239.239.239.0-255 --mcast-ttl 1 --maxthread 100 --verbose=5 /srv/tftp
#
in.tftpd
ist ein symbolischer Link zu /usr/sbin/atftpd
. Wie können Clients eine Verbindung zum TFTP-Server herstellen, wenn der TFTP-Server nicht auf UDP-Port 69 lauscht? Gibt es andere Server, die auf die gleiche Weise funktionieren?
Antwort1
Es liegt nicht daran, dass der Server den Port nicht abhört, sondern daran, dass die von Ihnen verwendeten Tools Ihnen nicht alle Informationen anzeigen, die Sie sehen möchten.
Sie haben mehrere Möglichkeiten:
Verwenden Sie die -a
Option mit ss
und netstat
um alle aktuellen Verbindungen anzugeben.
ss -au
Zum lsof -i UDP
Auflisten aller aktuellen UDP-Verbindungen
sudo lsof -i UDP
Wird verwendet fuser -v -n udp [port]
, um zu ermitteln, ob der Port derzeit von einem Prozess verwendet wird
sudo fuser -v -n udp 69