我知道问题被多次回答,但这种情况有点不同。
所以这里是我所拥有的:
另外这个东西很容易实现,但一起…设置它主要工作:1002用户通过eth1去现在,如果没有可用的地方。 但是,一些主机仍然通过eth0路由。 我不知道为什么。
这是我的设置:
user @ localhost:〜$ ip规则
0: from all lookup local 1000: from all fwmark 0x5 lookup 5 2000: from all fwmark 0x5 lookup 6 32766: from all lookup main 32767: from all lookup default`
user@localhost:~$ ip route list table 5 0.0.0.0/1 via 10.10.0.185 dev eth1
user@localhost:~$ ip route list table 6 blackhole 0.0.0.0/1
user@localhost:~$sudo iptables -S -P INPUT ACCEPT -P FORWARD ACCEPT -P OUTPUT ACCEPT
user@localhost:~$ sudo iptables -t nat -S -P PREROUTING ACCEPT -P INPUT ACCEPT -P OUTPUT ACCEPT -P POSTROUTING ACCEPT -A POSTROUTING -o eth1 -j MASQUERADE
user@localhost:~$ sudo iptables -t mangle -S -P PREROUTING ACCEPT -P INPUT ACCEPT -P FORWARD ACCEPT -P OUTPUT ACCEPT -P POSTROUTING ACCEPT -A OUTPUT -m owner --uid-owner 1002 -j MARK --set-xmark 0x5/0xffffffff
您指定了0.0.0.0/1的路由。 该子网由0.0.0.0至127.255.255.255(含)组成。 目前还不完全清楚,为什么你只想路由一半可能的IP地址。 我怀疑你的意思是所有的路线(例如0.0.0.0/0 )。