명령을 사용하여 tftp 서버를 시작했지만 atftpd -v --port 69 --bind-address 10.10.10.2 --daemon /srv/tftp/
어떤 이유로 ss/netstat 출력에서 포트 69를 수신하는 TFTP 서버가 표시되지 않습니다. 그러나 TFTP 클라이언트를 사용하여 TFTP 서버에 연결하면 파일을 전송하고 자동으로 다른 TFTP 서버 인스턴스(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
에 대한 심볼릭 링크입니다 /usr/sbin/atftpd
. TFTP 서버가 UDP 포트 69를 수신하지 않는 경우 클라이언트는 어떻게 TFTP 서버에 연결할 수 있습니까? 같은 방식으로 작동하는 다른 서버가 있나요?
답변1
서버가 포트에서 수신 대기하지 않는 것이 아니라 사용 중인 도구가 보고 싶은 모든 정보를 표시하지 않는 것입니다.
여러 가지 옵션이 있습니다:
-a
모든 현재 연결을 지정하려면 ss
및 옵션을 사용하십시오.netstat
ss -au
lsof -i UDP
현재의 모든 UDP 연결을 나열 하는 데 사용됩니다.
sudo lsof -i UDP
fuser -v -n udp [port]
포트가 현재 프로세스에서 사용 중인지 확인하는 데 사용됩니다 .
sudo fuser -v -n udp 69