There are times when it may seen that EIGRP is either not advertising the networks that it has been configured to advertise, or is advertising networks that it has not been configured to advertise. For the most part, such issues are typically due to router and switch misconfigurations. There are several reasons why EIGRP might not advertise a network that is has been configured to advertise. Some of these reasons include:
- Distribute Lists
- Split Horizon
- Summarization
Incorrectly configured distribute lists are one reason why EIGRP might not advertise a network that it has been configured to advertise. When configuring distribute lists, ensure that all networks that should be advertised are permitted by the referenced IP ACL or IP Prefix List.
Another common issue pertaining to network advertisement when using EIGRP is the default behavior of split horizon. Split horizon is a Distance Vector protocol feature that mandates that routing information cannot be sent back out of the same interface through which it was received. This prevents the re-advertising of information back to the source from which it was learned, effectively preventing routing loops. This concept is illustrated in Figure 5-3:
Fig. 5-3. EIGRP Split Horizon
The topology in Figure 5-3 illustrates a classic hub and spoke network, with router HQ as the hub router and routers S1 and S2 as the two spoke routers. On the Frame Relay WAN, each spoke router has a single DLCI provisioned between itself and the HQ router in a partial mesh topology. By default, EIGRP split horizon is enabled for WAN interfaces connected to packet switched networks, such as Frame Relay. This means that the HQ router will not advertise routing information learned on Serial0/0 out of the same interface.
The effect of this default behavior is that the HQ router will not advertise the 10.1.1.0/24 prefix received from S1 to S2 because the route is received via the Serial0/0 interface and the split horizon feature prevents the router from advertising information learned on that interface back out the same interface. The same is also applicable for the 10.2.2.0/24 prefix the HQ router receives from S2. The recommended solution for this problem would be to disable the spilt horizon feature on the WAN interface using the no ip split-horizon eigrp [asn] interface configuration command on the HQ router.
By default automatic summarization at the Classful boundary is enabled for EIGRP. This can be validated using the show ip protocols command. In addition to automatic summarization, EIGRP also supports manual summarization at the interface level. Regardless of the method implemented, summarization prevents the more specific route entries that are encompassed by the summary from being advertised to neighbor routers. If route summarization is incorrectly configured, it may appear that EIGRP is not advertising certain networks. For example, consider the basic network topology that is illustrated in Figure 5-4:
Fig. 5-4. EIGRP Summarization
Referencing Figure 5-4, all routers reside in EIGRP autonomous system 150. R2 is advertising the 10.1.1.0/24, 10.1.2.0/24, and 10.1.3.0/24 subnets to R1 via EIGRP. R1, which also has an interface assigned to the 10.1.0.0/24 subnet, should in turn advertise these subnets to R3. The EIGRP configuration on router R2 has been implemented as follows:
| R2(config)#router eigrp 150 R2(config-router)#network 10.1.1.0 0.0.0.255 R2(config-router)#network 10.1.2.0 0.0.0.255 R2(config-router)#network 10.1.3.0 0.0.0.255 R2(config-router)#network 172.16.1.0 0.0.0.3 R2(config-router)#no auto-summary R2(config-router)#exit |
The EIGRP configuration on R1 has been implemented as follows:
| R1(config)#router eigrp 150 R1(config-router)#network 10.1.0.0 0.0.0.255 R1(config-router)#network 172.16.0.0 0.0.0.3 R1(config-router)#network 172.16.1.0 0.0.0.3 R1(config-router)#exit |
And finally, the EIGRP configuration on R3 has been implemented as follows:
| R3(config)#router eigrp 150 R3(config-router)#network 172.16.0.0 0.0.0.3 R3(config-router)#no auto-summary R3(config-router)#exit |
Following this configuration, the routing table on R2 shows the following entries:
| R2#show ip route eigrp 172.16.0.0/30 is subnetted, 2 subnets D 172.16.0.0 [90/2172416] via 172.16.1.1, 00:02:38, FastEthernet0/0 10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks D 10.0.0.0/8 [90/156160] via 172.16.1.1, 00:00:36, FastEthernet0/0 |
The routing table on R1 shows the following entries:
| R1#show ip route eigrp 172.16.0.0/16 is variably subnetted, 3 subnets, 2 masks D 172.16.0.0/16 is a summary, 00:01:01, Null0 10.0.0.0/8 is variably subnetted, 6 subnets, 2 masks D 10.1.3.0/24 [90/156160] via 172.16.1.2, 00:21:01, FastEthernet0/0 D 10.3.0.0/24 [90/2297856] via 172.16.0.2, 00:00:39, Serial0/0 D 10.1.2.0/24 [90/156160] via 172.16.1.2, 00:21:01, FastEthernet0/0 D 10.1.1.0/24 [90/156160] via 172.16.1.2, 00:21:01, FastEthernet0/0 D 10.0.0.0/8 is a summary, 00:01:01, Null0 |
And finally, the routing table on R3 shows the following entries:
| R3#show ip route eigrp 172.16.0.0/30 is subnetted, 2 subnets D 172.16.1.0 [90/2172416] via 172.16.0.1, 00:21:21, Serial0/0 10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks D 10.0.0.0/8 [90/2297856] via 172.16.0.1, 00:01:15, Serial0/0 |
Because summarization is enabled on R1, it appears that the EIGRP is no longer advertising the specific subnets encompassed by the 10.0.0.0/8 summary. To allow the specific subnets to be advertised via EIGRP, automatic summarization should be disabled on R1 as illustrated below:
| R1(config)#router eigrp 150 R1(config-router)#no auto-summary R1(config-router)#exit |
Following this, the routing table on R3 would show the following route entries:
| R3#show ip route eigrp 172.16.0.0/30 is subnetted, 2 subnets D 172.16.1.0 [90/2172416] via 172.16.0.1, 00:00:09, Serial0/0 10.0.0.0/24 is subnetted, 5 subnets D 10.1.3.0 [90/2300416] via 172.16.0.1, 00:00:09, Serial0/0 D 10.1.2.0 [90/2300416] via 172.16.0.1, 00:00:09, Serial0/0 D 10.1.1.0 [90/2300416] via 172.16.0.1, 00:00:09, Serial0/0 D 10.1.0.0 [90/2297856] via 172.16.0.1, 00:00:09, Serial0/0 |
The same would also be applicable to R2 which would now show the specific entries for the 10.1.0.0/24 and 10.3.0.0/24 subnets as follows:
| R2#show ip route eigrp 172.16.0.0/30 is subnetted, 2 subnets D 172.16.0.0 [90/2172416] via 172.16.1.1, 00:00:10, FastEthernet0/0 10.0.0.0/24 is subnetted, 5 subnets D 10.3.0.0 [90/2300416] via 172.16.1.1, 00:00:10, FastEthernet0/0 D 10.1.0.0 [90/156160] via 172.16.1.1, 00:00:10, FastEthernet0/0 |

