PXE 通过路由器桥接器(tftp 服务器)运行时挂起

PXE 通过路由器桥接器(tftp 服务器)运行时挂起

我通过 xinetd 运行 tftp-server。当我直接或通过交换机插入客户端设备时,它可以正确启动。但是,我无法通过桥接模式的路由器连接客户端设备完全启动。它获得 DHCP 租约 OK 并开始下载文件,但随后超时。我不清楚超时时应该运行哪个步骤。它实际上似乎在客户端完成下载 start.elf 的同一秒内“超时”。

当我将笔记本电脑连接到桥接路由器并在 tftp 服务器地址上运行 traceroute 时,它​​可以访问:

Traceroute has started…

traceroute to 192.168.10.1 (192.168.10.1), 64 hops max, 72 byte packets
 1  192.168.10.1 (192.168.10.1)  10.906 ms  5.274 ms  4.500 ms

有没有更好的方法可以记录并知道哪个步骤超时,以便我知道在哪里调试?我已经在 tftp 可执行文件上运行 -v -v,但我找不到有关额外日志记录的更多信息。

这是 /var/log/messages 中的输出:

Apr  8 23:01:25 shepherd dnsmasq-dhcp[19671]: DHCPDISCOVER(eno1) da:0d:17:d4:30:3b
Apr  8 23:01:25 shepherd dnsmasq-dhcp[19671]: DHCPOFFER(eno1) 192.168.10.133 da:0d:17:d4:30:3b
Apr  8 23:01:25 shepherd in.tftpd[19022]: RRQ from 192.168.10.133 filename bootcode.bin
Apr  8 23:01:26 shepherd in.tftpd[19022]: Client 192.168.10.133 finished bootcode.bin
Apr  8 23:01:26 shepherd in.tftpd[19027]: RRQ from 192.168.10.133 filename bootsig.bin
Apr  8 23:01:26 shepherd in.tftpd[19027]: Client 192.168.10.133 File not found bootsig.bin
Apr  8 23:01:26 shepherd in.tftpd[19027]: sending NAK (1, File not found) to 192.168.10.133
Apr  8 23:01:26 shepherd dnsmasq-dhcp[19671]: DHCPDISCOVER(eno1) da:0d:17:d4:30:3b
Apr  8 23:01:26 shepherd dnsmasq-dhcp[19671]: DHCPOFFER(eno1) 192.168.10.133 da:0d:17:d4:30:3b
Apr  8 23:01:26 shepherd in.tftpd[19029]: RRQ from 192.168.10.133 filename 69d4303b/start.elf
Apr  8 23:01:26 shepherd in.tftpd[19029]: Client 192.168.10.133 File not found 69d4303b/start.elf
Apr  8 23:01:26 shepherd in.tftpd[19029]: sending NAK (1, File not found) to 192.168.10.133
Apr  8 23:01:26 shepherd in.tftpd[19030]: RRQ from 192.168.10.133 filename autoboot.txt
Apr  8 23:01:26 shepherd in.tftpd[19030]: Client 192.168.10.133 File not found autoboot.txt
Apr  8 23:01:26 shepherd in.tftpd[19030]: sending NAK (1, File not found) to 192.168.10.133
Apr  8 23:01:26 shepherd in.tftpd[19031]: RRQ from 192.168.10.133 filename config.txt
Apr  8 23:01:26 shepherd in.tftpd[19031]: Client 192.168.10.133 finished config.txt
Apr  8 23:01:26 shepherd in.tftpd[19032]: RRQ from 192.168.10.133 filename recovery.elf
Apr  8 23:01:26 shepherd in.tftpd[19032]: Client 192.168.10.133 File not found recovery.elf
Apr  8 23:01:26 shepherd in.tftpd[19032]: sending NAK (1, File not found) to 192.168.10.133
Apr  8 23:01:26 shepherd in.tftpd[19033]: RRQ from 192.168.10.133 filename start.elf
Apr  8 23:01:32 shepherd in.tftpd[19040]: RRQ from 192.168.10.133 filename fixup.dat
Apr  8 23:01:32 shepherd in.tftpd[19040]: Client 192.168.10.133 finished fixup.dat
Apr  8 23:01:37 shepherd in.tftpd[19033]: Client 192.168.10.133 finished start.elf
Apr  8 23:01:37 shepherd in.tftpd[19033]: Client 192.168.10.133 timed out
[adam@shepherd ~]$ cat /etc/xinetd.d/tftp
# default: off
# description: The tftp server serves files using the trivial file transfer \
#   protocol.  The tftp protocol is often used to boot diskless \
#   workstations, download configuration files to network-aware printers, \
#   and to start the installation process for some operating systems.
service tftp
{
    socket_type     = dgram
    protocol        = udp
    wait            = yes
    user            = root
    server          = /usr/sbin/in.tftpd
    server_args     = -v -v -s /tftpboot
    disable         = no
    per_source      = 11
    cps         = 100 2
    flags           = IPv4
}

答案1

要追踪此问题,您需要进行 Wireshark 流量捕获(即在 TFTP 服务器上)才能真正了解数据包级别发生的情况。

相关内容