NSSA is to allow OSPF Stub areas to carry External routes (routes learned using other routing protocols like RIP, EIGRP, BGP, etc). Redistribution into an NSSA area creates a special type of link-state advertisement (LSA) known as type 7, which can only exist in an NSSA area. An NSSA autonomous system boundary router (ASBR) generates this LSA and an NSSA area border router (ABR) translates it into a type 5 LSA, which gets propagated into the OSPF domain.
Routers configured for Open Shortest Path First (OSPF) can be logically grouped into areas. Route summarization can be configured on them.
These are the benefits:
Reduces the size of the database.
Reduces the size of the routing table.
Reduces the frequency of SPF calculation.
Reduces CPU utilization.
To further reduce the size of the database, configure the area as a stub or totally stubby area. However, areas that have external routes redistributed into them cannot be configured as stub or totally stubby areas.
External routes (like the Link State Advertisement (LSA) type 5) are not allowed in stub areas. Therefore, they cannot propagate from the stub area into the backbone area, resulting in loss of connectivity to the external networks.
This issue is resolved in the OSPF not-so-stubby area (NSSA), which is a stub area that advertises external routes and propagates them into the backbone.
At the NSSA Autonomous System Boundary Router (ASBR), external routes are introduced as type 7 LSAs and propagated through the NSSA. At the Area Border Router (ABR), these get converted back to type 5 LSAs and are introduced into the backbone. NSSAs block type 4 and 5 LSAs. NSSA totally stub area blocks type 3, 4, and 5 LSAs.
RFC 3101 defines bit N in the Options field. Together, the N-bit (NSSA supported bit) and E-bit (External Routing Capability of the area) reflect an interface's external LSA flooding capability. When the peers exchange Hello messages, they check for the N-bit (should be set to 1) and E-bit (should be set to 0), along with Area ID. A mismatch in the Options field could result in failed adjacency.
Type 7 LSA
External routes are imported into OSPF NSSA as Type 7 LSAs by NSSA ASBR. The NSSA ASBR redistributes routes from different routing protocol(s) into OSPF, and vice versa. This router sets the E-bit in Router LSA flag. The ASBR originates a separate Type 7 LSA for each external route.
Type 7 LSAs are only flooded within the originating NSSA. The NSSA ABR (the routers connecting NSSA to backbone area 0) translates Type 7 LSA into Type 5 LSA, and flooded into the OSPF topology.
In Cisco IOS, by default, the NSSA ASBR always set the N/P-bit (Propagate) in the Options field of Type 7 LSA. The P-bit is not set only when the NSSA ASBR and NSSA ABR are the same router for the area. The P-bit tells the NSSA ABR to translate a Type 7 LSA to Type 5 LSA. These translated Type 5 LSAs copy the Forwarding Address (FA) from Type 7 LSA.
To configure an area as an NSSA, issue the area nssa command in router configuration mode. This command needs to be issued on all routers in the area being configured as NSSA.
To configure an area as an NSSA totally stub area, use the no-summary keyword in the area nssa command while entering the keyword on the ABRs.
Unlike stub, totally stubby, or NSSA totally stub areas, a default route is not injected into an NSSA. This results in loss of connectivity to some networks. To inject a default route into an NSSA area, use the default-information originate keyword in the area nssa command.