Saturday, January 23, 2010

DHCPv6

There is now also some huge updates to DHCPv6.

The concepts around this are actually really cool: Basically There are three parts that make up a DHCPv6 in IPv6:

A DHCPv6 Client
A DHCPv6 Server
A DHCPv6 relay


a router can be any of the above (although there are some restrictions to how much DHCP server stuff it can do.)

Now, one of the things I like in IPv6 with DHCP is the Relay function. You are probably all familiar with the IP Helper-address right? Just a super quick recap: If in an IPv4 network you have a DHCP server at your head office, and you want your clients at a remote office to use DHCP, you can use ip helper-address (or dhcp relay) so that a local DHCP server is not required, your clients will broadcast a DHCP request, the local router will see that DHCP request and forward it onto a server of your choosing, and the server will then unicast the reply back to your router which will then broadcast back a DHCP reply so your machine can pick up an address!

Example:


int fa0/1
ip address 10.1.1.1 255.255.255.0
ip helper-address 10.2.2.1
!

In this example, we have a subnet 10.1.1.0/24 which we want to provide DHCP for, so what we would do is setup a server with a scope for 10.1.1.0/24 and then point the router to this server (in our case 10.2.2.1) so it can intercept the DHCP requests

O.K.

So, what cool function does IPv6 provide? well a very funky feature is that in IPv6 the idea of "scope" is used pretty heavily, basically all addresses are "scoped" as either link-local, site-local or global unicast and this controls how far in a network they travel (it could be just on the local link (hence link local) within the organization (hence site-local) or even on the internet (hence global unicast.)

So, what some smart guy said was "hey, why don't we use the Site-local multicast prefix to make an address that all DHCPv6 servers in an organization listen on and have DHCP relays send there DHCP relay requests to that?"

This is really cool because it means you don't have to maintain a list of DHCP servers on your routers that you have setup to act as relays, you just tell them to relay and they will go ahead and send a multicast packet to this site-local dhcp server address and send back a reply!

1 comment: