Hello, I am a newbie at routing configuration and I hope you can help me understand why something is happening, and how I can reconfigure my machine to work correctly. Here is my network setup: [DSL Router] [T1 Router] | |65.198.37.65 [NAT/firewall] | |192.168.168.1 | +-----------+---------+ | [switch] | | +-------[Linux box] 192.168.168.200/eth0 65.198.37.66/eth0 You can see, I have two IPs of different nets bound to the single interface in the machine. My goal is to route connections over both the DSL and the (fractional) T1, preferring the DSL with a 6:1 ratio. Here is my configuration so far, which mostly works: root@xxxxxxxx:/home/jwb# ip route list 65.198.37.64/29 dev eth0 proto kernel scope link src 65.198.37.66 192.168.168.0/24 dev eth0 proto kernel scope link src 192.168.168.200 127.0.0.0/8 dev lo scope link default nexthop via 192.168.168.1 dev eth0 weight 6 nexthop via 65.198.37.65 dev eth0 weight 1 root@xxxxxxxx:/home/jwb# ip route list table 100 192.168.168.0/24 dev eth0 scope link default via 192.168.168.1 dev eth0 root@xxxxxxxx:/home/jwb# ip route list table 200 65.198.37.64/29 dev eth0 scope link default via 65.198.37.65 dev eth0 root@xxxxxxxx:/home/jwb# ip addr list 1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo 2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 100 link/ether 00:d0:b7:88:23:d9 brd ff:ff:ff:ff:ff:ff inet 192.168.168.200/24 brd 192.168.168.255 scope global eth0 inet 65.198.37.66/29 scope global eth0:t1 root@xxxxxxxx:/home/jwb# ip ru list 0: from all lookup local 32764: from 65.198.37.66 lookup 200 32765: from 192.168.168.1 lookup 100 32766: from all lookup main 32767: from all lookup 253 This mostly works fine, except that a lot of packets are going out over one link or the other, with the wrong source address. Also traceroute shows packets going out over the DSL, which actual TCP SYN packets go out over the T1 with the wrong address. Here is an example: traceroute to appwatch.zdnet.com (216.65.128.201), 30 hops max, 40 byte packets 1 w145.z064001233.sjc-ca.dsl.cnc.net (64.1.233.145) 2 w001.z064001104.sjc-ca.dsl.cnc.net (64.1.104.1) So the packets should be going out over the DSL. However, ethereal shows that when I try to initiate a TCP connection, the packets are headed for the MAC address of corresponding to the T1 router (65.198.37.65). Why would this discrepancy happen? Regards and thanks in advance for any assistance, Jeffrey Baker