One topic that has been discussed many times over, yet when it comes to configuring and recognizing the area types and there specific requirement, I still find guys not really knowing which is which.
R5 is attached to Area 0,1 and 2 making R5 by definition a ABR. We will configure Area 1 as a NSSA (Not-So-Stubby) and Area 2 as a STUB, and then explore the extensions of these two areas called, Totally-NSSA and Totally-Stubby.
STUB-AREAS
Firstly by configuring Area 2 as a Stub-Area:
- Type 4 (ASBR Summary) LSA’s and type 5 (AS External) LSA’s will no longer be flooded into the area.
- All type 3 (Network Summary) LSA’s will be flooded to advertise inter-area routes
- Limitations: NO redistribution is allowed
- A default route will automatically be generated by the ABR (R5) into area 2.
Below config is required on all routers with Area 2 as all Area 2 routers must agree on setting the OSPF STUB flag.
router ospf 1
area 2 stub
In the routing table you will see the Inter-Area default-route, marked as O*IA
.
NSSA AREA
Secondly by configuring Area 1 as a NSSA-Area (Not-So-Stubby-Area):
- Type 4 and 5 LSA’s will no longer be flooded into the area.
- All Type3 LSA’s will be flooded into the area and type 7 (NSSA External) LSA’s will be allowed
- No Default route would be generated by default.
Below config is required on all routers with Area 1 as all Area 1 routers must agree on setting the OSPF NSSA flag.
router ospf 1
area 1 nssa
If a Default route is required, it can be optionally configured with:
router ospf 1
area 1 nssa default-information-originate
This will create a NSSA External Type 2 default route in the Routing table, marked as O*N2
.
TOTALLY STUB AREA
Next you can extend the limitation of LSA’s into Area 2, by configuring it as a Totally-Stub-Area:
- Type 3, 4 and 5 LSA’s will no longer be flooded into the area.
- Only one type LSA 3 will be used to advertise the default route.
- Limitations: NO redistribution is allowed
- A default route will automatically be generated by the ABR (R5).
Below config is required ONLY the ABR router(s) bordering Area 2.
router ospf 1
area 2 stub no-summary
This will generate a Inter-Area Default Route as seen in the routing table, marked as O*IA
.
TOTALLY NSSA AREA
Lastly you can extend the limitation of LSA’s into Area 1, by configuring it as a Totally-Stub-Area:
- Type 3, 4 and 5 LSA’s will no longer be flooded into the area.
- Only one type LSA 3 will be used to advertise the default route and then type 7 LSA’s are allowed
- A default route will automatically be generated by the ABR (R5).
Below config is required ONLY the ABR router(s) bordering Area 1.
router ospf 1
area 1 nssa no-summary
This will generate a Inter-Area Default Route as seen in the routing table, marked as O*IA
.
In Summary:
All routers in a stub or not-so-stub area must agree on the stub or NSSA flag. It is the ABR(s) of the stub or NSSA area that determines if it is totally-stubby or not-so-stubby by adding the keyword “no-summary” on to the stub/nssa command
The keywords:
[stub] block type 4 & type 5 LSA’s
[no-summary] blocks type 3 LSA’s except the default route type 3 LSA
[nssa] blocks type 4 and type 5 LSA’s, but allows Type 7.
I enjoyed this article which had really nice detail and was well put together. And as engineers we are constantly striving for improvement so I thought that we could expand on the NSSA AREA a bit. I think it’s crucial to point out that only on NSSA ASBR/ABRs can you generate a default route without having a default route in your routing table. We know that ABRs by definition have at least one of their interfaces in area 0 so the “area 1 nssa default-information-originate” works perfectly in this scenario on R5. However, let’s say R8 is connected to some external network such as a RIP domain and you want to advertise a default route into Area 1 from R8. The “area 1 nssa default-information-originate” wouldn’t work in this example, unless we have a default route in the routing table of R8.
There are a few quirky workarounds if you want to make this work. One would be to add a static default route on R8 that points to null 0 with a high metric like 200. We really don’t care about using this route and its sole purpose is to allow R8 to generate a default route into the OSPF domain. Another option would be to add some random loopback on R8 and place it in area 0 and passive the interface on your router ospf statement (we are only doing this to place an interface in area 0 and nothing more). This will change R8 from an NSSA ASBR to an NSSA ASBR/ABR (not my personal choice) and your default starts working again.
I have mocked up both scenarios and they work perfectly. Not that I would use them in the real world but it’s always nice to have options in case you’re in a pinch.
– Mark
Right now I’m pretty sure that I have been understood this topic, thank you very much, also thaks to Mark Coms by the comments already was handy to me.