Mental model
You have 16 sites. Each is 10.1.X.0/24 where X = 0 through 15. Without summarization, every router in your network learns 16 separate routes. With summarization, the router that owns those 16 sites advertises just one route: 10.1.0.0/20.
Why does this matter?
- Route table memory. A backbone router carrying 100k routes uses real CPU/RAM. Cutting that to 10k makes a tangible difference.
- Convergence speed. When a link flaps, every affected router runs SPF (OSPF) or diffusing-update (EIGRP). Fewer route entries = faster recompute.
- Blast radius. Without summarization, a flap of site 7’s link injects a withdrawal/readvertisement update across the entire network. With summarization, the flap stays local — the summary stays advertised as long as any child is up.
How to find the summary prefix
The mechanic is the reverse of subnetting. Find the longest prefix that covers all your specific routes.
For 10.1.0.0/24 through 10.1.15.0/24:
- Look at the third octet (the changing one):
0, 1, 2, … 15. - In binary:
00000000to00001111. The first 4 bits are constant (0000); the last 4 change. - The constant bits + the constant first two octets =
8 + 8 + 4 = 20bits. - Summary =
10.1.0.0/20.
Quick check: a /20 covers 2^(32-20) = 4096 addresses = 16 subnets of /24. ✓
Manual summarization on a static route
! Instead of 16 static routes...
R1(config)# ip route 10.1.0.0 255.255.255.0 10.0.0.2
R1(config)# ip route 10.1.1.0 255.255.255.0 10.0.0.2
! ...
R1(config)# ip route 10.1.15.0 255.255.255.0 10.0.0.2
! ...use one summary
R1(config)# ip route 10.1.0.0 255.255.240.0 10.0.0.2
OSPF summarization
OSPF summarizes only at area boundaries — at an ABR (between areas) or ASBR (redistribution into OSPF).
At an ABR (inter-area summarization) — summarize a chunk of Area 1’s prefixes before they leak into Area 0:
R1(config)# router ospf 1
R1(config-router)# area 1 range 10.1.0.0 255.255.240.0
At an ASBR (external summarization) — summarize redistributed routes:
R1(config-router)# summary-address 10.1.0.0 255.255.240.0
Note: OSPF intentionally does not summarize at arbitrary routers inside an area — all routers in an area must see the same intra-area LSDB.
EIGRP summarization
EIGRP can summarize anywhere — at any interface, on any router — which makes it more flexible than OSPF.
R1(config)# interface Gi0/1
R1(config-if)# ip summary-address eigrp 100 10.1.0.0 255.255.240.0
EIGRP automatically inserts a summary discard route (route to Null0) on the summarizing router. This prevents loops if a packet for 10.1.99.0/24 (which doesn’t exist) arrives — it hits Null0 and drops, instead of being forwarded back upstream.
The black-hole gotcha
This is the cost of summarization. Suppose R1 advertises 10.1.0.0/20 covering child sites 0-15. Site 7’s link goes down — R1 no longer has a path to 10.1.7.0/24. But R1 still advertises the summary 10.1.0.0/20 as long as any child is up.
Result: a packet for 10.1.7.0/24 travels across the network to R1, then R1 has no specific route → it hits the summary discard route (Null0) and drops.
This is better than a routing loop but still a black hole. Acceptable trade-off — but be aware.
Auto-summarization (EIGRP/RIP)
Historically, EIGRP and RIP auto-summarized at classful boundaries (/8, /16, /24) — usually wrong in modern networks. Always disable:
R1(config-router)# no auto-summary
In recent IOS this is the default. CCNA still tests the concept.
Verification
R1# show ip route ospf ! Look for "is a summary, 00:01:23, Null0"
R1# show ip route 10.1.0.0
R1# show ip eigrp topology summary
R1# show ip route 10.1.0.0 longer-prefixes ! See all child routes
Common mistakes
-
Overlapping summaries. Two routers each summarize half of the same range, but their summaries overlap or one covers the other. Longest-prefix-match wins, which may not be what you wanted.
-
Summarizing a non-contiguous range.
10.1.0.0/24and10.1.15.0/24(with 1-14 belonging to a different site) cannot be cleanly summarized — a/20would steal traffic for the in-between subnets. -
Forgetting
no auto-summaryon EIGRP/RIP in older lab IOS — auto-summary collapses your10.1.x.xadvertisements down to10.0.0.0/8, causing havoc. -
OSPF summarization at non-boundary routers. OSPF only summarizes at ABRs/ASBRs. Trying it on an internal router silently does nothing.
-
Math error on the mask.
/22covers 4 subnets,/21covers 8,/20covers 16,/19covers 32. Double-check by counting. -
Forgetting that the summary is null-routed. The Null0 discard route is a feature, not a bug — but if you wonder why pings for a non-existent child fail silently instead of returning ICMP unreachable, that’s it.
Lab to try tonight
- Build a 3-router topology in CML. R1 owns six
/24s:10.1.0.0/24through10.1.5.0/24. - Run OSPF area 1 between R1 and R2 (the ABR). Run area 0 between R2 and R3.
- Without summarization: on R3,
show ip routeshows 6 separateO IAentries. - Add
area 1 range 10.1.0.0 255.255.248.0on R2. - On R3:
show ip routeshows just oneO IA 10.1.0.0/21. Memory savings × scale = real impact. - Shut down R1’s
Lo1(10.1.1.0/24). Verify R3 still sees the summary; packets for10.1.1.5reach R1 and hit Null0. - Bonus: redo on EIGRP using
ip summary-address eigrp 100 ...on an interface. Compare behavior.
Cheat strip
| Concept | Plain English |
|---|---|
| Summarization | Replace many specific routes with one shorter prefix |
| Why bother | Smaller route tables, faster convergence, smaller blast radius |
| Static summary | One ip route with a shorter mask covering all children |
| OSPF where | At ABR (area X range) or ASBR (summary-address) — boundary routers only |
| EIGRP where | Anywhere (ip summary-address eigrp on an interface) |
| Discard route | EIGRP auto-installs a Null0 route to catch summary-but-no-child packets |
| Auto-summary | Always no auto-summary on EIGRP/RIP — classful summary is rarely what you want |
| Trade-off | Summarized prefix stays advertised even when some children are down → black-holing |