web-dev-qa-db-ja.com

tftpdは接続を許可しますが、ファイルの転送がタイムアウトします

私はVirtualBox VMでUbuntu 12.04を実行しています。 tftpd-hpaパッケージをインストールしました。これを使用して組み込みLinuxシステムを起動していますが、VMの最初の起動では機能しないことに気付きましたが、tftpd-hpaサービスを再起動すると、次回の起動まで毎回機能します。

今日、Texas Instrumentsのシェルスクリプトを実行しましたが、tftpdの設定がおかしかった可能性がありますが、まったく動作しません。接続はできますが、ローカルホストにもタイムアウトを転送します(127.0.0.1も試しました)。

steve@steve-VirtualBox:~$ tftp
tftp> connect localhost
tftp> status
Connected to localhost.
Mode: netascii Verbose: off Tracing: off
Rexmt-interval: 5 seconds, Max-timeout: 25 seconds
tftp> get zImage
Transfer timed out.

tftp> 

/var/lib/tftpboot/zImageは存在しますが、存在しないファイルでもまったく同じ動作が得られることに注意してください。

/etc/default/tftpd-hpaの内容は次のとおりです:

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"

こちらが/etc/xinetd.d/tftpです:

service tftp
{
protocol = udp
port = 69
socket_type = dgram
wait = yes
user = nobody
server = /usr/sbin/in.tftpd
server_args = /var/lib/tftpboot
disable = no
}
7
Steve

Xinetdからスタンドアロンサービスとして同時にtftpd-hpaを開始しているようです。 1つを選択し、もう1つを無効にしてください。

例えば。セットする disable = yes/etc/xinetd.d/tftpとxinetdを再起動します。次に、スタンドアロンサービスを再起動しますservice tftpd-hpa restartして、接続を再試行してください。

2
Beli

TFTP_ADDRESS = "0.0.0.0:69"の設定は、少なくとも両方のインターフェイスで機能しませんでした。設定TFTP_ADDRESS=":69"仕事をしました

1
meresgr

この答え を参照してください。

編集する必要がありました/etc/default/tftpd-hpaとIPアドレスをTFTP_ADDRESS=変数。

それはDebian Jessieに関するものでしたが、Ubuntuでも同じかもしれません。

0
mivk

1)tftpd-hpaをアンインストール/再インストールします

2)/ etc/default/tftpd-hpaに追加します

RUN_DAEMON="yes"
0
Pat

ファイアウォールに穴をあける必要があるかもしれません。 http://www.thelinuxdaily.com/2010/02/guide-on-tftp-server-setup-in-Fedora/ のステップ4から:

/ etc/sysconfig/iptablesの「COMMIT」行の前に次の行を挿入してから、「service iptables restart」を使用してサービスを再起動します。

-A INPUT -m state --state NEW -m udp -p udp --dport 69 -j ACCEPT

0
Daryl Spitzer