在 Red Hat 中添加静态路由,将不同子网中的机器作为默认网关

在 Red Hat 中添加静态路由,将不同子网中的机器作为默认网关
目标网关 Genmask 标志 指标参考使用 Iface
10.156.16.0 0.0.0.0 255.255.252.0 U 0 0 0 eth0
168.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 10.156.16.1 0.0.0.0 UG 0 0 0 eth0

这是当前内核路由表。

我想通过以下命令添加条目。

路由添加-net 14.1.0.0 网络掩码 255.255.255.0 gw 1​​0.156.149.144

14.1.0.0/24 是我使用在 10.156.149.144 上运行的 Honeyd 配置的子网。

但是路由命令给出错误-SIOCDELRT:没有这样的过程。

所以请帮我在路由表中添加这个条目。

答案1

您只能在本地子网上设置网关。这是因为一旦您将数据包发送给另一台机器,它就可以自由地以任何方式路由数据包。因此,您可能会说“看,我想通过 10.156.149.144 路由发往 14.1.0.1 的数据包,因此要将数据包发送到那里,我会将其传递给 10.156.16.1”,然后当您将数据包交给 10.156.16.1 时,它会说“不,我认为发往 14.1.0.1 的数据包应该路由到 192.0.2.254”,并且数据包不会到达您需要它去的地方。

您需要做的是直接连接到 10.156.149.144,或者告诉 10.156.16.1(以及沿途的任何其他路由器)它应该将流量路由到 14.1.0.0/24,方向为 10.156.149.144。幸运的是,“直接连接”可以是某种隧道(VPN、GRE 等),因此您不必铺设任何电缆。

相关内容