我的 Linux 机器上的主路由表如下所示
[root@hng1 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
9.9.9.0 0.0.0.0 255.255.255.0 U 0 0 0 eth4
10.41.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth3
10.61.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 10.61.0.1 0.0.0.0 UG 0 0 0 eth0
我可以 ping 地址 10.41.41.228
[root@hng1 ~]# ping 10.41.41.228
PING 10.41.41.228 (10.41.41.228) 56(84) bytes of data.
64 bytes from 10.41.41.228: icmp_seq=1 ttl=64 time=3.55 ms
64 bytes from 10.41.41.228: icmp_seq=2 ttl=64 time=1.68 ms
但无法添加指向下一跳为上述地址的路由
[root@hng1 ~]# ip route add 20.20.20.1/32 via 10.41.41.228 dev eth3
RTNETLINK answers: Network is unreachable
我错过了什么?
答案1
我们可以尝试ping一下:
ping -aeth3网卡的IP地址10.41.41.228.
如果可以 ping 通,则表示通过 eth3。然后我们需要将 eth3 的网关设置为 10.41.41.228。
如果我们不能ping通,它会通过eth0,eth3的下一跳不是10.41.41.228。