我正在尝试在 Ubuntu 12.04 LTS 上设置正确的网络,其中包含 4 个以太网连接。每个连接都在不同的子网上,其中两个子网连接到其他子网。例如,一个以太网端口连接到 192.168.2.x 子网,并且还可以通过该连接访问 192.168.4.x 子网。
我已成功设置静态 IP 地址、网关等。但是,来自子网外部的连接(即 192.168.2.x 子网上的 VPN)始终通过默认网关发出。当该默认网关不是该特定子网的网关时,外部 VPN 连接会失败。
我使用 iproute 创建了一些功能,但我不知道长期解决该问题的最佳方法。
答案1
默认网关实际上就是在没有静态或使用路由协议定义其他路由时使用的默认路由。您可以将连接到多个子网的计算机视为路由器。当它连接到该子网时,它将使用相应的接口,否则将使用包含默认路由的接口。如果您希望流向 192.168.2 子网的流量流出特定接口,您可以静态设置该接口,但当您发现数据包返回到包含 VPN 默认路由的子网时,您可能会遇到麻烦。
我认为记住这一点很有帮助:多宿主机器=大麻烦
答案2
从你的问题来看,你的电脑是网络的核心,我相信也是 VPN 网关。你所要做的就是在配置中添加一些静态路由。
为了添加这个配置,你必须编辑/etc/network/interfaces
我认为你已经熟悉的文件,并添加一些语句,如下所示:
auto eth2
iface eth2 inet static
address 192.168.2.1
netmask 255.255.255.0
up ip route add 192.168.4.0/24 via 192.168.2.200
我添加了指向另一个网关的路由,但如果网络直接连接到此接口,您可以直接添加ip route add 192.168.4.0/24 dev eth2
。您可以将其复制到另一个接口。