Tftp

TFTP 伺服器未在定義的埠上偵聽

  • June 16, 2014

我用命令啟動了一個 tftp 伺服器atftpd -v --port 69 --bind-address 10.10.10.2 --daemon /srv/tftp/,但由於某種原因,我在 ss/netstat 輸出中沒有看到 TFTP 伺服器在埠 69 上監聽。但是,如果我使用 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 伺服器?是否有其他以相同方式工作的伺服器?

並不是伺服器沒有監聽埠,而是您使用的工具沒有向您顯示您想要查看的所有資訊。

你有幾個選擇:

使用帶有和的-a選項來指定所有目前連接。ss``netstat

ss -au

用於lsof -i UDP列出所有目前的 UDP 連接

sudo lsof -i UDP

用於fuser -v -n udp [port]確定埠目前是否被程序使用

sudo fuser -v -n udp 69

引用自:https://unix.stackexchange.com/questions/137423