First, it would be useful to know what kernel you are running :)
And I do not understand what your example is proving. In your example, I cannot see what source address is being used for the traceroute. It only proves the packets for the traceroute are going out through the DSL connection. It does not say anything about source addresses used for the packets leaving your linux box. (See inline comments for the place where I lost you)
Regards, Guy
Jeffrey W. Baker wrote:
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.
How do you get to this conclusion???
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
_______________________________________________ LARTC mailing list / LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://ds9a.nl/2.4Routing/