我怎么能路由SYN和相关的TCP 80,443出不同的接口比我的默认GW?

我有一个服务器有两个nics( eth0 = 10.10.10.1/24 eth1 = 192.168.1.2/24 )。 eth0是本地和互联网stream量的默认路由。 我想要路由任何不是10.10.10.xstream量(例如:stream量到security.ubuntu.com,美国.archive.ubuntu.com或类似的回购)out接口eth1 (这是连接到一个linux的盒子与运行NTOP一起做IP转发)。

security.ubuntu.com是一个91.189.xx子网后面的五个IP地址,所以我试着添加一个路由与ip route add 91.189.0.0/16 via 192.168.1.2但这只出现(通过Linux路由器上的tcpdump )到创build大量的ARPstream量寻找91.189.xx IP地址:

 11:39:32.945343 ARP, Request who-has 91.189.88.149 tell 192.168.1.2,length 46 11:39:33.943867 ARP, Request who-has 91.189.88.149 tell 192.168.1.2,length 46 11:39:34.943893 ARP, Request who-has 91.189.88.149 tell 192.168.1.2,length 46 11:39:35.943977 ARP, Request who-has 91.189.88.149 tell 192.168.1.2,length 46 11:39:35.944108 ARP, Request who-has 91.189.88.161 tell 192.168.1.2,length 46 11:39:36.943903 ARP, Request who-has 91.189.88.149 tell 192.168.1.2,length 46 11:39:36.943917 ARP, Request who-has 91.189.88.161 tell 192.168.1.2,length 46 

我在这里错过了什么?

在您的192.168.1.2接口上设置默认网关。 10.10.10.1接口不需要DG,可以直接与10.10.10.0/24networking上的其他设备进行通信。 所有的192.168.1.0/24stream量以及所有非本地stream量都将从192.168.1.2接口stream出。

解决了。 需要在eth1接口上使用上游Linux路由器的IP地址,而不是本地IP(例如: 192.168.1.1而不是.2

ip route add 91.189.0.0/16 via 192.168.1.1