在同一子网中添加默认路由失败

在同一子网中添加默认路由失败

我正在运行 Fedora 22(内核 4.0.4),并尝试为自定义路由表添加默认路由,服务端由以太网接口 enp3s0 上的 vlan30 使用。

该 VLAN 有两个关联的 IP 地址,分别是:

192.168.129.66&192.168.129.67、/29 子网。

路由智能(ZyXel 110防火墙)中的vlan接口是:

192.168.129.65(与 NIC 地址位于同一子网上)

重新启动服务器后,我使用以下命令清除所有路由和规则:

ip 路由刷新缓存

ip 路由全部刷新

ip 规则刷新

所有规则和路线均被删除。

然后我添加一条路线:

ip 路由添加 192.168.129.64/29 dev vlan30 proto 静态范围全局 src 192.168.129.67 表 SERVINT

到目前为止,一切都很好。当我添加默认路由到 192.168.129.65 时,我得到了“RTNETLINK 回答:网络无法接通”,但默认路由在之前定义的路由的子网内。

我可以得到默认路由被接受的唯一方法是将其定义为 NIC 上的 IP 地址,然后它当然不会与路由智能对话,以进行进一步的路由......所以这也是失败的。

有人知道可能出了什么问题吗?

测试更新_25062015

如果我使用“主”表(表号 254)中路由的 VLAN 执行上述操作,则一切都正常工作,但是当我在自定义表(表号 200)上执行上述操作时,故障仍然一致,如上所述。

KERNEL 配置中有 CONFIG_IP_MULTIPLE_TABLES=y,因此应启用多个表和策略路由功能。自定义表定义在/etc/iproute2/rt_tables文件。

还有什么可以停止使用自定义路由表吗?

干杯,GM

答案1

我终于找到了这个特殊问题的原因 - 库存的 Fedora 22 Server 安装没有安装支持多路由表所需的一些文件。

缺少文件的软件包是“kernel-headers”、“kernel-devel”和“libnl3-devel”。如果没有这些软件包,fib_rules 模块将无法运行。

相关内容