Scott Kveton <[EMAIL PROTECTED]> writes: > These are the routes in the main table. Now, I have Squid bound to > 63.229.140.41 and I want all traffic with that source to go out > 63.229.140.46 using source routing. I would think I would do the following: > > ip ru add prio 4000 from 63.229.140.41 lookup qwest_7_1 > ip ro add table qwest_7_1 via 63.229.140.46 > ip ro flush cache
I have something similar working on a RedHat system with kernel 2.2.16. Here are the rules which I use: # Set up a routing table for DSL_1 network ip route add throw 192.168.1.0/24 table DSL_1 ip route add throw 123.123.123.0/24 table DSL_1 ip route add throw 10.0.0.0/8 table DSL_1 ip route add default via 123.123.123.1 table DSL_1 # Route traffic via network specific routing table ip rule add from 123.123.123.123 to 0/0 lookup DSL_1 priority 4000 The throw routes are necessary so that you don't force local traffic out the gateway ... when you have multiple local networks you want to keep the local networks talking locally. > If I do a `ping -I 63.229.140.41 ftp.orst.edu` I get a host unreachable. It works for me ;-) If you still have problems let me know and I can send you a copy of the kernel compile options I used. -- Fraser Campbell <[EMAIL PROTECTED]> Starnix Inc. Telephone: (905) 771-0017 Thornhill, Ontario, Canada http://www.starnix.com/ Professional Linux Services & Products