Hi, I have been searching around and trying for a few days but still can't get it works. Hopefully the highhand here can give me hints!! I have 3 adsl connections, 1 is using hardware broadband router to connect and the other 2 are using my debian linux pc to connect. I hope to setup a route policy so that all users except user1 and user2 will use the broadband router connect (eth0), and user1 will use ppp0 while user2 will use ppp1 to connect to the internet. Below are the network interface information and the routing infomation I used: #ifconfig -a eth0 Link encap:Ethernet HWaddr 00:20:18:A1:62:E7 inet addr:192.168.0.103 Bcast:192.168.0.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:356114 errors:0 dropped:0 overruns:0 frame:0 TX packets:356002 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:104135878 (99.3 MiB) TX bytes:73152840 (69.7 MiB) Interrupt:11 Base address:0xd400 eth1 Link encap:Ethernet HWaddr 00:50:BF:51:29:FB inet addr:192.168.1.103 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1772 errors:24 dropped:0 overruns:0 frame:0 TX packets:1321 errors:0 dropped:0 overruns:0 carrier:0 collisions:2 txqueuelen:1000 RX bytes:208048 (203.1 KiB) TX bytes:79797 (77.9 KiB) Interrupt:11 Base address:0xd000 eth2 Link encap:Ethernet HWaddr 00:20:18:A1:F5:D1 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:8966 errors:2 dropped:0 overruns:0 frame:0 TX packets:8923 errors:0 dropped:0 overruns:0 carrier:0 collisions:191 txqueuelen:1000 RX bytes:1154555 (1.1 MiB) TX bytes:1399159 (1.3 MiB) Interrupt:10 Base address:0xcc00 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:282686 errors:0 dropped:0 overruns:0 frame:0 TX packets:282686 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:53033254 (50.5 MiB) TX bytes:53033254 (50.5 MiB) ppp0 Link encap:Point-to-Point Protocol inet addr:218.103.195.190 P-t-P:218.102.177.254 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1 RX packets:8066 errors:0 dropped:0 overruns:0 frame:0 TX packets:8134 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:802178 (783.3 KiB) TX bytes:1043716 (1019.2 KiB) ppp1 Link encap:Point-to-Point Protocol inet addr:218.103.255.23 P-t-P:218.102.177.254 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1 RX packets:5980 errors:0 dropped:0 overruns:0 frame:0 TX packets:5956 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:783811 (765.4 KiB) TX bytes:1069372 (1.0 MiB) #route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 218.102.177.254 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0 218.102.177.254 0.0.0.0 255.255.255.255 UH 0 0 0 ppp1 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0 #ip rule show 0: from all lookup local 32761: from all fwmark 0x2 lookup MUD2 32762: from all fwmark 0x1 lookup MUD1 32763: from 218.103.255.23 lookup NET1 32764: from 218.103.195.190 lookup NET0 32765: from 10.0.0.10 lookup John 32766: from all lookup main 32767: from all lookup default #ip route list table local broadcast 192.168.1.0 dev eth1 proto kernel scope link src 192.168.1.103 broadcast 192.168.0.255 dev eth0 proto kernel scope link src 192.168.0.103 broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1 local 218.103.195.190 dev ppp0 proto kernel scope host src 218.103.195.190 local 192.168.1.103 dev eth1 proto kernel scope host src 192.168.1.103 local 218.103.255.23 dev ppp1 proto kernel scope host src 218.103.255.23 broadcast 192.168.0.0 dev eth0 proto kernel scope link src 192.168.0.103 broadcast 192.168.1.255 dev eth1 proto kernel scope link src 192.168.1.103 local 192.168.0.103 dev eth0 proto kernel scope host src 192.168.0.103 broadcast 127.0.0.0 dev lo proto kernel scope link src 127.0.0.1 local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1 local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1 #ip route list table MUD1 default via 218.102.177.254 dev ppp0 #ip route list table NET1 default via 218.102.177.254 dev ppp1 #ip route list table NET0 default via 218.102.177.254 dev ppp0 #ip route list table main 218.102.177.254 dev ppp0 proto kernel scope link src 218.103.195.190 218.102.177.254 dev ppp1 proto kernel scope link src 218.103.255.23 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.103 default via 192.168.0.1 dev eth0 (other tables are empty) (and I have set the follow 2 lines for my iptables) iptables -t mangle -A OUTPUT -m owner --uid-owner 1004 -j MARK --set-mark 1 iptables -t mangle -A OUTPUT -m owner --uid-owner 1005 -j MARK --set-mark 2 (uid 1004 = mud1, uid 1005 = mud2) After all these settings, I can ssh from outside server to the machine with "218.103.195.190" and "218.103.255.23". I can also use root to do following ping: #ping www.ust.hk ping www.ust.hk PING www.ust.hk (143.89.14.34) 56(84) bytes of data. 64 bytes from www.ust.hk (143.89.14.34): icmp_seq=1 ttl=248 time=19.5 ms 64 bytes from www.ust.hk (143.89.14.34): icmp_seq=2 ttl=248 time=31.1 ms #ping -I ppp0 www.ust.hk PING www.ust.hk (143.89.14.34) from 218.103.195.190 ppp0: 56(84) bytes of data. 64 bytes from www.ust.hk (143.89.14.34): icmp_seq=1 ttl=248 time=21.1 ms 64 bytes from www.ust.hk (143.89.14.34): icmp_seq=2 ttl=248 time=23.9 ms 64 bytes from www.ust.hk (143.89.14.34): icmp_seq=3 ttl=248 time=26.3 ms #ping -I ppp1 www.ust.hk PING www.ust.hk (143.89.14.34) from 218.103.255.23 ppp1: 56(84) bytes of data. 64 bytes from www.ust.hk (143.89.14.34): icmp_seq=1 ttl=248 time=22.5 ms 64 bytes from www.ust.hk (143.89.14.34): icmp_seq=2 ttl=248 time=24.9 ms 64 bytes from www.ust.hk (143.89.14.34): icmp_seq=3 ttl=248 time=19.0 ms When I change to user 'mud1', then: mud1#ping 143.89.14.15 PING 143.89.14.15 (143.89.14.15) 56(84) bytes of data. 64 bytes from 143.89.14.15: icmp_seq=1 ttl=248 time=23.4 ms 64 bytes from 143.89.14.15: icmp_seq=2 ttl=248 time=25.5 ms However: mud1#ping www.ust.hk (no response) mud1#telnet www.ust.hk 80 (no response) mud1#ssh -l solarkid uststu1.ust.hk (no response) If i unset: ----------------------------------------------- #ip route list table MUD1 default via 218.102.177.254 dev ppp0 ----------------------------------------------- then user "mud1" can do everything smoothly, but of course it's using eth0 interface than ppp0 as I wish to do. Anything I set wrong or missing??? Thanks aaaaa lot!!~~~ Andrew _______________________________________________ LARTC mailing list LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc