我遇到了 Ubuntu 中的互联网连接无法再工作的问题。
我有两个 NIC。都是静态的。一个有互联网 IP,另一个有本地 IP。我可以通过 SSH 顺利进入本地,但互联网 IP 在网络外部看不到。我有 5 个静态互联网 IP(只有 1 个分配给此服务器),其他 IP 在相同配置下工作正常,所以我知道这不是 ISP 的问题。我也可以 ping 我拥有的其他互联网 IP,但我无法 ping 通 - 比如 google 的 8.8.8.8。
netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
XX.49.84.232 0.0.0.0 255.255.255.248 U 0 0 0 eth1
172.24.98.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 XX.49.84.238 0.0.0.0 UG 0 0 0 eth1
/etc/network/interfaces file:
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 172.24.98.60
netmask 255.255.255.0
auto eth1
allow-hotplug eth1
iface eth1 inet static
address XX.49.84.237
gateway XX.49.84.238
netmask 255.255.255.248
有什么想法吗?非常感谢!
答案1
检查到 8.8.8.8 的路线:
$ ip ro get 8.8.8.8
8.8.8.8 via XX.49.84.238 dev eth0 src XX.49.84.237
cache mtu 1500 advmss 1460 hoplimit 64
然后运行 tcpdump 并 ping 8.8.8.8:
# tcpdump -pni eth1 (one console)
# ping 8.8.8.8 (second console)
复制有问题的输出。
同时检查 ARP:
$ arp -a
XX.49.84.238 (XX.49.84.238) в xx:xx:xx:xx:xx:xx [ether] на eth1
iptables 规则如下:
# iptables -nv -L