First things first, here's the diagram. This is performed using a set of four Cat3560s, enterprise licensed and wired in a redundant square topology to simulate a wide variety of topologies with minimal modification. At some point I'll post this setup as well, it was recommended in the book CCIE Routing and Switching v5.1, Bridging the Gap Between CCNP and CCIE
So this is actually pretty simple - as everything shouldbe Layer 3. We begin by configuring the Spines:
hostname rip-s0 interface Loopback0 ip address 10.6.0.240 255.255.255.255 interface FastEthernet0/22 no switchport ip address 10.6.240.2 255.255.255.254 interface FastEthernet0/24 no switchport ip address 10.6.240.0 255.255.255.254 hostname rip-s1 interface Loopback0 ip address 10.6.0.241 255.255.255.255 interface FastEthernet0/21 no switchport ip address 10.6.241.0 255.255.255.254 interface FastEthernet0/23 no switchport ip address 10.6.241.2 255.255.255.254
Some explanation here:
- We're using /31s to save address space as leaf-spine-leaf links are numerous and chew through address space like no tomorrow. If you'd like to know more about /31 usage, it's here.
- I focused on IP Address Management (IPAM) before the actual network design, assigning pre-planned prefixes. In this example, each switch has a virtual number, making it easy to pre-provision and organize network topologies for scale. Remember, this is all to handle frequent loop-free changes at scale - this is important!
- S0: 240 (10.6.240.x/31, 10.6.0.240)
- S1: 241 (10.6.241.x/31, 10.6.0.241)
- L0: 0 (10.6.0.0)
- L1: 1 (10.6.0.1)
- No switchport forces ports into Layer 3 mode.
hostname rip-l0 interface Loopback0 ip address 10.6.0.0 255.255.255.255 interface FastEthernet1/0/21 no switchport ip address 10.6.241.1 255.255.255.254 interface FastEthernet1/0/24 no switchport ip address 10.6.240.1 255.255.255.254 hostname rip-l1 interface Loopback0 ip address 10.6.0.1 255.255.255.255 interface FastEthernet0/22 no switchport ip address 10.6.240.3 255.255.255.254 interface FastEthernet0/23 no switchport ip address 10.6.241.3 255.255.255.254
Normally, you'd add interconnection on these devices, but loopbacks suffice for this example.
This doesn't support routing but is a functional base configuration - so let's turn on routing (all switches):
Poof! It's working!
ip routing router rip version 2 network 10.0.0.0 no auto-summary
rip-l0#show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 10.0.0.0/8 is variably subnetted, 8 subnets, 2 masks C 10.6.0.0/32 is directly connected, Loopback0 R 10.6.0.1/32 [120/2] via 10.6.241.0, 00:00:06, FastEthernet1/0/21 [120/2] via 10.6.240.0, 00:00:06, FastEthernet1/0/24 C 10.6.240.0/31 is directly connected, FastEthernet1/0/24 R 10.6.0.240/32 [120/1] via 10.6.240.0, 00:00:12, FastEthernet1/0/24 C 10.6.241.0/31 is directly connected, FastEthernet1/0/21 R 10.6.0.241/32 [120/1] via 10.6.241.0, 00:00:17, FastEthernet1/0/21 R 10.6.240.2/31 [120/1] via 10.6.240.0, 00:00:13, FastEthernet1/0/24 R 10.6.241.2/31 [120/1] via 10.6.241.0, 00:00:17, FastEthernet1/0/21
Oddly enough, RIPv2 isn't supposed to support ECMP, but appears to be doing so here.
Hopefully, this was enlightening - because in this case, this topology is incredibly simple when involving an IGP. There are a few downsides to RIP deployed in this manner:
- It's chatty and floods all the time, so all changes (network additions) will cause a reconvergence.
- Link-state failure won't trigger a path re-route
- It's RIP.