Thursday, February 20, 2020

EIGRP Auto-Summary

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:
EIGRP Auto Summary Example
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 1.1.1.0 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.
Depending on your IOS version, auto-summary might be enabled or disabled by default.
Let’s take a look at the routing table of R2:
R2#show ip route eigrp 
D    1.0.0.0/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 1.0.0.0 /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 1.1.1.0 /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:
EIGRP Discontigious Network
Above I have added R3 behind R2 and it has subnet 1.3.3.0 /24 on a loopback interface. When we enable auto-summary on R3 then it will advertise subnet 1.3.3.0 /24 as the classful network 1.0.0.0 /8. This will be a problem since R2 will think it has two equal paths to reach 1.0.0.0 /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 1.3.3.0 0.0.0.255
Above I enabled EIGRP on the link between R2 and R3 and we use the network command to advertise 1.3.3.0 /24, auto-summary is enabled on R3. Let’s see what R2 thinks of this:
R2#show ip route eigrp 
D    1.0.0.0/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 1.0.0.0 /8 through R1 or R3. This will cause issues…when R2 wants to reach 1.1.1.0 /24 then it might send packets to R3 and when it tries to reach 1.3.3.0 /24 then they might end up at R1.
How can we solve this? There are two solutions:
  • Get rid of the discontiguous network.
  • Disable auto-summarization.
For example we could use subnet 3.3.3.0 /24 on R3 which will be summarized to 3.0.0.0 /8. Make sure you don’t end up with two opposite routers advertising the same summary route. The most simple solution is to disable auto-summarization. Let’s try this:
R1(config)#router eigrp 1
R1(config-router)#no auto-summary
R3(config)#router eigrp 1
R3(config-router)#no auto-summary 
Now take a look at the routing table of R2:
R2#show ip route eigrp 
     1.0.0.0/24 is subnetted, 2 subnets
D       1.3.3.0 [90/409600] via 192.168.23.3, 00:00:38, FastEthernet0/1
D       1.1.1.0 [90/409600] via 192.168.12.1, 00:00:34, FastEthernet0/0
     172.16.0.0/24 is subnetted, 1 subnets
D       172.16.1.0 [90/409600] via 192.168.12.1, 00:00:34, FastEthernet0/0
R1 and R3 are now advertising the subnets as they were configured on the loopback interfaces. R2 will now always select the right path.
Before we wrap up this lesson, there’s one more thing I’d like to show you. I’ll use the same three routers:
EIGRP Auto Summary Not Directly Connected
The configuration however is slightly different. R1 is advertising 1.1.1.0 /24 in EIGRP and R2 will be the only router that uses auto-summary:
R1#show running-config | section eigrp
router eigrp 1
 network 1.1.1.0 0.0.0.255
 network 192.168.12.0
 no auto-summary
R2#show running-config | section eigrp
router eigrp 1
 network 192.168.12.0
 network 192.168.23.0
 auto-summary
R3#show running-config | section eigrp
router eigrp 1
 network 192.168.23.0
 no auto-summary
R2 will learn 1.1.1.0 /24 from R1:
R2#show ip route eigrp 
     1.0.0.0/24 is subnetted, 1 subnets
D       1.1.1.0 [90/409600] via 192.168.12.1, 00:01:50, FastEthernet0/0
And R3 will learn 1.1.1.0 /24 from R2:
R3#show ip route eigrp 
D    192.168.12.0/24 [90/307200] via 192.168.23.2, 00:01:46, FastEthernet0/0
     1.0.0.0/24 is subnetted, 2 subnets
D       1.1.1.0 [90/435200] via 192.168.23.2, 00:01:46, FastEthernet0/0
Take a close look though…even though R2 is configured with auto-summary, it will not summarize the 1.1.1.0 /24 subnet to the classful network 1.0.0.0 /8. This is because EIGRP auto-summary will only create summary routes for directly connected networks, not for routes you learn from other EIGRP routers.
hostname R1
!
interface Loopback0
 ip address 1.1.1.1 255.255.255.0
!
interface Loopback1
 ip address 172.16.1.1 255.255.255.0
!
interface FastEthernet0/0
 ip address 192.168.12.1 255.255.255.0
!
router eigrp 1
 network 1.1.1.0 0.0.0.255
 network 172.16.1.0 0.0.0.255
 network 192.168.12.0
 auto-summary
!
end
hostname R2
!
interface FastEthernet0/0
 ip address 192.168.12.2 255.255.255.0
!
interface FastEthernet1/0
 ip address 192.168.23.2 255.255.255.0
!
router eigrp 1
 network 192.168.23.0
!
end
hostname R3
!
interface Loopback0
 ip address 1.3.3.1 255.255.255.0
!
interface FastEthernet0/0
 ip address 192.168.23.3 255.255.255.0
!
router eigrp 1
 auto-summary
 network 192.168.23.0
 network 1.3.3.0 0.0.0.255
!
end
I hope this lesson has been useful, if you have any questions feel free to leave a comment!

No comments:

Post a Comment