EIGRP supports automatic summarization which as the name implies means that it will automatically advertise summary routes to other EIGRP routers.
How does it work? EIGRP is not going to automatically create the most optimal summary routes for you…
EIGRP will check if you have any subnets that fall within the range of your network command(s) and if so, it will advertise the classful A, B or C network to its neighbors. It will only summarize routes from subnets on its own interfaces, not the ones you learn from other routers.
Instead of advertising specific subnets we will only advertise class A,B or C networks. I’ll walk you through this, here’s the first topology we will use to demonstrate all of this:
Above we have two routers, R1 has two loopback interfaces with subnets that we’ll advertise in EIGRP.
Let’s configure EIGRP:
R1(config)#router eigrp 1 R1(config-router)#auto-summary R1(config-router)#network 192.168.12.0 R1(config-router)#network 18.104.22.168 0.0.0.255 R1(config-router)#network 172.16.1.0 0.0.0.255
R2(config)#router eigrp 1 R2(config-router)#network 192.168.12.0
In the configuration above I enabled auto-summary on R1 which is advertising its loopback interfaces.
Let’s take a look at the routing table of R2:
R2#show ip route eigrp D 22.214.171.124/8 [90/409600] via 192.168.12.1, 00:03:40, FastEthernet0/0 D 172.16.0.0/16 [90/409600] via 192.168.12.1, 00:00:26, FastEthernet0/0
Since auto-summary is enabled, R1 is advertising 126.96.36.199 /8 (class A network) and 172.16.0.0 /16 (class B network).
In our small network this will work fine. When R2 wants to reach 172.16.1.0 /24 or 188.8.131.52 /24 then it will send its packets towards R1. We will run into issues however when we add a third router that will advertise the same summary route. Here’s an example:
Above I have added R3 behind R2 and it has subnet 184.108.40.206 /24 on a loopback interface. When we enable auto-summary on R3 then it will advertise subnet 220.127.116.11 /24 as the classful network 18.104.22.168 /8. This will be a problem since R2 will think it has two equal paths to reach 22.214.171.124 /8. We call this a discontigious network. Let me demonstrate this:
R2(config)#router eigrp 1 R2(config-router)#network 192.168.23.0
R3(config)#router eigrp 1 R3(config-router)#auto-summary R3(config-router)#network 192.168.23.0 R3(config-router)#network 126.96.36.199 0.0.0.255
Above I enabled EIGRP on the link between R2 and R3 and we use the network command to advertise 188.8.131.52 /24, auto-summary is enabled on R3. Let’s see what R2 thinks of this:
R2#show ip route eigrp D 184.108.40.206/8 [90/409600] via 192.168.23.3, 00:00:03, FastEthernet0/1 [90/409600] via 192.168.12.1, 00:00:03, FastEthernet0/0 D 172.16.0.0/16 [90/409600] via 192.168.12.1, 00:00:13, FastEthernet0/0
R2 believes it can reach 220.127.116.11 /8 through R1 or R3. This will cause issues…when R2 wants to reach 18.104.22.168 /24 then it might send packets to R3 and when it tries to reach 22.214.171.124 /24 then they might end up at R1.
How can we solve this? There are two solutions: