コマンドを使用して 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