[music]
All right, next we're going to take a look at IPv6 DHCP
prefix delegation.
Now the basic idea behind this one, this one gets a little bit trickier
as far as the set up and the configuration goes.
So let's take a look at our topology and we can take a look at what
we're going to set up and what we're going to do here.
So I'm going to spend a second on the topology now on this one.
So for those of you who been follow along with the lessons here so
far we've been using VLAN 36 between Router 3 and Router 6
where for slack and normal DHCP and so on,
Router three has actually been the DHCP server or the router itself
for slack, and Router 6 has been playing the role of the client.
We're going to sort of stick with that idea,
but the idea with prefix delegation is a service provider or somebody
else, it could be within your own company,
but the idea is, that a service provider actually gives you the prefix
that you're going to use inside of your network.
You then, take that prefix, you break it down into subnets and you
use that on the interfaces inside of your own network.
That's what we're going to take a look at.
To do this, we're actually going to use Router 4 now,
so we're going to go down across VLAN 344 here and we're going to
use Router 4 as the DHCP server this time.
It's going to send not an address, this is the big difference.
It's not going to be sending me an address to Router 3.
No, no, Router 3 is instead going to be getting the address from
DHCP, and then using that, and reallocating address space to the devices
inside. And for the inside, I'm actually going to use the link up
towards Switch 3, so VLAN 39, and VLAN 36 as examples on how this
works. Our steps, sort of like before, are going to be to configure
the Router DHCPv6 scope, but this is going to be for prefix delegation
this time. So, that's going to be Router 4.
Configure that on the interface.
Then we're going to set up Router 3 as our client.
Again, we can still control the host portion with link-local,
but we don't even need to do that.
We're going to see how to do the interior addressing.
Configuring the DHCPv6 client, that's actually the the big part of
this section, so let's just jump in to the command line here.
What we're going to need to do is go to router 4 and like I said,
this is going to be our server now.
So we're going to say, ipv6 dhcp pool, and we've been using 6pool
this whole time so we can stick with that it's not a big deal you
can call it whatever you want.
Here's the big difference.
Now instead of saying address prefix, instead we say,
prefix delegation.
Now at this point I could a prefix right here,
but that would really just be assigning one prefix.
The more common thing to do and of course you could always use AAA
here as you can see.
But the example I'm going to show the more common way that I've seen
done is to actually call to it from a local pool.
And then of course, you have to give it a name,
which would be something like Local 6Pool - something like that.
If you want, as always, lifetime 600 preferred 300 - whatever you
want to do. Also, of course, your DNS server.
In case anybody's wondering what I'm putting in there,
I'm just using Router 1's loopback from our topology.
It doesn't matter, it's not a DNS server anyway.
Then, domain name ine.com.
So, all the typical things you would want to do.
Now, there's two more pieces, the tricky part and the easy part.
Let me exit out of this, and we're going to say IPv6 local pool and
we'll call it local 6Pool.
This has to match of course, what we did above.
This is possibly where people start getting a little bit confused
by this. We're going to say 2001: and remember so far we're at 16,
that's 16 bits, :DB8 32 100:: Now, technically that's 48 bits that
I just defined there.
Remember that the 100-- and technically if you just want to spell
it out, remember that 0 100, that's 0DB8,
doesn't really matter.
But remember this, that's 48 bits that I'm defining right there,
but what I'm going to do is I don't want to have-- remember that in this
case, our Router 4 is sort of pretending to be a service provider
or the core of your network or wherever it is you're using this feature,
the idea is I want to have more than one prefix.
And I want to give the customers a /48 because if I give the customer
a /48 then they can then create a /64 for their internal subnets.
And that gives them 16 Bits of subnetting or 65,000 roughly subnets.
So if I'm going to give the customer a /48 then this pool that I'm
creating should be smaller than that,
or a shorter prefix length. Just as an example,
/40. That means I'm going to look at the first 40 bits of this.
Now the reason I used 40 just in my example here just so you know
is I want to make sure that we're actually going to end up on 100
here. So I want to make sure that the 1 is the first one handed
out. If I say /40 it means that these two zeros are not part
of what I'm defining.
So I'm saying that the first 40 bits of this are the pool and that
would be everything up to the 1.
So I'm saying that the pool is all of that and that's what I'm going
to hand out from.
So everything I hand out will be 2001:DB8:1.
Then the question is how long of a prefix do I actually hand out.
As I told you I want to give the customers a /48.
So the way to read that line right there is I'm creating a pool that's
a /40. But from those /40S I'm going to give out a /48,
which means the first one I give out will be 100.
The second one would be 101, 102, all the way up to 1FF,
so that means that I'm using these two digits or 8 bits for the pool.
So everything from 00 to FF are part of this pool.
And as clients request from that pool he's just going to start handing
out the first addresses, so that creates the pool that I need to
create. So that's what I referred to a minute ago as the trickier
part. The easier part is that we just go to interface FA 0/0.344
that is the subnet going up to Router 3,
if you need to you can refer back to the diagram and we say ipv6
dhcp server 6pool. And while we're at it do debug ipv6 dhcp.
Now we would have missed the DHCP server starting up there since
I didn't turn on the debug until just now.
But we'll still see the request come in.
Okay, so now we go over to Router 3, and on Router 3 we're going to
configure his interfaces.
And this is possibly the trickiest part of the whole thing,
is configuring Router 3 with what to do with this prefix.
So the first is to tell him to get the prefix from Router 4 to begin
with. So interface fa0/0.344,
and here's the fun part, see, we're not going to be saying IPv6 address
DHCP now. No, no what we need-- and you could just do IPv6 enable
here like we talked about previously, but if we said do show IPv6
interface brief I do already have link local address on this interface,
344, so it's going to be okay.
I don't need that.
I'm just going to go right for the IPv6 DHCP client,
and what are we going to be a client for?
Prefixed delegation.
By the way, I could also tell him right there just to get information
from DHCP as well, which is if you don't have the other config flag
like we talked about in that previous lesson this would sort of be
another way to do that as well, but we're here to look at prefixed
delegation. And then this part sometimes blows people away a little
bit, you're then going to give the prefix a name.
And I love that too where it says truncated to 200 characters.
What are you going to call this?
This is the prefix that I got from my service provider that I'm supposed
to use for all of my internal subnets, so this is what I need to
put on here. I don't know why in the world you'd be at 200 characters
for a prefix name but hey, to each their own.
I would call it something like prefix from provider.
You can't imagine having to go any longer than that,
but whatever. One more time, and we did not turn it on on the other
side here. We could, though.
We could go back here and do our pool and say rapid commit.
We could do that.
No harm done. Hop back over to Router 3 just to show you that you
can also say rapid commit on this one.
Should be good.
Was already on, okay.
I was going to try and turn on the debug real quick I couldn't remember
if I had it turned on on Router 3 or not,
I do. So what you can see here is,
he starts up DHCP fine, goes from idle to solicit,
sends the solicit message to all DHCP servers,
he gets the reply from Router 4, adds the server to his list and
then adds the prefix to the prefix from provider name.
If you notice, he grabs DNS and domain name so grabs the options
and then that's it.
He goes to open.
Notice there's no message here about assigning it to an interface
because he's not.
If I said do show IPv6 interface brief we don't have any address
from that pool yet.
We're not using it.
We've gotten it and we've stored it that's all we've done so far.
So the next part is where we actually use it.
So we could say for example interface FA0/0.36 and now the other fun
side of this. IPv6 address and so far we've been typing things like
auto config and DHCP or typing in an address.
But notice you can also just put in a prefix name.
Oh G, I think that's what we want.
Let's put that name in.
Now here's the part where people sort of give you the great big huh.
Yeah, I know. See here is the thing.
You theoretically-- now we know because we set up the server.
We know that we're getting a /48. here people sort of give you the great big. Huh? Yeah, I know. See, here's the thing. You theoretically. Now we know, because we set up the server, we know that we're getting a slash 48. But technically you don't really know that. I mean, what if the service provider was giving you a slash 32? And you've got a couple, I don't know what would that be, quadrillion or something, subnets? I don't even know. Okay. But the point is this. It would actually be what? 4.2 billion subnets because you'd have 32 bits of subnetting left. But the point is, you don't really know. Did they give you a slash 32? A 40? A 48? A 48? What we need to do is we need to finish off the address. We need to specify the end of the address. We don't know what the beginning is or how long the beginning is. And I'm saying all of that just to show you that you're going to start this with colon colon. And that's the part I think that sometimes really throws people. Because we're going to say colon colon and then the subnet, see, that's our subnetting part now. So that is going to be the bits between the 48 and the 64 in the network portion. Now in order to tell it which fields those are, that means that I have to say colon zero, colon zero, colon zero, colon three. I have to fill in the whole rest of the host portion. Just like any other time, you can't use colon colon twice. So there is no way I could say colon colon 36 colon colon three. Because they would have no idea where the 36 was supposed to be. And I have to use the colon colon at the beginning because, well, I mean, have to use a strong word. I mean, if you absolutely knew that you were getting a slash 48, you don't have to put the colon colon. But you normally would. That way if you get some various length prefix from the provider, they send you a slash eight, not going to happen, but I'm just throwing it out there. You know, a 32, a 40, a 48, whatever they send you, we're filling in the rest of it and telling it, by the way, once you get that, use it as a slash 64, please. So I'm going to put that address on my own interface. And at that point, he's now going to put an address on his own interface. So he pulled that from the provider and then he added that part on from what we put in. I can do the same thing if I go into interface F A 01. Same address, but that's not subnet 36. This is the link going up to the switch. This is VLAN 39. So what I'm showing you here is you're literally going to be pulling your prefix, whatever it is, from the provider and then you're tacking on the subnet and the host portion. And everything's fine. Now the advantage to this and what this is for is in case you change providers. Now since I'm mostly done with the DHCP part of this here, I'm going to actually turn this off for the debugging so it's not in our way. Because now if we go further in, if we go into router six, okay, he is not going to have an address on his 36 interface. But the cool thing is we can go back to using router advertisement and Slack now. So again I can say, I, whoops, not in the interface. Okay, and he'll pull his address. But we already know we won't pull anything else. Do show IPV six DHCP interface, gigabit zero zero dot 36. He's not pulling anything. In other words, he's not getting the DNS. He's not getting the domain name. And maybe you should and maybe you shouldn't be getting that from your service provider anyway. That's not really our discussion right now where this should be coming from. They're trying to show you how the technology works. So this brings us to our next point. Okay router three. Great. So interface F a zero zero dot 36. You already know this. We saw it on a previous lesson. I need to now say IPV six, neighbor discovery, other config flag. This will tell router six to ask for more information. Okay. So now he's set to get information, but he's not getting anything. Let's take a look. Actually, Puss should lift that on on router three. Just bounce it real quick. It would try to ask again later, but I'm not patient. Okay. So he sends the information request. Notice sending request, sending request, sending request. What's router three doing? Correct. Absolutely nothing. Because he's getting a DHCP request. Not good. Okay. Not good. By the way, he's getting yelled at because don't worry about this. This is up on VLAN 39. This is because VLAN 39 says he's a router and is advertising the prefix. And so are we, but we're advertising different lifetimes and such. So it's okay. It's just a conflict because switch three is still up there and we haven't done anything with him. He's just running default IPV six config. So this brings us a good place to wrap up with one more topic. And this can sort of go back to the old DHCP in the previous lesson as well. But it just sort of fits here really well. And that is what in IPV four land, you would be familiar with knowing it as IP helper. But you know, IP helper was always sort of a, I don't want to say necessarily a silly name, but it was more inclusive than we needed. It would forward a whole bunch of different things. I can never remember six different protocols or so that it would forward. And we didn't need those. All we really needed was the DHCP part, but we all put it in there anyway. With IPV six, they looked at it and they said, you know, we're just going to get a little more specific now. So now it's IPV six DHCP relay, which actually makes a lot more sense. Set the destination. Well, the destination is FE eight zero colon colon four, which is router four is link local address. And by the way, that does not just to show you. Well, going around a four, I can't really show you because all I have running there is link local. But it just to let you know, it does not have to be a link local address. I mean, maybe this guy doing the relay isn't directly connected to the DHCP server. So you wouldn't be able to go link local. You'd have to put in a routed address. So I could put in, you know, router ones loop back or something. There'd be nothing wrong here. We're saying two thousand one DBA colon one hundred colon one hundred colon one, whatever. It doesn't matter. It's just that with no routing protocols running right now or anything else, all I'm going to be able to do was really. FE eight zero colon colon four. And you don't have to do anything fancy with this one because it does ask for the interface at the end. This is, of course, going to be the egress interface towards the DHCP server. So this is going to be F a zero zero. Dot three forty four. And at that point, give it a second here. You can see router six has probably given up. He's trying periodically. But you got to wait for him to try again. And he should get the information. Not patient. There we go. And as you can see now, he sent the information request. It got relayed. So router three got it. Sending relay forward to that address out that interface. Gets the answer. And I don't remember where the debugging on on for we do. So it received the relay forward from three. Used the. I don't remember. Pool from the interface. Answered just with the options. OK, sent the answer back. And of course, that makes it all the way through to router six. And now. My internal clients. Have all of their DHCP information. Now the advantage to all of this is a lot of people look at all this and go, yep. OK, see how it works. OK, fine. Why? Well, the idea here is you could and this isn't the easiest thing to do. Let's see if we can do it. See how much we have to undo on router four to do this here real quick. We will have to undo a bit. But it won't take too long. So I'll take that pool out. Take out the local pool. Put the local pool back in. By the way, the reason I'm doing this is it doesn't let you change it and stuff while it's already in use. And just for fun, just to make it really easy to see this time, we'll do like 99. DB eight, ninety nine, 40. 48. And then. We can basically put all of this back in. There we go. And if we go back to router three. If we scroll back up to the last time I looked at show IPV six interface brief, notice that we used to be on 100. And we had our subnets of 36 and 39. If we look at it now, notice now we're on 99. So we just flipped his prefix but still the same subnetting internal for the customer. So the idea is customer changes service providers. They get a new prefix from the provider and their entire inside network completely rein numerates itself. And we're all still running with all of our same internal subnetting. But on a whole different IPV six global prefix from a whole different provider. Now, like I said, that's that's the idea. That's the theory. I sit around sometimes and go and who's going to use this? Who literally has every device on their inside network 100% DHCP. And or slack like we're doing here. Either way, the point is you have no static addresses on anything. Nothing you would have to go manually change. Now, again, you could make the argument that this will handle the bulk of your network during a renumbering to another provider. And yes, okay, maybe I have to go change my printers and my servers and stuff like that. But I get most of it. So that's the idea. How widespread and how used it's going to be. I don't know. I don't personally know of any customers using it. But it's there. That's how it works. And the good news is, you know, it's really not that difficult to do. Okay? And we already know how to do the host portion.