High availabilityΒΆ

It is sometimes useful for High Availability purpose to have redundancy between two routers. In some cases, this redundancy MUST not be associated with load balancing, hence in case of router swap, the routing convergence time must be addressed. This will be done, without any modification to RIP itself, but rather, with configuration tuning.

The basic idea will be:

  • To share a common IP address on the shared link between the two routers (and possibly a common L2 address).
  • Elect a router on the link, that will be master and real owner of the IP address, the other being the slaves
  • On the Master, run RIP normally
  • On Slaves, run RIP in a passive mode on the shared link, so that routing table is already present in the router
  • When a router comes to Master state:
    • If no L2 adress is shared, send some gratuitous ARP to update ARP caches.
    • Change the RIP interface behaviour to active: it will then announce itself .

This can be achieved by using VRRP or any other proprietary protocol. In addition to IP address management the protocol will have to re-configure each RIP daemon on the fly, reproducing the same result as the following commands:

  1. On the Slave(s), be in passive mode

    rt_slave{conf:myconfig-rtg}router rip
    rt_slave{conf:myconfig-rtg-rip}passive-interface eth0_0
  2. On the (newly) Master, re-enable interface:

    rt_master{conf:myconfig-rtg}router rip
    rt_master{conf:myconfig-rtg-rip}delete passive-interface eth0_0