[quagga-users 10863] RIP reservation scheme with loopback interface

Dainius Serplis d.serplis at lrtc.lt
Fri Jul 3 11:41:51 IST 2009


I have quite an interesting setup of zebra and ripd. We're trying to make
full reservation of links, thus the setup is as follows:

We have a server with two NIC's, which have some kind of local IP adresses
10.130.x.x and 10.130.y.y. These are connected to two different gateway
servers. Then there is a real IP address ( not local, for example
212.192.x.x). This IP is set on a loopback interface (so that it never goes
down, even one or two of the NIC cables is torn out).


We use a dynamic routing procol RIP and it works in the following way - in
case on link to the server dies it changes the default gateway to the other
server and announces it to server gateways. Thus we do not loose connection
of the loopback interface's IP. Howether there is one problem.


If I disconnect one interface's cable and then connect it back again RIP
announces server gateways, that this is the new link, on which the host can
be reached, but the host still has the other server as default gateway.


So, for example if I ping my server from an external IP it gets request to
eth0, but it tries to reply through interface eth1 (because the default
gateway is in the subnet of eth1). This causes the source address to be
wrong and finally I get ping timeout, because the host does not get reply
from the address which it sent the request to.


What is more strange, FreeBSD works a bit different way than Linux. Even
though the situation is the same (it gets a request on an interface, which
is not on the default gateway), it also sends the reply  through default
gateway (other interface than it received the request), but changes packet's
source address to the interface's it got the request to.


I want to overcome this problem in linux either by making it work like
FreeBSD or by changing something in routing, but currently ran out of ideas.


Maybe someone uses this kind of network reservation system for servers, how
is it possible to make it work properly?




-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.quagga.net/pipermail/quagga-users/attachments/20090703/448b5d17/attachment.html 

More information about the Quagga-users mailing list