使用特定接口进行出站连接(Ubuntu 9.04)

我的计算机系统中有 2 个以太网用户界面,运行 Ubuntu 9.04。 两个接口都使用固定 IP,但使用不同的门户。 我的 /etc/network/interfaces 数据看起来像这样:

auto eth0 eth1
iface eth0 inet static
  address 10.0.0.5
  netmask 255.255.255.0
  gateway 10.0.0.1

iface eth1 inet static
  address 192.168.2.5
  netmask 255.255.255.0
  gateway 192.168.2.1

我希望通过 eth0 让所有网站流量最有可能通过 eth0 大运行,但它似乎打算通过 eth1。 有没有一种方法可以让我通过 eth0 传输我的基本传出 Web 流量,并且只使用 eth1 传输到其子网的流量?

回应必须是无情的; 也就是说,它需要通过重新启动,而不需要超级用户在重新启动后运行命令。

编辑 :根据要求,这是我的 route -n 命令的结果:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth1
0.0.0.0         192.168.2.1     0.0.0.0         UG    100    0        0 eth1
0.0.0.0         10.0.0.1        0.0.0.0         UG    100    0        0 eth0
8
2022-06-07 15:17:26
资源 分享
答案: 4

通过输入 route 查看您当前的路由表。 您的设备肯定会使用它在路由表中看到的第一个默认 gw。 这肯定会默认表示为 0.0.0 .0 作为目标。 如果您只想将 eth1 用于区域 192.168.2.0 /24 网络,请删除门户命令。 这应该使 eth1 成为您唯一的默认 gw。

1
2022-06-07 15:50:01
资源

按照建议使用课程修改路由表肯定会短暂修复此问题,但它将在下次启动时恢复为当前状态。

当然可以在 /etc/rc 中设置课程政策。 邻居或其他某种初始化手稿,但在这种情况下,最基本的选择就是从用户界面文档中删除 eth1 的入口。

通过摆脱该入口,系统仍将立即使用 eth1 作为 192.168.2/24 路径,但肯定会通过 eth0 引导所有其他流量。

2
2022-06-07 15:49:20
资源

您必须只有一个默认网关。 如果您从 eth1 中删除门户线路,那么一切都会简单地工作(重新启动网络后)。

12
2022-06-07 15:47:49
资源

从/etc/network/interfaces 中的eth1 中移除portal 并将其添加为固定路径:

route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.2.1

这样,10.0.0 .1 肯定会成为您的默认门户,而 eth1 将仅用于连接到 192.168.2.0 网络

4
2022-06-07 15:41:38
资源