"Marco Paglioni" <(E-Mail Removed)> wrote in message news:<cffil6$b3h$(E-Mail Removed) >...
> Hi
> i have a routing problem...
> i'm trying to balance traffic between two routers (one hdsl and one adsl)
What do you mean by "balance" here? Shared bandwidth? Failover?
Binding outbound traffic?
> i have followed instructions on the Linux advanced routing & traffi control,
Which example? Split access (4.2.1)? Load Balancing (4.2.2)? Again,
just what "works" and what does not?
> but still i haven't managed to get all working. I can ping one of the two
> routers at a time... the one whose the corresponding eth was started last.
> The ping to the other router gives me network unreachable.
Where are you pinging from? Where is the "network unreachable"
generated? Your machine? ISP's network? Your tables/rules below not
quite routing correctly and getting "normal" Linux behavior instead --
ie., last eth up is the only one "working".
> I'll post all output from some IP commands and the ifconfig
> keep in mind that the two routers have addresses 80.17.101.233/29 e
> 82.190.246.169/24, and the corresponding eth1 and eth2 have the next ip in
> that subnet. The eth0 (lan) 10.0.0.254, and that the two external interfaces
> eth1 and eth2 are on a switch on their own with the two routers, separated
> from the rest of the lan.
Output below is useful -- would be more so, for me, if I had a clearer
idea of your physical network layout. Ascii art or pathway
description (one net segment per line) would be nice.
>
> --------->IP ROUTE
> 80.17.101.232/29 dev eth1 proto kernel scope link src 80.17.101.234
> 82.190.246.168/29 dev eth2 proto kernel scope link src 82.190.246.170
> 10.0.0.0/16 dev eth0 proto kernel scope link src 10.0.0.254
> 169.254.0.0/16 dev eth1 scope link
> default via 80.17.101.233 dev eth1
>
> --------->IP ROUTE SHOW TABLE T1
> 80.17.101.232/29 dev eth1 scope link src 80.17.101.234
> default via 80.17.101.233 dev eth1
>
> --------->IP ROUTE SHOW TABLE T2
> 82.190.246.168/29 dev eth2 scope link src 82.190.246.170
> default via 82.190.246.169 dev eth2
>
> --------->IP RULE
> 0: from all lookup local
> 32764: from 82.190.246.170/29 lookup T2
> 32765: from 80.17.101.234/29 lookup T1
> 32766: from all lookup main
> 32767: from all lookup default
I think all you have here is split access -- incomplete at that.
Re-read the lartc section 4.2.
> --------->IFCONFIG
> eth0 Link encap:Ethernet HWaddr 00:0E:7F:EE:4C:A1
> inet addr:10.0.0.254 Bcast:10.0.255.255 Mask:255.255.0.0
> inet6 addr: fe80::20e:7fff:feee:4ca1/64 Scope:Link
> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
> RX packets:120824 errors:0 dropped:0 overruns:0 frame:0
> TX packets:94214 errors:0 dropped:0 overruns:0 carrier:0
> collisions:0 txqueuelen:1000
> RX bytes:29649100 (28.2 Mb) TX bytes:65356303 (62.3 Mb)
> Interrupt:193
>
> eth1 Link encap:Ethernet HWaddr 00:0E:7F:EE:4C:A0
> inet addr:80.17.101.234 Bcast:80.17.101.239 Mask:255.255.255.248
> inet6 addr: fe80::20e:7fff:feee:4ca0/64 Scope:Link
> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
> RX packets:76767 errors:0 dropped:0 overruns:0 frame:0
> TX packets:70356 errors:0 dropped:0 overruns:0 carrier:0
> collisions:0 txqueuelen:1000
> RX bytes:59851011 (57.0 Mb) TX bytes:18425091 (17.5 Mb)
> Interrupt:201
>
> eth2 Link encap:Ethernet HWaddr 00:40:05:32:B5:94
> inet addr:82.190.246.170 Bcast:82.190.246.175
> Mask:255.255.255.248
> inet6 addr: fe80::240:5ff:fe32:b594/64 Scope:Link
> UP BROADCAST MULTICAST MTU:1500 Metric:1
> RX packets:0 errors:0 dropped:0 overruns:0 frame:0
> TX packets:169 errors:0 dropped:0 overruns:0 carrier:0
> collisions:0 txqueuelen:1000
> RX bytes:0 (0.0 b) TX bytes:12607 (12.3 Kb)
> Interrupt:225 Base address:0x4000
>
> lo Link encap:Local Loopback
> inet addr:127.0.0.1 Mask:255.0.0.0
> inet6 addr: ::1/128 Scope:Host
> UP LOOPBACK RUNNING MTU:16436 Metric:1
> RX packets:1524410 errors:0 dropped:0 overruns:0 frame:0
> TX packets:1524410 errors:0 dropped:0 overruns:0 carrier:0
> collisions:0 txqueuelen:0
> RX bytes:211889986 (202.0 Mb) TX bytes:211889986 (202.0 Mb)
>
>
> ----------->ip route get 10.0.0.1 from 82.190.246.169 iif lo
> 10.0.0.1 from 82.190.246.169 via 82.190.246.169 dev eth2 src 82.190.246.170
> cache mtu 1500 advmss 1460 iif lo
>
> ----------->ip route get 82.190.246.169 from 10.0.0.1 iif eth0
> 82.190.246.169 from 10.0.0.1 dev eth2 src 10.0.0.254
>
> ----------->ip route get 10.0.0.1 from 80.17.101.233 iif lo
> 10.0.0.1 from 80.17.101.233 via 80.17.101.233 dev eth1 src 80.17.101.234
>
> ----------->ip route get 80.17.101.233 from 10.0.0.01 iif eth0
> 80.17.101.233 from 10.0.0.1 dev eth1 src 10.0.0.254
I think you are mostly (partly?) there. Depends on just what you are
trying to accomplish.
As an additional resource, you should check this out for more
examples/explanations:
http://linux-ip.net/html/adv-multi-internet.html
The whole document is worthwhile.
One last suggestion. Get a sniffer set up to capture the packets on
the wire as you test/confirm your setup. At the very least, having a
packet trace with source and dest IP is _very_ helpful. Ethereal is
quite nice.
Oops, another one -- be sure to flush the arp cache as you make
changes and retest.
If these don't advance your quest, get back with info:
-- physical network layout
-- what _precisely_ are you trying to achieve (multiple items OK;-) ?
-- what specifically have you tried, did it help or hurt?
-- any clues from error messages/sniffer log
-- when pinging or tracerouting, give us a cut-n-paste of the
commandline and its output (descriptions are never as good)
hth,
prg
email above disabled