ccie blog

EIGRP Query Scoping Using Summarisation

I didn’t understand how this worked, so I took a practical example and put it in for testing. In the diagram below on R3 I’ll advertise a summary route to R5 and R6. From there we’ll shutdown interfaces to the 10.1.0.0/24 network, and see how the query scope is limited from this summarisation.

EIGRP Query Scoping Using Summarisation


Every device just has EIGRP enabled on every interface, and auto-summary turned off. I’ve provided the topology table of R6 so you can see that it has every network. I’ve also highlighted the 5 networks I intend to summarise on R3 outbound towards R5 and R6.

R6#show ip eigrp topology
IP-EIGRP Topology Table for AS(100)/ID(67.67.67.6)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status

P 10.2.0.0/24, 1 successors, FD is 286720
        via 36.36.36.3 (286720/284160), FastEthernet0/1
P 10.3.0.0/24, 1 successors, FD is 286720
        via 36.36.36.3 (286720/284160), FastEthernet0/1
P 10.1.0.0/24, 1 successors, FD is 289280
        via 36.36.36.3 (289280/286720), FastEthernet0/1
P 10.4.0.0/24, 1 successors, FD is 284160
        via 36.36.36.3 (284160/281600), FastEthernet0/1
P 10.5.0.0/24, 1 successors, FD is 284160
        via 36.36.36.3 (284160/281600), FastEthernet0/1
P 35.35.35.0/24, 1 successors, FD is 30720
        via 36.36.36.3 (30720/28160), FastEthernet0/1
P 36.36.36.0/24, 1 successors, FD is 28160
        via Connected, FastEthernet0/1
P 45.45.45.0/24, 2 successors, FD is 33280
        via 36.36.36.3 (33280/30720), FastEthernet0/1
        via 67.67.67.7 (33280/30720), FastEthernet0/0
P 47.47.47.0/24, 1 successors, FD is 30720
        via 67.67.67.7 (30720/28160), FastEthernet0/0
P 67.67.67.0/24, 1 successors, FD is 28160
        via Connected, FastEthernet0/0

Let’s take a scenario now and consider how the Query process works. If R8 and R9 both shutdown interfaces connecting to 10.1.0.0/24, we know R8 will send a query to R2 & likewise R9 will send a query to R1. This query get’s rippled up throughout the network until someone has an alternative path, or nobody knows an alternate path. In any case, each router sends a reply message back to person who sent the query message indicating whether they have an alternative path or not. If I do that now, we will see that this is the case.

R8(config)#int fa0/1
R8(config-if)#shut
!
!
R9#debug eigrp packets query reply
R9#conf t
R9(config)#int fa0/1
R9(config-if)#shut
9(config-if)#
*Mar  1 01:36:08.087: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 100: Neighbor 10.1.0.8 (FastEthernet0/1) is down: interface down
*Mar  1 01:36:08.099: EIGRP: Enqueueing QUERY on FastEthernet0/0 iidbQ un/rely 0/1 serno 44-46
*Mar  1 01:36:08.103: EIGRP: Enqueueing QUERY on FastEthernet0/0 nbr 10.3.0.1 iidbQ un/rely 0/0 peerQ un/rely 0/0 serno 44-46
*Mar  1 01:36:08.103: EIGRP: Sending QUERY on FastEthernet0/0

If we shoot over nearer to the end of the network, on R6, we should see that this router eventually gets the query and sends its own query message out of fa0/0 towards R7

R6#
*Mar  1 03:39:23.659: EIGRP: Received QUERY on FastEthernet0/1 nbr 36.36.36.3
*Mar  1 03:39:23.663:   AS 100, Flags 0x0, Seq 298/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
*Mar  1 03:39:23.675: EIGRP: Enqueueing QUERY on FastEthernet0/0 iidbQ un/rely 0/1 serno 140-140
*Mar  1 03:39:23.675: EIGRP: Enqueueing QUERY on FastEthernet0/1 iidbQ un/rely 0/1 serno 140-140
*Mar  1 03:39:23.679: EIGRP: Enqueueing QUERY on FastEthernet0/0 nbr 67.67.67.7 iidbQ un/rely 0/0 peerQ un/rely 0/0 serno 140-140
*Mar  1 03:39:23.679: EIGRP: Sending QUERY on FastEthernet0/0

Eventually replies are sent all the way back. So if we configure R3 to send a 10.0.0.0/13 summary towards R5 & R6, how does that limit the query scope? Well currently, every router has a specific /24 route in the EIGRP topology table to every network. So if a router loses both the successor and feasible successor to that a network (say the 10.1.0.0/24 network again), they put the route into active and starts sending queries to all their neighbors, as we demonstrated above. However, once the summary is sent to R5 and R6, they no longer have the 10.1.0.0/24 network in the topology table, so they can’t put it into active state. So when R3 sends a query to R5 and R6, they look in their topology table, see only a 10.0.0.0/13 route, and they immediately send a reply with a metric set to infinity (unreachable). I’ll put that summary on now (ill also enable interfaces to the 10.1.0.0/24 network behind the scenes).

R3(config)#int range fa0/0 - 1
R3(config-if-range)#ip summary-address eigrp 100 10.0.0.0 255.248.0.0

R6’s EIGRP topology table now looks like this.

R6#show ip eigrp  topology
IP-EIGRP Topology Table for AS(100)/ID(67.67.67.6)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status

P 10.0.0.0/13, 1 successors, FD is 284160
        via 36.36.36.3 (284160/281600), FastEthernet0/1
P 35.35.35.0/24, 1 successors, FD is 30720
        via 36.36.36.3 (30720/28160), FastEthernet0/1
P 36.36.36.0/24, 1 successors, FD is 28160
        via Connected, FastEthernet0/1
P 45.45.45.0/24, 2 successors, FD is 33280
        via 36.36.36.3 (33280/30720), FastEthernet0/1
        via 67.67.67.7 (33280/30720), FastEthernet0/0
P 47.47.47.0/24, 1 successors, FD is 30720
        via 67.67.67.7 (30720/28160), FastEthernet0/0
P 67.67.67.0/24, 1 successors, FD is 28160
        via Connected, FastEthernet0/0

So when I shutdown interfaces connecting to the 10.1.0.0/24 network again, we should see that R6 does not send a query (in the debugs) to R7 as it no longer has the specific 10.1.0.0/24 network in its topology table.

R6#
*Mar  1 03:57:11.963: EIGRP: Received QUERY on FastEthernet0/1 nbr 36.36.36.3
*Mar  1 03:57:11.967:   AS 100, Flags 0x0, Seq 327/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
*Mar  1 03:57:11.979: EIGRP: Enqueueing REPLY on FastEthernet0/1 nbr 36.36.36.3 iidbQ un/rely 0/1 peerQ un/rely 0/0 serno 149-149
*Mar  1 03:57:11.987: EIGRP: Sending REPLY on FastEthernet0/1 nbr 36.36.36.3
*Mar  1 03:57:11.987:   AS 100, Flags 0x0, Seq 163/327 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1 serno 149-149
R6#

As you can see, the debugs show that R6 didn’t make any queries of it’s own, it simply just sent a reply back (which inside of it set the metric to infinity).

2 Comments

TimothyJune 9th, 2014 at 2:17 pm

.

tnx for info.

CCIE CandidateJune 14th, 2017 at 7:14 am

thanks for sharing such a handy , simple and well-explained subject

Leave a comment

Your comment