IP Split-horizon Command on CISCO Router/Switch

Command

IP Split-horizon

Use

Split Horizon protects against routing loops by not accepting routes on the same interface that a router sends out the updates out.
This normally has to be turned off in hub and spoke topologies to ensure full reachability.

Syntax

Router(config-if)#no ip split-horizon

Example

In this example, we will configure RIP on the frame-relay links.

R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#no auto
R1(config-router)#network 10.0.0.0
R1(config-router)#network 1.1.1.1
R3(config)#router rip
R3(config-router)#version 2
R3(config-router)#no auto
R3(config-router)#network 3.3.3.3
R3(config-router)#network 10.0.0.0
R4(config)#router rip
R4(config-router)#version 2
R4(config-router)#no auto
R4(config-router)#network 4.0.0.0
R4(config-router)#network 10.0.0.0

Looking at the routing table on R1 and R3 reveals that they are only learning R4’s routes.

R1(config)#do sh ip route rip
4.0.0.0/24 is subnetted, 1 subnets
R 4.4.4.0 [120/1] via 10.4.4.4, 00:00:08, Serial1/0
R3(config-if)#do show ip route rip
4.0.0.0/24 is subnetted, 1 subnets
R 4.4.4.0 [120/1] via 10.4.4.4, 00:00:03, Serial1/0

R4 receives both R1 and R3 routes just fine.

R4(config-router)#do show ip route rip
1.0.0.0/32 is subnetted, 3 subnets
R 1.1.1.1 [120/1] via 10.4.4.1, 00:00:11, Serial0/0
R 1.3.3.3 [120/1] via 10.4.4.1, 00:00:11, Serial0/0
R 1.2.2.2 [120/1] via 10.4.4.1, 00:00:11, Serial0/0
3.0.0.0/32 is subnetted, 1 subnets
R 3.3.3.3 [120/1] via 10.4.4.3, 00:00:08, Serial0/0

Now we will disable split-horizon on R4’s S0/0.

R4(config-router)#int s0/0
R4(config-if)#no ip split-horizon

And now we receive all routes.

R3(config-if)#do show ip route rip
1.0.0.0/32 is subnetted, 3 subnets
R 1.1.1.1 [120/2] via 10.4.4.1, 00:00:02, Serial1/0
R 1.3.3.3 [120/2] via 10.4.4.1, 00:00:02, Serial1/0
R 1.2.2.2 [120/2] via 10.4.4.1, 00:00:02, Serial1/0
4.0.0.0/24 is subnetted, 1 subnets
R 4.4.4.0 [120/1] via 10.4.4.4, 00:00:02, Serial1/0