这是 Debian 6.0 设置,我曾经将 IP 手动设置为 192.168.7.50,但现在我有一个具有该 IP 的新服务器,我只想通过网络复制一些内容,但现在我似乎无法让它运行网络上很好,所有网络访问都很好,但 192.168.7.50 总是重新路由到自身。
我已经在 /etc/network/interfaces 中设置了我的配置
auto lo eth0
iface lo inet loopback
allow-hotplug eth0
iface eth0 inet dhcp
执行 ping 操作会产生:
ping 192.168.7.50
PING 192.168.7.50 (192.168.7.50) 56(84) bytes of data.
From 192.168.7.100 icmp_seq=1 Destination Host Unreachable
From 192.168.7.100 icmp_seq=2 Destination Host Unreachable
From 192.168.7.100 icmp_seq=3 Destination Host Unreachable
From 192.168.7.100 icmp_seq=4 Destination Host Unreachable
From 192.168.7.100 icmp_seq=5 Destination Host Unreachable
From 192.168.7.100 icmp_seq=6 Destination Host Unreachable
我是否需要清除导致转发的缓存?我还可以做哪些其他事情来诊断问题?
答案1
该输出中没有任何内容显示任何类型的转发。该输出显示服务器不知道如何访问 IP 地址 192.168.7.100。
要诊断“目标主机无法访问”错误,请检查网络路由:
netstat -rn
-n
如果您希望网络 IP 地址转换回服务器名称,请将 去掉。
查找具有掩码和目标的条目,以便当 192.168.7.100 应用掩码(按位与)时,目标值匹配。例如:
Destination Mask
192.168.7.0 255.255.255.0
这将匹配,因为用 255.255.255.0 屏蔽的 192.16.7.100 给出 192.168.7.0。
答案2
由于您的系统似乎已从 DHCP 服务器成功获取 IP 地址 (192.168.7.50),因此这似乎是路由问题。正如 @ash 建议尝试以下命令:
$ netstat -rn
该命令与其他建议同义route -n
。任一命令都会产生与此类似的输出:
路线
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 2 0 0 wlan0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 wlan0
网络统计
$ netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 wlan0
有趣的一行是其 Flags 列中包含 UG 的行。这是您系统的默认网关。这是与任何网络定义(第一列)没有显式匹配的任何 IP 数据包的默认目标。
在您的情况下,您可能会遇到与上面类似的行,只是 IP 不同。您的网络地址将为192.168.7.0
。
如果这一切看起来都正常,那么请确保您可以先 ping 通您的默认路由。有时系统配置了防火墙,因此它们不会响应 ping 数据包(ICMP 数据包)。
另一件要尝试的事情是traceroute
:
$ traceroute 192.168.1.254
traceroute to 192.168.1.254 (192.168.1.254), 30 hops max, 60 byte packets
1 router1.bubba.net (192.168.1.254) 1.399 ms 1.586 ms 1.904 ms
这将向您显示数据包从您到达目的地所需的路径。