Sag*_*gar 3 networking linux ping
所以问题来了。我在同一个网络后面有两台不同的计算机。两者都具有相同的网关、IP 地址前缀等。
计算机 1:Windows XP IP 192.168.0.15
这台计算机可以从网络ping和tracert到我试图访问的另一台计算机
计算机 2:Linux (debian) IP 192.168.0.54
这台计算机可以 ping那个网络外的计算机,但不能跟踪路由到它。
这让我相信这与防火墙无关,而是与操作系统配置有关。
路由命令的输出:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 * 255.255.255.0 U 0 0 0 eth0
169.254.0.0 * 255.255.0.0 U 0 0 0 eth0
default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
Run Code Online (Sandbox Code Playgroud)
关于问题可能是什么的任何想法?
sys*_*138 13
这是因为 Windows 和 Linux 实现的跟踪路由不同。
在 Windows 上,它使用具有不同生存时间设置的 ICMP Echo 数据包来计算中间跃点。
在 Linux 上,它使用具有不同生存时间设置的 UDP 数据包来计算中间跃点。
一些网络允许一个或两个,或不允许。允许 ICMP 但不允许 UDP 的网络的行为会有所不同。linux 上的 Ping 使用与 Windows 相同的 ICMP Echo 数据包,这解释了为什么它有效但 Traceroute 无效。
此外,不同的 traceroute 程序的行为也不同。并非所有 linux 都为此使用 UDP。所以这不是普遍的。
| 归档时间: |
|
| 查看次数: |
8153 次 |
| 最近记录: |