In the previous video, we took a look at the role of BGP
in the world of [INAUDIBLE] VPNs.
And in this video, I'd like to demonstrate
the implementation of that BGP on top of our existing network.
[MUSIC PLAYING]
So just a reminder about where we are picking up.
We've already got VRFs that are configured and associated
with the interfaces.
We've got routing protocols between the customer edge
and the VRS on the respective PEs.
We have MPLS in full reachability
across our provider network. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
across our provider network.
And now what we're going to do is
we're going to implement the BGP between R1 and R4
for an iBGP neighborship.
So here's the relevant portion for BGP on R1.
We're going to use a autonomous system 6783 on both sides,
between R1 and 4.
R1 is going to point to R4 as a neighbor,
specify the same autonomous system,
making it an internal BGP neighborship.
We're going to specify update the source loopback 0,
which is 1111 on router 1.
And we'll do the same thing on R4, which would be 4444.
We'll also advertise ourself as the next hop, WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
We'll also advertise ourself as the next hop,
as we advertise VPNv4 routes across.
And then we're activating VPNv4 in this section, address family
VPNv4.
We want to activate that neighbor of R4.
And we also want to send extended community values.
If we don't do that, we're going to be
in trouble with route targets, because route targets are
sent as extended communities with a VPNv4 route.
And then in these two sections right here, the redistribute
eigrp 1 and redistribute RIP.
Those are taking the routes from those respective VRFs
and those respective routing protocols in those VRFs, WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
and those respective routing protocols in those VRFs,
and they're exporting them out of VRF and into BGP.
And when that happens, that export out of the VRF
into multiple protocol BGP, that's
when they become VPNv4 routes, and they
get the route distinguisher added
to them as part of that route.
And also, the appropriate route targets,
based on the export route target values for that VRF,
are attached during the export, as they become
VPNv4 routes inside a BGP.
So that's what these are doing right here.
And then as the flip side of that, WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
And then as the flip side of that,
as we already did in a previous step, this is the import.
So in this case, we're redistributing
BGP autonomous system 6783.
Now, that is not the entire routing table for the internet.
That's just the autonomous system
we're using for our layer 3 VPN solution.
And so we're taking the routes.
And think of it like the school bus
inside our provider network.
We're taking those routes, and we're
going to redistribute them, or pull them,
into the VRF customer 1.
So that's an example of importing.
Now, the bus, the school bus, the multiple protocol
BGP with maybe tens of thousands of VPNv4 routes, WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
BGP with maybe tens of thousands of VPNv4 routes,
we're not going to import everybody.
We're only going to import those that match
the route target for this VRF.
So on a router 1, if this VRF for customer 1
has an import route target of 33.33,
we may have 10,000 VPNv4 routes.
But we are only going to import into this specific VRF
those routes that have the route target associated
with them of 33.33.
So on the other side of the network,
when routes were exported out of VRF
and assigned a route target based
on the export on the far side, that's WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
on the export on the far side, that's
how they got the route target, the extended community.
And for the import here, this redistribution of BGP
into the VRF, the import--
it's only going to bring in those routes that
have the matching route target for imports specified
in the VRF.
So this import, we've already done previously.
And for the BGP, we're going to have
the flip side of this for R4.
So here's what I am going to do.
I am going to--
for the demonstration, I reset the lab,
and I manually went back to the customer edges
and enabled the dynamic routing protocol, RIP, and EIGRP, WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
and enabled the dynamic routing protocol, RIP, and EIGRP,
respectively.
And what I'm going to do here is get my mouse out of the way.
And I'm going to take the full config for R1, starting here.
And I am going to place it into R1.
So on R1, the service provider network
is already running OSPF.
The MPLS is already enabled on the service provider network.
And I'm just adding the other components here on R1.
And we've taken a look at every one of these individually up
to this point.
OK, so we have a neighborship EIGRP with the customer edge. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
OK, so we have a neighborship EIGRP with the customer edge.
That's great.
Let's go to R4 and grab our first config.
Go all the way to the bottom.
I want all that.
Right click, Copy.
Go to the right router and paste.
All right.
And we have an adjacency with EIGRP,
and that would be with customer 1, site 2.
Oh, look.
And we also have a neighborship.
So let's verify a few things with this BGP neighborship.
Let's do a show ip bgp neighbors.
So there's a lot of output with show ip bgp neighbors. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So there's a lot of output with show ip bgp neighbors.
But what I want to show you is this.
VPNv4 is enabled.
We have a neighborship.
Let me do a show ip bgp summary.
So this looks like, wow, so we've got a neighborship.
And we have zero prefix learned.
What's that all about?
Well, what we're really sharing is VPNv4 routes.
If we want to see those, there's a couple different commands.
Not my fault.
There's a couple of different commands
that can show us the VPNv4 routes inside of the school
bus.
And one of those would be show ip bgp.
Use the context-sensitive help. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
Use the context-sensitive help.
Vpnv4 space question mark.
OK.
And then we can filter here based on we see all of them,
or based on the route distinguisher,
or based on a certain VRF.
So I'm going to go ahead and type in all.
And there are our VPNv4 routes.
So if we look at the ones that have a next hop--
we're on R4.
And any of the ones that have a next hop of 1.1.1.1,
we learned those via internal BGP from 1.1.1.1.
You sent that with the next hop attribute of his own address.
And the ones that have 0.0.0.0 on R4, WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
And the ones that have 0.0.0.0 on R4,
we are directly connected to the 172.16.3.0
network for customer 1.
That's our provider edge interface for the VRF
that goes up to customer 1.
And then this route right here, 33.33.33.33, we
learned that route from 3.33, which is our customer edge.
So that loopback is a loopback on customer 1, site 2.
And the other way, instead of using this command,
a show IP BGP VPNv4 all, I'll do a Control-C there.
We could also do a show BGP and a question mark WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
We could also do a show BGP and a question mark
and VPNv4 space question mark and unicast.
And then we have those similar options--
all, or based on route extinguisher,
or based on the VRF on this local router.
Let's do all.
And if we wanted to filter that based on the route
distinguisher, we could say, well, I
want to see everything based on route distinguisher 11:33.
And it will filter the output just for that.
And then if we go to a customer edge-- let's go to customer 1,
site 1-- WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
site 1--
and we do a show IP route, look at this.
We have some external EIGRP routes
that we have learned from the provider edge.
So here's the big picture of how that plays out.
Routes from this customer at site 2 are advertised.
They go into the VRF.
The router, acting as a PE in that VRF,
exports those routes into multiprotocol BGP.
Specifically, they become VPNv4 routes,
including route distinguishers and the export route
targets associated with them.
Those are advertised via the iBGP neighborship over here WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
Those are advertised via the iBGP neighborship over here
to R1.
R1, looking at the route targets, R1 says,
oh, in my VRF, I've got VRF for customer 1.
My import for route targets is 33:33.
And as a result, it says, great.
I'm going to take all the routes that
have the route target, the extended community of 33:33,
and I'm going to import them from multiprotocol BGP
into the VRF, at which point we advertise those
through the routing protocol up to the customer edge.
And now that router has that route. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
And now that router has that route.
And let's demonstrate that by creating a new loopback here
on this customer edge router, customer 1, site 2.
And what we'll do is we'll see that that route gets created.
And then it's advertised and is communicated
as a VPNv4 route, who then takes it out of BGP
and advertises it up to customer 1,
who sees it simply as an EIGRP learned route that he learned
from the provider edge.
So let's demonstrate that real quick and some show
commands to verify it.
So here on customer 1, site 2, make
sure I'm on the right device.
Great. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
Great.
And then we'll do a config T interface loopback.
Let's create loopback 7 and IP address 7.7.7.7, that'll work,
with a 32-bit mask.
All righty.
And we'll do a show IP protocols.
So we've got routing for all networks with EIGRP.
So that network is being advertised inside of EIGRP.
That means our service provider should see it.
If we go to R4 and do a show IP route for VRF customer 1-- WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
If we go to R4 and do a show IP route for VRF customer 1--
and it didn't like the space; I have
no VRF named that-- customer 1 without the space.
All right.
So there's the route that we learned via EIGRP.
So what we've done is in our config,
we exported that route out of the VRF into multiprotocol BGP
so we could advertise it to our neighbor.
So if we go over to R1--
in fact, right here, we can see it, too--
show BGP VPNv4 unicast.
And we'll just say all.
And there it is right there.
So there's our VPNv4 route. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So there's our VPNv4 route.
And if we look at R1, I'm going to take that same command.
If we go to R1, issue that same command.
There is the route, 7.7.7.7.
And the next hop is 4.4.4.4.
If he ever needs to forward a packet,
he knows where to forward it to.
And if we go to the customer edge customer
1, site 1, and now we do a show IP route.
And let's do EIGRP learned routes.
There we have our 7.7.7.7 route that we've learned
from our service provider.
Now, the real power of this isn't just the fact
that the routes show up, the real power of this WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
that the routes show up, the real power of this
is that the service provider, us, can forward a packet, which
is the data plane.
So the control plane shows the route.
The data plane needs to forward the packet as well.
So let's do a ping to 7.7.7.7.
Amazing.
And check this out.
This will blow your mind.
If we do a trace to 7.7.7.7, be prepared.
Are you sitting down?
If we do a trace it's going to show us
not only that it got there in the hops involved, WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
not only that it got there in the hops involved,
but it also shows us a whole amazing set
of labels that are involved because MPLS behind the scenes
is making this possible across our provider network.
So here's what I would like to do.
We've taken a look at the configuration elements
for Multiprotocol Label Switching,
including VRFs in previous videos,
and also including the route distinguishers and route
targets and how they operate and how they're used.
And now we've also looked at implementing the BGP on top
of it and activating VPNv4.
And so in the next video, what I'd love to do WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
And so in the next video, what I'd love to do
is walk you through the magic.
I mean, this is freaking amazing--
how the routers, based on what's called a VPN
label and a transit label, are able to take a packet from site
1 and then forward it across their network and make it
end up at site 2 for the same customer
using a combination of labels.
So we'll take a closer look at labels and the magic
behind how that's even possible in the very next video.
So I'll see you there in just a moment.
Meanwhile, I hope this has been informative for you.
And I'd like to thank you for viewing. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
And I'd like to thank you for viewing.