当前位置: 首页>>技术教程>>正文


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

, ,

问题描述

我的计算机上有两个以太网接口,该接口运行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

我想让所有去往internet-at-large的流量都通过eth0运行,但似乎要通过eth1。有没有办法我可以通过eth0引导一般的出站流量,而仅使用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

最佳方案

您应该只有一个默认网关。如果您从eth1中删除网关线路,则所有线路都将正常工作(重新启动网络后)。

次佳方案

从/etc /network /interfaces中的eth1删除网关,并将其添加为静态路由:

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网络

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/11660.html,未经允许,请勿转载。