无法添加默认路由 - RTNETLINK 回答:网络无法访问

无法添加默认路由 - RTNETLINK 回答:网络无法访问

在 Ubuntu 14.04 服务器(3.16.0-30)上,我尝试添加默认路由并出现以下错误:

ip route 添加默认通过 172.16.111.99 dev bond0.11
RTNETLINK 回答:网络无法接通

此盒子的地址192.168.11.23bond0.11。我已静态配置以下路由(已编辑为相关子集):

172.16.111.0/24 通过 192.168.11.18 dev bond0.11
192.168.11.0/24 dev bond0.11 proto 内核范围链接 src 192.168.11.23

我可以 ping172.16.111.99并且这里是traceroute的输出:

跟踪路由至 172.16.111.99 (172.16.111.99),最多 30 个跳数,60 字节数据包
 1 192.168.11.18 0.126毫秒 0.096毫秒 0.081毫秒
 2 172.16.111.99 0.149毫秒 0.142毫秒 0.112毫秒

为什么我明明有权访问该网络/主机,却拒绝添加默认路由?我显然做错了什么……

答案1

问题是下一个或者网关路由需要与您所连接的网络位于同一网络上。

即,您可以设置默认路由以使用192.168.11.18。这样系统就会知道如何访问网络172.16.x.x

答案2

可能是接口已关闭:

ip link set eno1 up
ip addr add 10.0.0.100 dev dno1
ip route add default via 10.0.0.1 dev dno1

答案3

几天前我在一块嵌入式主板(Vim3)上遇到了这个问题。配置 IP 后添加延迟或为“ip route”添加额外选项都不起作用。经过几个小时的尝试,我找到了解决方案:只需在“ip route add default via 192.168.0.254 dev wlan0”之前添加“ip rule add from all lookup main”,因为我的主板已配置策略路由,因此内核找不到要查找路由的表。

相关内容