OSPF Multi-Area Configuration
In single-area OSPF, every router holds a complete copy of the Link State Database (LSDB) for the entire network. As the network grows, this creates problems — every topology change triggers an SPF recalculation on every router, LSDB memory consumption grows, and routing tables become large. Multi-area OSPF solves this by dividing the network into smaller, manageable areas. Each area maintains its own LSDB, runs SPF independently, and only summarised route information crosses area boundaries. For the conceptual overview see OSPF Overview.
The backbone area (Area 0) is the mandatory core — all other areas must connect to it. Routers that sit on the boundary between two areas are called ABRs (Area Border Routers). They maintain one LSDB per connected area and generate summary LSAs that carry route information between areas. This lab builds a three-area topology, configures ABRs, examines LSA types, and implements inter-area route summarization.
Before starting, complete OSPF Single-Area Configuration to understand Router IDs, Hello parameters, neighbor states, and the routing fundamentals that underpin OSPF.
1. Multi-Area OSPF — Key Concepts
Router Roles in Multi-Area OSPF
| Role | Abbreviation | Description | LSDB Held |
|---|---|---|---|
| Internal Router | IR | All interfaces in a single area — only knows that area's topology | One area only |
| Area Border Router | ABR | Interfaces in two or more areas including Area 0 — connects non-backbone areas to the backbone | One LSDB per connected area |
| Backbone Router | BR | At least one interface in Area 0 — any router connected to the backbone | Area 0 LSDB (+ other areas if ABR) |
| AS Boundary Router | ASBR | Redistributes routes from outside OSPF (e.g., static routes, BGP) into the OSPF domain | One or more areas + external routes |
Why Multi-Area Helps
| Problem in Single Area | Multi-Area Solution |
|---|---|
| Every topology change triggers SPF on all routers | SPF runs per area — changes in Area 1 do not trigger SPF in Area 2 |
| LSDB grows with every router and link added | Each area has a smaller independent LSDB |
| Routing tables grow with every network | ABRs can summarise many specific routes into one summary route |
| Instability in one part propagates everywhere | Instability is contained within its area — other areas only see summary changes |
2. OSPF LSA Types
OSPF communicates topology and route information using Link State Advertisements (LSAs). Different LSA types carry different information and travel different distances in the network. Understanding LSA types is essential for the CCNA exam and for troubleshooting what routes appear where:
| LSA Type | Name | Generated By | Describes | Scope | Route Code |
|---|---|---|---|---|---|
| Type 1 | Router LSA | Every router | The router's own interfaces and their states | Stays within originating area | O |
| Type 2 | Network LSA | DR on multi-access segments | All routers on a multi-access segment (e.g., Ethernet) | Stays within originating area | O |
| Type 3 | Summary LSA | ABR | Networks from one area advertised into another area | Crosses area boundaries — flooded into adjacent areas | O IA |
| Type 4 | ASBR Summary LSA | ABR | How to reach an ASBR in another area | Crosses area boundaries | — |
| Type 5 | External LSA | ASBR | Routes redistributed from outside OSPF (static, BGP, EIGRP) | Entire OSPF domain (all areas) | O E1 / O E2 |
| Type 7 | NSSA External LSA | ASBR inside NSSA | External routes in a Not-So-Stubby Area — converted to Type 5 by ABR | Within NSSA only — converted at ABR | O N1 / O N2 |
Route Codes in show ip route
| Code | Meaning | LSA Source | AD |
|---|---|---|---|
| O | OSPF intra-area route — same area as the router | Type 1 / Type 2 | 110 |
| O IA | OSPF inter-area route — from a different area via ABR Type 3 LSA | Type 3 | 110 |
| O E1 | OSPF External Type 1 — metric increases as it crosses routers | Type 5 | 110 |
| O E2 | OSPF External Type 2 — metric stays fixed (default for redistribution) | Type 5 | 110 |
| O*E2 | Default route redistributed via OSPF (Gateway of Last Resort) | Type 5 | 110 |
3. Lab Topology & IP Addressing
Three areas: Area 1 (left), Area 0 (backbone centre), Area 2 (right). R2 is the ABR between Area 1 and Area 0. R3 is the ABR between Area 0 and Area 2.
┌───────────────────────────────────────────────────────────────────────────┐ │ Area 1 Area 0 (Backbone) Area 2 │ │ │ │ 192.168.1.0/24 10.0.12.0/30 10.0.23.0/30 192.168.3.0/24 │ │ 192.168.2.0/24 192.168.4.0/24 │ │ | | | | │ │ [R1]──Gi0/1────────[R2]──Gi0/1────[R3]──Gi0/1────[R4] │ │ RID:1.1.1.1 Gi0/0 RID:2.2.2.2 Gi0/0 RID:3.3.3.3 RID:4.4.4.4 │ │ │ │ R1: Area 1 only R2: ABR R3: ABR R4: Area 2 only │ │ (Internal Router) (Area 1+0) (Area 0+2) (Internal Router) │ └───────────────────────────────────────────────────────────────────────────┘
| Device | Interface | IP Address | OSPF Area | Role |
|---|---|---|---|---|
| NetsTuts_R1 | Gi0/0 | 192.168.1.1 /24 | Area 1 | LAN (passive) |
| NetsTuts_R1 | Gi0/1 | 192.168.2.1 /24 | Area 1 | LAN (passive) |
| NetsTuts_R1 | Gi0/2 | 10.0.12.1 /30 | Area 1 | Link to R2 |
| NetsTuts_R2 | Gi0/0 | 10.0.12.2 /30 | Area 1 | Link to R1 (ABR — Area 1 side) |
| NetsTuts_R2 | Gi0/1 | 10.0.23.1 /30 | Area 0 | Link to R3 (ABR — Area 0 side) |
| NetsTuts_R3 | Gi0/0 | 10.0.23.2 /30 | Area 0 | Link to R2 (ABR — Area 0 side) |
| NetsTuts_R3 | Gi0/1 | 10.0.34.1 /30 | Area 2 | Link to R4 (ABR — Area 2 side) |
| NetsTuts_R4 | Gi0/0 | 10.0.34.2 /30 | Area 2 | Link to R3 |
| NetsTuts_R4 | Gi0/1 | 192.168.3.1 /24 | Area 2 | LAN (passive) |
| NetsTuts_R4 | Gi0/2 | 192.168.4.1 /24 | Area 2 | LAN (passive) |
4. Step 1 — Configure R1 (Area 1 Internal Router)
R1 is a pure Area 1 internal router — all interfaces belong to Area 1. LAN interfaces are set passive; only the inter-router link to R2 participates in Hello exchange.
NetsTuts_R1>en NetsTuts_R1#conf t Enter configuration commands, one per line. End with CNTL/Z. NetsTuts_R1(config)#router ospf 1 NetsTuts_R1(config-router)#router-id 1.1.1.1 NetsTuts_R1(config-router)#auto-cost reference-bandwidth 1000 ! ── All R1 interfaces go into Area 1 ───────────────────── NetsTuts_R1(config-router)#network 192.168.1.0 0.0.0.255 area 1 NetsTuts_R1(config-router)#network 192.168.2.0 0.0.0.255 area 1 NetsTuts_R1(config-router)#network 10.0.12.0 0.0.0.3 area 1 ! ── Suppress Hellos on LAN interfaces ──────────────────── NetsTuts_R1(config-router)#passive-interface GigabitEthernet0/0 NetsTuts_R1(config-router)#passive-interface GigabitEthernet0/1 NetsTuts_R1(config-router)#exit NetsTuts_R1(config)#end NetsTuts_R1#wr Building configuration... [OK] NetsTuts_R1#
5. Step 2 — Configure R2 (ABR — Area 1 and Area 0)
R2 is the ABR — its Gi0/0 interface is in Area 1 and its
Gi0/1 interface is in Area 0. The OSPF network command places
each interface into its correct area. R2 will maintain two separate LSDBs
and generate Type 3 Summary LSAs in both directions.
NetsTuts_R2>en NetsTuts_R2#conf t Enter configuration commands, one per line. End with CNTL/Z. NetsTuts_R2(config)#router ospf 1 NetsTuts_R2(config-router)#router-id 2.2.2.2 NetsTuts_R2(config-router)#auto-cost reference-bandwidth 1000 ! ── Gi0/0 faces Area 1 (toward R1) ─────────────────────── NetsTuts_R2(config-router)#network 10.0.12.0 0.0.0.3 area 1 ! ── Gi0/1 faces Area 0 (toward R3) ─────────────────────── NetsTuts_R2(config-router)#network 10.0.23.0 0.0.0.3 area 0 NetsTuts_R2(config-router)#exit NetsTuts_R2(config)#end NetsTuts_R2#wr Building configuration... [OK] NetsTuts_R2# %OSPF-5-ADJCHG: Process 1, Nbr 1.1.1.1 on GigabitEthernet0/0 from LOADING to FULL, Loading Done
What an ABR Does Automatically
| Action | Direction | LSA Type Generated |
|---|---|---|
| Advertises Area 1 networks into Area 0 | Area 1 → Area 0 | Type 3 Summary LSA (one per Area 1 prefix) |
| Advertises Area 0 and other area networks into Area 1 | Area 0 → Area 1 | Type 3 Summary LSA (one per remote prefix) |
| Maintains separate LSDB for each connected area | Both | Does not flood Type 1/2 LSAs between areas |
6. Step 3 — Configure R3 (ABR — Area 0 and Area 2)
NetsTuts_R3>en NetsTuts_R3#conf t Enter configuration commands, one per line. End with CNTL/Z. NetsTuts_R3(config)#router ospf 1 NetsTuts_R3(config-router)#router-id 3.3.3.3 NetsTuts_R3(config-router)#auto-cost reference-bandwidth 1000 ! ── Gi0/0 faces Area 0 (toward R2) ─────────────────────── NetsTuts_R3(config-router)#network 10.0.23.0 0.0.0.3 area 0 ! ── Gi0/1 faces Area 2 (toward R4) ─────────────────────── NetsTuts_R3(config-router)#network 10.0.34.0 0.0.0.3 area 2 NetsTuts_R3(config-router)#exit NetsTuts_R3(config)#end NetsTuts_R3#wr Building configuration... [OK] NetsTuts_R3# %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on GigabitEthernet0/0 from LOADING to FULL, Loading Done
7. Step 4 — Configure R4 (Area 2 Internal Router)
NetsTuts_R4>en NetsTuts_R4#conf t Enter configuration commands, one per line. End with CNTL/Z. NetsTuts_R4(config)#router ospf 1 NetsTuts_R4(config-router)#router-id 4.4.4.4 NetsTuts_R4(config-router)#auto-cost reference-bandwidth 1000 ! ── All R4 interfaces go into Area 2 ───────────────────── NetsTuts_R4(config-router)#network 192.168.3.0 0.0.0.255 area 2 NetsTuts_R4(config-router)#network 192.168.4.0 0.0.0.255 area 2 NetsTuts_R4(config-router)#network 10.0.34.0 0.0.0.3 area 2 ! ── Suppress Hellos on LAN interfaces ──────────────────── NetsTuts_R4(config-router)#passive-interface GigabitEthernet0/1 NetsTuts_R4(config-router)#passive-interface GigabitEthernet0/2 NetsTuts_R4(config-router)#exit NetsTuts_R4(config)#end NetsTuts_R4#wr Building configuration... [OK] NetsTuts_R4# %OSPF-5-ADJCHG: Process 1, Nbr 3.3.3.3 on GigabitEthernet0/0 from LOADING to FULL, Loading Done
8. Step 5 — Inter-Area Route Summarization on the ABR
Without summarization, R2 generates one Type 3 Summary LSA for every specific network in Area 1 — so 192.168.1.0/24 and 192.168.2.0/24 each create a separate LSA flooding into Area 0 and Area 2. Summarization replaces these individual LSAs with a single summary covering both: 192.168.0.0/22 encompasses 192.168.0.x through 192.168.3.x. For a broader look at route summarization techniques, see Route Summarization & Aggregation.
For this topology, 192.168.1.0/24 and 192.168.2.0/24 can be summarized as
192.168.0.0/22 (covers .0/24 through .3/24). Summarization
is configured on the ABR using area [source-area] range:
! ── On R2: Summarise Area 1 routes advertised into Area 0 ─ NetsTuts_R2(config)#router ospf 1 NetsTuts_R2(config-router)#area 1 range 192.168.0.0 255.255.252.0 NetsTuts_R2(config-router)#end NetsTuts_R2#wr Building configuration... [OK] NetsTuts_R2#
Summarize Area 2 on R3 as well
! ── On R3: Summarise Area 2 routes advertised into Area 0 ─ NetsTuts_R3(config)#router ospf 1 NetsTuts_R3(config-router)#area 2 range 192.168.2.0 255.255.254.0 NetsTuts_R3(config-router)#end NetsTuts_R3#wr Building configuration... [OK] NetsTuts_R3#
area range Command Breakdown
| Element | Example | Meaning |
|---|---|---|
area 1 |
area 1 range ... |
The source area whose routes will be summarised |
range [network] [mask] |
range 192.168.0.0 255.255.252.0 |
The summary address and mask — all specific routes that fall within this range are suppressed and replaced by this single entry |
not-advertise (optional) |
area 1 range 192.168.0.0 255.255.252.0 not-advertise |
Suppresses the summary entirely — useful to hide a set of networks from other areas |
cost [value] (optional) |
area 1 range 192.168.0.0 255.255.252.0 cost 10 |
Manually sets the metric of the summary LSA instead of using the highest component cost |
area range command must be configured on the ABR that
connects the source area to Area 0. Configuring it on an internal router
has no effect. Also, the summary must accurately cover all the specific
routes — a mis-sized summary can cause routing black holes for addresses
in the summary range that do not actually exist.
9. Verification
show ip ospf neighbor — All Adjacencies (R2)
NetsTuts_R2#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 1.1.1.1 1 FULL/DR 00:00:38 10.0.12.1 GigabitEthernet0/0 3.3.3.3 1 FULL/DR 00:00:32 10.0.23.2 GigabitEthernet0/1
show ip route ospf — R1 sees Inter-Area Routes (O IA)
NetsTuts_R1#show ip route ospf Codes: O - OSPF, IA - Inter Area O IA 10.0.23.0/30 [110/2] via 10.0.12.2, GigabitEthernet0/2 O IA 10.0.34.0/30 [110/3] via 10.0.12.2, GigabitEthernet0/2 O IA 192.168.2.0/23 [110/3] via 10.0.12.2, GigabitEthernet0/2
show ip route ospf — R4 sees Summarized Area 1 (O IA)
NetsTuts_R4#show ip route ospf Codes: O - OSPF, IA - Inter Area O IA 10.0.12.0/30 [110/3] via 10.0.34.1, GigabitEthernet0/0 O IA 10.0.23.0/30 [110/2] via 10.0.34.1, GigabitEthernet0/0 O IA 192.168.0.0/22 [110/3] via 10.0.34.1, GigabitEthernet0/0
show ip ospf database — Multiple LSA Types (R2 ABR)
NetsTuts_R2#show ip ospf database
OSPF Router with ID (2.2.2.2) (Process ID 1)
Router Link States (Area 1)
Link ID ADV Router Age Seq# Checksum Link count
1.1.1.1 1.1.1.1 312 0x80000005 0x00A312 3
2.2.2.2 2.2.2.2 305 0x80000004 0x00B213 1
Summary Net Link States (Area 1)
Link ID ADV Router Age Seq# Checksum
10.0.23.0 2.2.2.2 300 0x80000002 0x00C120
192.168.2.0 2.2.2.2 298 0x80000002 0x00D234
Router Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Link count
2.2.2.2 2.2.2.2 305 0x80000003 0x00E312 1
3.3.3.3 3.3.3.3 301 0x80000003 0x00F214 1
Summary Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
192.168.0.0 2.2.2.2 295 0x80000002 0x00A312
192.168.2.0 3.3.3.3 292 0x80000002 0x00B123
show ip ospf — Confirm ABR Role
NetsTuts_R2#show ip ospf
Routing Process "ospf 1" with ID 2.2.2.2
...
It is an area border router
Number of areas in this router is 2. 2 normal 0 stub 0 nssa
...
Area BACKBONE(0)
Number of interfaces in this area is 1 (0 passive)
Area 1
Number of interfaces in this area is 1 (0 passive)
Verification Command Summary
| Command | What It Confirms | Run On |
|---|---|---|
show ip ospf neighbor |
All adjacencies and their state — first check for multi-area | All routers |
show ip route ospf |
O = intra-area, O IA = inter-area. Verify summary routes appear instead of specific routes | Internal routers (R1, R4) |
show ip ospf database |
Full LSDB — ABR shows separate sections for each area. Confirms Type 3 LSAs exist | ABRs (R2, R3) |
show ip ospf |
"It is an area border router" — confirms ABR role and number of areas | ABRs (R2, R3) |
show ip ospf interface brief |
Per-interface area assignment — confirm each interface is in the correct area | All routers |
show ip ospf database summary |
Only Type 3 Summary LSAs — useful to confirm summarization is producing one entry | ABRs (R2, R3) |
10. Troubleshooting Multi-Area OSPF
| Problem | Symptom | Cause | Fix |
|---|---|---|---|
| Non-backbone area not connected to Area 0 | Routes from Area 1 never appear in Area 2 routing tables — O IA routes missing | Area 1 is not connected to Area 0 through an ABR — areas must all touch Area 0 | Ensure the ABR has one interface in Area 0 and one in the non-backbone area. Use virtual links as a temporary fix if direct connection is impossible. |
| Interface placed in wrong area | Adjacency forms but routes appear in wrong area — O routes instead of O IA or vice versa | network statement put the interface into the incorrect area |
Check show ip ospf interface brief on the ABR — verify each interface shows the correct area. Fix the network statement. |
| Summarization not working | Remote routers still see individual /24 routes instead of summary | area range command configured on wrong router (not ABR) or the summary range does not cover the specific routes |
Verify area range is on the ABR only. Check that the summary address and mask mathematically cover all specific routes using subnetting. Use show ip ospf database summary to confirm the summary LSA exists. |
| Routing black hole after summarization | Traffic to some addresses in the summary range is dropped | The summary range covers addresses that do not actually exist — packets match the summary but no specific route exists at the ABR for the actual destination | IOS automatically installs a Null0 discard route for the summary on the ABR to prevent routing loops. Verify the summary range only covers existing networks. |
| O IA routes missing on internal router | Internal router sees intra-area routes but no inter-area routes from other areas | ABR is not forming adjacency on one side — check both of the ABR's neighbor relationships | Run show ip ospf neighbor on the ABR — both adjacencies must be FULL. A missing adjacency on one side means no Type 3 LSAs can be generated for that direction. |
| Duplicate Router IDs across areas | Unstable adjacencies — log shows "Duplicate Router ID" error | Two routers in the OSPF domain (even in different areas) have the same RID | Router IDs must be unique across the entire OSPF domain — not just within an area. Change the duplicate with router-id and run clear ip ospf process. |
Key Points & Exam Tips
- All OSPF areas must connect to Area 0 (the backbone). Traffic between two non-backbone areas must pass through Area 0 via ABRs — there are no direct inter-area shortcuts.
- An ABR has interfaces in two or more areas, including Area 0. It maintains a separate LSDB for each connected area and generates Type 3 Summary LSAs to carry route information between areas.
- Type 1 and Type 2 LSAs never cross area boundaries — they stay within the originating area. Only Type 3, 4, and 5 LSAs cross boundaries.
- Routes from the same area appear as O (intra-area). Routes from a different area appear as O IA (inter-area) — generated by Type 3 LSAs from the ABR.
- Routes redistributed from outside OSPF appear as O E2 (default) or O E1 — generated by Type 5 LSAs from an ASBR.
- Summarization is configured on the ABR with
area [source-area] range [network] [mask]. It reduces LSA flooding, shrinks routing tables, and contains instability within areas. Understanding subnet masks is essential for calculating correct summary ranges. - IOS automatically creates a Null0 discard route on the ABR for each configured summary — this prevents routing loops when the summary range includes non-existent addresses.
show ip ospfon an ABR explicitly states "It is an area border router" — use this to quickly confirm the ABR role is active.- Router IDs must be unique across the entire OSPF domain — not just within an area. Duplicate RIDs cause instability even across area boundaries.
- The CCNA exam distinguishes O, O IA, O E1, and O E2 — know which LSA type generates each code and in which direction LSAs flow between areas.
default-information originate command.
For MPLS backbones that rely on OSPF as the underlying IGP, see
MPLS Fundamentals.
For comparing OSPF with another link-state protocol, see
OSPF Single-Area Configuration
and the OSPF Overview.