Ubuntu VM 上的 TFTP 超时

Ubuntu VM 上的 TFTP 超时

我正在运行安装了 VMware 的 Windows 7 PC,其中装有 Ubuntu(10.04 Lucid Lynx)。我最近使用以下工具安装了 DHCP 服务器和 TFTP(Xinet tftpd)这些说明。我映射了一个网络驱动器,以便我的 Windows 可以通过 192.xxx IP 地址访问我的 VM 中的所有文件。

我正试图将一些自定义固件放到路由器上。路由器有自己的内置 TFTP 实用程序,可以下载映像。它成功地完成了所有工作,但速度很慢,因为它将其写入闪存。还有另一种方法更快,因为它直接写入 RAM,但必须使用 Ubuntu 中的 TFTP 服务器。

我面临的问题是 Ubuntu TFTP 传输似乎超时了。传输已启动,但从未超过 ~60%。这是我的 /etc/xinetd.d/tftp 文件(类似于已知的工作配置):

service tftp
{
protocol        = udp
port            = 69
socket_type     = dgram
wait            = yes
user            = nobody
server          = /usr/sbin/in.tftpd
server_args     = -s /home/user/tftp/
disable         = no
cps             = 300 2
per_source      = 60
}

我搜索了一番,但找不到此文件的任何参数来控制超时时间或重试次数。最后两个参数(cps、per_source)对我来说完全陌生(有人能解释一下吗)。我有几个可能的解决方案,但最简单的方法是让这个 TFTP 服务器工作。有人能帮忙吗?是使用超时配置,还是推荐一个不同的 TFTP 服务器?
谢谢!

答案1

我不是 Linux 专家,但我使用server_args参数 (http://linux.die.net/man/5/xinetd.conf)向 TFTP 进程传递参数。tftpd 有一个--timeout参数(http://linux.die.net/man/8/tftpd)您可以尝试类似

service tftp {
    [...]
    server_args = --timeout 10000 -s /home/user/tftp/

}

相关内容