In the previous video, we identified a strategy
for getting all those different types of routes for that 123
network into OSPF.
So in this hands-on lab, I like it,
if you're logged onto a computer,
click on the link for the Virtual Lab,
and let's go ahead make a formal plan.
We'll implement it, so we can do our testing.
[THEME MUSIC]
All right, so here's the topology
we're going to be working with, and I've
launched the Virtual Lab.
Let me go ahead and bring that up as well.
And let me get out Notepad, and that way,
we can keep our ideas straight, and we
can implement them in order. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
can implement them in order.
So let's bring up Notepad on this virtual machine.
This is the DC NUG computer, our management computer,
and here we go.
So I have some notes here.
I recommend that we take R1, and on R1, what we'll do
is we'll add a loopback interface.
And we'll add it to area 0.
And from R3's perspective, because it's the ABR,
it's also in area 0.
They'll have the route show up as an intra-area route.
And then going next, let's do the intra-area route,
let's do the R2.
And for that, we can go ahead and create a loop. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
And for that, we can go ahead and create a loop.
And we'll put that loopback on R2.
We'll put it into area 123, and that way, it's
not in the backbone.
And as it shows up on R3, it'll show up as an inter-area route.
And let's go to the next one, which
is going to be an external type 1,
and we can do that on R4 in our topology
and-- what do I have here?
So on R4, let's do redistribution.
So we'll create a static route.
In fact, let me put the syntax here--
IP route for 123 and an 8-bit mask. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
IP route for 123 and an 8-bit mask.
And we'll send that to the bit bucket,
and then we'll do a router OSPF 1,
and we'll redistribute that in.
So redistribute static subnets, and on R4, this
is going to be a type 1.
We'll say metric type, and we'll say 1.
Awesome.
And then for our external type 2,
let's go ahead and do that on R1.
Now, R1 already has a--
it's going to have a loopback interface,
but as we go through, we'll see which one takes precedence. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
but as we go through, we'll see which one takes precedence.
Then we can sort them out as we go.
So I'm going to double dip on R1.
So on R1, we'll also do the same thing here,
except this time when we redistribute it in,
we'll bring it in as a type 2.
So that's our E1 and E2.
Now, for the N1s and N2s, we're going
to need to make this area, right here,
area 1-- we're going to need to make it a not so stubby area,
so we can have those LSA type 7 networks being advertised in. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
so we can have those LSA type 7 networks being advertised in.
So we'll need to make R3, R5, and R7.
Tell them that area 1 is a not so stubby area,
and then we can do some redistribution
on static routes on R7 and R5.
So let's go back to our management computer
here, and let me add those notes as well.
So let's g-- area 1 NSSA, just so I don't forget to do it.
And then on R7--
and we'll take a look at our notes
together and make sure we're all on the same sheet of music. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
together and make sure we're all on the same sheet of music.
So on R7, we'll do a same thing here,
and because it's an NSSA area, they'll
come in as an LSA type 7.
So I'm going to specify here, it's going to be a type 1.
And then on R5--
oh, this is convenient.
On R5, we'll do it again, but we'll bring in it as a type 2.
So let me just go through these notes,
and we'll make sure we're good to go.
In fact, I can just put all the syntax right here, too. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
In fact, I can just put all the syntax right here, too.
Save me some time in the CLI.
So config t on R1 interface loop.
We'll do 123.
IP address 123.
Give it a valid IP address, and then we'll
do an IP OSPF network point to point.
Now, the reason I'm doing that is because a loopback
interface, if you don't do that, it'll
be advertised in OSPF as a 32-bit route, which WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
be advertised in OSPF as a 32-bit route, which
I don't want that.
I want this to be a 123 network 8-bit route everywhere.
So let me check here.
Interface loopback 123, IP address looks good.
IP OSPF network type point to point.
IP OSPF 1 area 0-- that looks good.
And then R2, very similar thing.
There, I'll copy paste, and it's going
to be a different IP address.
Let's do 2, even though they're not next to each other. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
Let's do 2, even though they're not next to each other.
It's just a loopback, and I'm going
to put that one in area 123.
That'll be our inter-area route as it shows up.
That looks good.
And then R4, config t, and IP route 123 going to null 0.
Router OSPF redistribute static subnet metric type 1.
That looks good.
Then on R1, we're also going to do that.
But metric type 2.
Those are both backbone routers.
And then area 1 NSSA, that's going to be on-- WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
And then area 1 NSSA, that's going to be on--
let me go ahead and--
let's command R3, R5, R7.
Config t, router OSPF 1, area 1 NSSA.
Great.
And then on router 7, config t, and that looks--
IP OSPF 1 and config t. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
IP OSPF 1 and config t.
I think that's everything we need to do.
So the bottom two will be our N1 and N2 routes,
and these R4 and R1 here will be the external type 1
and external type 2 routes.
Then R2's going to have the inter-area route,
and R1 will have the intra-area route.
I think that's good.
Let's find out.
So we'll copy that and go over to R1 and boom, bombs away. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So we'll copy that and go over to R1 and boom, bombs away.
And I should have added a hard return after that.
And let's take a look at the next one, R2.
Copy, boom, and that looks good.
R3-- let me do these in order I have listed here, so here's R4.
WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
Now, trust my notes.
That's R4.
Go back to our notepad.
Now, back to R1, and I should probably add a--
I'm already in configuration mode, so I will just copy that.
[INAUDIBLE] R1.
I'm already configuration mode, so we'll paste that in.
Fantastic.
And then going back to our notes on area 1, which is
router 3, 5, and 7, going to make it an NSSA. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
router 3, 5, and 7, going to make it an NSSA.
We'll copy that, and that's 3 and 5 and 7.
Let's see.
We finish off here.
So in R7, I got these two more, and this
is going to be for N1s and N2s.
We'll do a copy, and that's on R7.
Make sure I get it on the right router.
Awesome.
And the last one is going to be on R5.
So I think, if we go to R3, and let's do a show IP route OSPF, WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So I think, if we go to R3, and let's do a show IP route OSPF,
so there's our route.
And I'm also going to simplify that
up a little bit with a pipe.
Include 123, and let's also do a debug.
CCIE's favorite trick-- debug IP routing.
Why is that important?
It's because anytime the routing table changes,
I want to know about it.
And so this will definitely tell us
about the routing table changing. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
about the routing table changing.
So if we have all those routes correctly
in place, that means that, of all those routes for the 123
network that OSPF have had to choose from,
from R3's perspective, is choosing
the one that's the intra-area out with the O right there.
Now, if that route goes away, and that route-- let
me take a look real quick.
That route is coming from R1 on its loopback interface.
Let's go ahead, and let's remove it.
So we'll go to R1, and we'll go to interface.
In fact, I'm just going to get rid of it really-- WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
In fact, I'm just going to get rid of it really--
interface, no interface loop 123.
So that's going to get rid of it for sure,
along with any OSPF related information for it,
and we'll go back to R3.
And great, we have a little debug message saying
there was a routing change.
Do a show.
I'll just hit the Up arrow key and show
IP route OSPF include 123.
And now, it's the inter-area route that it's learning,
and that's the inter-area route that R2 was sourcing.
So the pecking order is-- WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So the pecking order is--
let's make a note here.
So here's the pecking order.
The first route that it would choose if they were all
available via OSPF is going to be O for intra-area,
"within the area," and then it's going to go for the inter-area.
That's the OIA.
And if we made this route really bad--
in fact, we should just do that real quick.
This inter-area route that's being sourced over
from R2-- if we made it look really bad, it doesn't matter.
So we are in loopback configuration mode. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So we are in loopback configuration mode.
If we do IP OSPF cost, and let's give it
a really bad cost like 60,000--
that's really bad.
And then we go back, and we take a look at R3--
give it a moment to synchronize and get up to speed.
There we go.
And we do a show IP OSPF route, check it out-- now,
it has a huge metric, but it still
chose the inter-area route.
At this point, for the same network coming in on OSPF,
it's all about the preference order, not about the metric.
So there's no-- intra-area route chooses the inter-area route. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So there's no-- intra-area route chooses the inter-area route.
And if it goes away-- let's go ahead and get rid of it on--
that's on R2.
So on R2, let's go in and get rid of that loopback interface.
Let's do a no interface loop 123.
That'll get rid of it.
Give a moment on R3 for its database to synchronize.
It's going to wait for the message because it's coming.
Should be coming.
Did we not kill it?
Yeah, interface loopback 123. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
Yeah, interface loopback 123.
It was interface loopback 123?
Yeah.
Oh, there it is.
So there's-- let me debug.
And now we look at that route-- now, it's an E1.
So if we make a note, it was the O, then the inter-area,
and next is the E1.
This is the pecking order, and we'll keep making a note here
and see what's next.
So that E1, that was coming in from R4,
and so let's go get rid of it.
Over here on R4, let's do no redistribution static. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
Over here on R4, let's do no redistribution static.
I'm going to do I show IP OSPF just
to make sure we're no longer redistributing.
So Router 4 is an area border router,
but it's not an autonomous system boundary router.
And that's great, because we removed that redistribution.
So if we go back to R3--
and there is another debug message for us.
Let me do a show IP route again.
Now, it is an N1.
So it was E1.
Now, it's an N1.
We'll make a note, and let's go ahead and get rid of that N1. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
We'll make a note, and let's go ahead and get rid of that N1.
So that N1 was on Router 7, and that was the redistribution
we're doing on Router 7.
So on R7, we'll do a no redistribution static,
and then I'm just also going to verify show IP OSPF.
I want to make sure it's no longer--
it's not saying that it's an autonomous system boundary
router, and it's not saying that it is.
Great.
All right, so now that that's gone, we'll go back to R3.
There's our debug message. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
There's our debug message.
We'll hit the Up arrow key a couple times,
and now it's going for E2.
So let's go ahead and make a note of that.
So E2 is next, and then we'll go kill that route.
So that E2 route was coming from--
where's that coming from?
That was coming from R1 in it's redistribution.
So up on R1, config t router OSPF 1, no redistribute static. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So up on R1, config t router OSPF 1, no redistribute static.
Show IP OSPF just to verify that it's not an autonomous system
boundary router anymore.
Good, because it's no longer doing redistribution.
Great.
And back to R3, and a moment ago, it was an E2 route,
and now, it is an N2, which is our last route.
And let's go ahead and put N2 here,
and that's our full range right there, and that's the order.
And let's kill that route and just
make sure it goes away, so I didn't make a mistake anywhere WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
make sure it goes away, so I didn't make a mistake anywhere
else.
So that would be on R5 that was happening.
On R5, we'll just go and do a no redistribution static IP OSPF,
and it is no longer an autonomous system boundary
router.
Fantastic.
It's not injecting those routes in.
So if we go back to R3--
yeah, I see the debug message.
It got rid of it from the routing table.
Then we just show IP route.
So let's take a look at the order
here for the preferences in OSPF, WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
here for the preferences in OSPF,
and here's the key takeaways.
We just experienced this, but also, we
had the opportunity to do some planning and configuration
in the testing of it.
Now, there is a little bit of a challenge with saying
this is the definitive answer.
You might say, well, Keith, we labbed this up.
We tested it.
We saw it.
That's true, but if we were running
version 12.2 of software version 15.2, and in this lab,
these routers are in the 15.2 range,
the actual order of these guys is
going to change a little bit, and that WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
going to change a little bit, and that
is because of the RFCs and Cisco's
compliance with those RFCs as the software has evolved.
So if you want more information, there's
RFC 3101, which talks about some different behavior
with the external LSA types.
It's not a fun read.
And I spent a little more time than I should on this probably.
But I went out, and I looked at the RFCs,
and I looked at the documentation.
And I looked at what people said,
and I looked at people thought.
And I thought, you know what, I'm going to lab this up
so we can see. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
so we can see.
We are currently running 15.2 and higher
on this particular version of routing software,
and this is, in measurable terms,
what the results are on this gear.
But once again, you could be on a different version
of operating system, and your results
might be different for these remaining four.
But the key is this-- always, it's
going to be the routes that are in your area first,
and if there isn't a route in your area
for that specific prefix, then it's an inter-area route.
And then after that, there's going WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
And then after that, there's going
to be a little duke-out regarding
which route is going to be used from the routing table.
So in this version that we are currently using,
this, indeed, is the order, and that's
why I did this lab-- so we could lab it up, practice
it, and then see it firsthand.
So I hope you enjoyed the video and the hands-on lab,
and I look forward to seeing you in the next set of videos.
Meanwhile, I hope this has been informative for you,
and I'd like to thank you for viewing.