In OSPF
design, STUB and NSSA areas can have multiple Area Border Routers (ABRs) to
achieve redundancy or load-balancing in traffic. By default if a router in a
STUB or a NSSA area is dual homed to two ABRs with equal links, and that ABR is
injecting a default route into that area, the STUB router will load-balance the
traffic to the ABRs. The problem occurs when those ABRs doesn’t have equal
links connected to the backbone area. Even though traffic from the stub router
will be load balanced to the ABRs, the traffic from the ABR with the lower
bandwidth link will drop traffic going to the backbone if it exceeds the its
maximum link bandwidth.
Let’s take a look at this simple
topology
Area 1 has two ABRs, R2 and R10, Both are injecting a default route in Area 1. Since R7 has two Gig links to both ABRs, it will load balance traffic on those two links, which get us to an interesting concept here.
The default route is a generated
route, meaning that it is originated from the ABR itself, and by default it
will have a metric of 1. Meaning, even though R2 have a 155 Mb link connected
to Area 0 and R10 has a 1000 Mb link to Area 0, R7 will still have the default
route metric with the cost of 2 ( 1 for the link to the ABR + 1 for the
generated default route cost)
Now let’s see how that looks from
the prospective of R7 in normal conditions.
R7# show ip route
Gateway of last resort is 10.7.10.10 to
network 0.0.0.0
7.0.0.0/32 is subnetted, 1 subnets
C 7.7.7.7 is directly connected, Loopback0
10.0.0.0/24 is subnetted, 2 subnets
C 10.7.10.0 is directly connected,
FastEthernet0/0
C 10.2.7.0 is directly connected,
FastEthernet0/1
O*IA 0.0.0.0/0 [110/2] via 10.7.10.10, 00:30:57, FastEthernet0/0
[110/2] via
10.2.7.2, 00:27:16, FastEthernet0/1
As the routing table of R7 shows, it will load balance
traffic equally to both ABRs.
Let’s see the OSPF Database from R7 Also
R7#show
ip ospf database summary
OSPF Router with ID (7.7.7.7)
(Process ID 1)
Summary Net Link States (Area
1)
Routing Bit Set on this LSA
LS age: 1820
Options: (No TOS-capability, DC, Upward)
LS Type: Summary Links(Network)
Link State ID: 0.0.0.0
(summary Network Number)
Advertising Router:
2.2.2.2
LS Seq Number: 80000003
Checksum: 0x71C2
Length: 28
Network Mask: /0
TOS: 0 Metric: 1
Routing Bit Set on this LSA
LS age: 1461
Options: (No TOS-capability, DC, Upward)
LS Type: Summary Links(Network)
Link State ID:
0.0.0.0 (summary Network Number)
Advertising Router:
10.10.10.10
LS Seq Number: 80000002
Checksum: 0x8292
Length: 28
Network Mask: /0
TOS: 0 Metric: 1
As mentioned earlier, this
will cause R2 to drop traffic exceeding 155 Mb even though its share of traffic
can reach 500 Mb.
Now that can be fixed either
by increasing the cost of link towards R2, but since that I might have multiple
routers in that area, and the default route is propagated to all routers in the
stub area, we can use the sub area command default-cost.
The default-cost commands
sets the initial metric of the default route injected in the area, it has a
range from 0 to 16777215. In our case here, we can either set default-cost of
R2 to any number higher than 1 or we can lower the default cost of R7 to 0
Let’s higher the default cost of R2
R2(config)#router
ospf 1
R2(config-router)#area
1 default-cost 1000
Showing
the router table of R7, only the default route from R10 in installed in the
routing table
R7#show
ip route
Gateway
of last resort is 10.7.10.10 to network 0.0.0.0
7.0.0.0/32 is subnetted, 1 subnets
C 7.7.7.7 is directly connected, Loopback0
10.0.0.0/24 is subnetted, 2 subnets
C 10.7.10.0 is directly connected,
FastEthernet0/0
C 10.2.7.0 is directly connected,
FastEthernet0/1
O*IA
0.0.0.0/0 [110/2] via 10.7.10.10, 00:02:15, FastEthernet0/0
Also
checking the database of R7
R7#show ip ospf database summary
OSPF Router with ID (7.7.7.7)(ProcessID1)
Summary Net Link States (Area 1)
Routing Bit Set on this LSA
LS age: 303
Options: (No TOS-capability, DC, Upward)
LS Type: Summary Links(Network)
Link State ID: 0.0.0.0 (summary Network Number)
Advertising Router: 2.2.2.2
LS Seq Number: 80000006
Checksum: 0x95B0
Length: 28
Network Mask: /0
TOS: 0 Metric: 1000
Routing Bit Set on this LSA
LS age: 1063
Options: (No TOS-capability, DC, Upward)
LS Type: Summary Links(Network)
Link State ID: 0.0.0.0 (summary Network Number)
Advertising Router: 10.10.10.10
LS Seq Number: 80000003
Checksum: 0x8093
Length: 28
Network Mask: /0
TOS: 0 Metric: 1
The
route is still in the OSPF database, in case the link to R10 fails, R7 will
install the other route to R2.
One
thing to remember here is that for an ABR to advertise a generated default
route into an area, it must have at least a single interface in area 0
If
the link between R10 and backbone area fails, R7 will still prefer R10 as its
gateway if R10 has it’s loopback 0 advertised in Area 0, to overcome this, you’ll
have to advertise R10 Loopback 0 in area 1 so that it will not have any
interfaces in area 0, but that’s a whole other debate.
No comments:
Post a Comment