Let's call:
$IP1 = linux ip on first provider's net
$P1_NET = first provider's net
$P1 = default gateway ip on first provider's net
$IF1 = ethernet interface wired with first provider's net
I have tried these commands:
ip route add $P1_NET dev $IF1 src $IP1 table 1
ip route add default via $P1 table 1
ip route add $P2_NET dev $IF2 src $IP2 table 2
ip route add default via $P2 table 2
ip route del default
ip route add default via $P1
ip rule add from $IP1 table 1
ip rule add from $IP2 table 2
Now, if I ping $IP1 or ping $IP2 I get correct answer from outside but
not from the LAN.
If I substitute the 7th line with this line:
ip rule add from $IP1 to 82.0.0.0/8 lookup 2
than ping works from LAN and from outside but obviously it works only
from external ip like 82.a.b.c.
Extending this for all valid addresses I would have to write a lot of rules:
ip rule add from $IP1 to 1.0.0.0/8 lookup 2
ip rule add from $IP1 to 2.0.0.0/8 lookup 2
ip rule add from $IP1 to 3.0.0.0/8 lookup 2
...
excluding 192.168.0.0/16, and than the same for $IP2. It seems me not
very good. :-)
Have you got any suggestion to solve the problem?
Thank you very much.
> Hello all. I have a routing problem.
> I have a linux machine (OpenSuSE) that acts as a gateway for the LAN and
> is connected to internet using two different internet providers.
> I want to ping this linux machine from the lan and from outside, using
> both public ip (even from the lan, I have to call linux using external
> public ip and not the internal lan ip).
dont know if that will work at all, but as it is a very network related
problem, you may want to try an different newsgroup:
de.comp.os.unix.networking.misc.
HTH
Ax
> dont know if that will work at all, but as it is a very network related
> problem, you may want to try an different newsgroup:
> de.comp.os.unix.networking.misc.
Thank you for your answer.
At last, it works (for interested people, see on
comp.os.linux.networking, thread with the same name).