RIPv2, isn’t that hard at all.
There are a few enhancements from RIPv1:
- Authentication: clear text (by default) or MD5
- Subnet masks: RIPv2 is classless
- Next-Hop IP address: to avoid routing loops (used in networks with multiple routing protocols)
- Updates are send by multicast, to IP 126.96.36.199
RIPv2 is compatible with RIPv1. Switching between accepting/sending v1 or v2 updates is possible with the following interface commands:
Router(config-if)#ip rip send version 1 Router(config-if)#ip rip receive version 1 Router(config-if)#ip rip send version 1 2
By default, Cisco IOS rejects the configuration of a subnet with all 0’s even if a classless routing protocol is being used. 172.16.0.0/16 is the network, 172.16.0.0/24 is a all-0’s network. To override this, the following command is used (enabled by default):
Limitations of RIPv2 are:
Lack of alternative routes
The router has to wait untill the next routing update period for receiving a new route after the last one was faulty.
Couting to infinity
To solve this, RIP relies on split horizon, route poisoning and holddown mechanisms
Max 15 hops (hopcount)
MD5 configuration of authentication in the RIP process should always be done with a key-chain even if there’s only 1 key configured!
Router(config)#key chain ripchain Router(config-keychain)#key 1 Router(config-keychain-key)#key-string ripsecret Router(config-keychain-key)#interface fastethernet 0/0 Router(config-if)#ip rip authentication key-chain ripchain router(config-if)#ip rip authentication mode md5
On last impartant part: auto summary. This is enabled by default. To allow RIP to advertise routes with subnet, use the following router-RIP command:
Router(config)#router rip Router(config-router)#version 2 Router(config-router)#no auto-summary