两个网关/两个不同的ips提供商

我希望将进入eth0的数据包路由回eth0,而将进入eth1的数据包通过eth1回来。 我不在乎哪个网关用于传出连接。

如果我只在/ etc / network / interfaces中input两个网关,那么内核会在两个接口上发送数据包。

我记得它与路由表有关,但我不知道该怎么做/我可以在哪里读到更多的信息。

你想实现的是多宿主,而不是绑定或负载平衡。

为此,您需要实施“策略”或“基于源”的路由。

你可以在Linux中使用iproute2软件包来完成。

有一篇很好的文章解释了如何在这里 。

我已经根据这个答案使用shorewall实现了一个可用的MultiISP设置: 使用两个上行链路的NIC绑定

它易于实现和pipe理,在“负载均衡”configuration下运行良好,在没有findcaching路由的情况下,数据包在上行链路之间均匀分布。

阅读更多关于它在这里: http : //www.shorewall.net/MultiISP.html

我发现这个网页描述了如何使用iptables2来实现这个function。

我发现它使用谷歌和“Linux 2默认网关”