62
8: DHCPv6 (Dynamic Host Configuration Protocol for IPv6) Rick Graziani Cabrillo College [email protected]

8: DHCPv6 (Dynamic Host Configuration Protocol for IPv6) Rick Graziani Cabrillo College [email protected]

Embed Size (px)

Citation preview

8: DHCPv6 (Dynamic Host Configuration Protocol for IPv6)

Rick GrazianiCabrillo College

[email protected]

©

For more information please check out my Cisco Press book and video series:

IPv6 Fundamentals: A Straightforward Approach to Understanding IPv6• By Rick Graziani• ISBN-10: 1-58714-313-5

IPv6 Fundamentals LiveLessons: A Straightforward Approach to Understanding IPv6• By Rick Graziani• ISBN-10: 1-58720-457-6

8.1: Router Advertisement and DHCPv6

©

DHCPv6

Global Unicast

Manual Dynamic

StaticIPv6

unnumbered

Static + EUI 64

SLAAC DHCPv6

SLAAC + DHCPv6

Similar to IPv4 unnumbered

Stateless Stateful

DHCPv6-PD

©

DHCP Server

Dynamic IPv4 Address Allocation

DHCP Client

I need an IPv4 addressing information from a DHCP server.

Here is your IPv4 address, subnet mask,

default gateway and DNS server addresses.

©

All Dynamic Addressing Begins with the RA Message

• An ICMPv6 Router Advertisement (RA) suggests to all IPv6 devices on the link how it will receive IPv6 Address Information.

• Sent periodically by an IPv6 router or…• … when the router receives a Router Solicitation message from a host.

DHCPv6 Server

ICMPv6 Router Advertisement

ICMPv6 Router Solicitation

Multicast: To all IPv6 routers, I need

IPv6 address information

Multicast: To all IPv6 devices,

let me tell you how to do this …

I might not even be needed.

©

Router Advertisement: 3 Options

DHCPv6 Server

RA

Router(config)# ipv6 unicast-routing

Option 1: SLAAC – No DHCPv6 (Default on Cisco routers)

“I’m everything you need (Prefix, Prefix-length, Default Gateway)”

Option 2: SLAAC + Stateless DHCPv6 for DNS address

“Here is my information but you need to get other information such as DNS addresses from a DHCPv6 server.” (DNS can be in RA)

Option 3: All addressing except default gateway use DHCPv6

“I can’t help you. Ask a DHCPv6 server for all your information.”

DHCPv6

Option 1 and 2: Stateless Address Autoconfiguration• DHCPv6 Server does not maintain state of addressesOption 3: Stateful Address Configuration• Address received from DHCPv6 Server

©

RA Message Options

The type of Router Advertisement option depends on two RA flags: Other Configuration Flag and Managed Configuration Flag• Default: Both flags are set to 0 (Option 1)

• Use me (RA) for all your addressing information, no additional information available via DHCPv6.

• Other Configuration Flag when set to “1” (Option 2)• Use me (RA) for your address but you need to get OTHER information from

a stateless DHCPv6 server.• Managed Configuration Flag when set to “1” (Option 3)

• The client needs to get ALL of it’s MANAGED information from a stateful DHCPv6 server, except default gateway.

DHCPv6 Server

ICMPv6 Router AdvertisementOption 1, 2, or 3

©

RA Message Options

DHCPv6 Server

ICMPv6 Router AdvertisementOption 1, 2, or 3

Option Other Configuration (“O”) Flag

Managed Configuration (“M”) Flag

Option 1: SLAAC – No DHCPv6 (Default on Cisco routers)

0 0

Option 2: SLAAC + Stateless DHCPv6 for DNS address

1 0

Option 3: All addressing except default gateway use DHCPv6

0 1

©

Option 3 and the “A” Flag

Option Managed Configuration (“M”) Flag

Address Autoconfiguration (“A”) Flag

Prefix in RA can be used for SLAAC

Option 3: All addressing except default gateway use DHCPv6

1 1 (default) Yes

Option 3: All addressing except default gateway use DHCPv6

1 0 No

ICMPv6 RAM Flag = 1A Flag = 1

G 0/1

DHCPv6

DHCPv6 Server

As a Windows host I will still use the RA prefix to create

temporary (SLAAC) addresses)

0

The autonomous address configuration (A) flag tells hosts that they can create an address for themselves by combining the prefix in the RA with an interface identifier.

©

Obtaining an IPv6 Address Automatically

8.2: Stateless DHCPv6

©

DHCPv6

• SLAAC was discussed in Lesson 7.

Global Unicast

Manual Dynamic

StaticIPv6

unnumbered

Static + EUI 64

SLAAC DHCPv6

SLAAC + DHCPv6

Similar to IPv4 unnumbered

Stateless Stateful

DHCPv6-PD

©

RA Message

DHCPv6 Server

RA

Router(config)# ipv6 unicast-routing

Option 1: SLAAC – No DHCPv6 (Default on Cisco routers)

“I’m everything you need (Prefix, Prefix-length, Default Gateway)”

Option 2: SLAAC + Stateless DHCPv6 for DNS address

“Here is my information but you need to get other information such as DNS addresses from a DHCPv6 server.” (DNS can be in RA)

Option 3: All addressing except default gateway use DHCPv6

“I can’t help you. Ask a DHCPv6 server for all your information.”

DHCPv6

Option 1 and 2: Stateless Address Autoconfiguration• DHCPv6 Server does not maintain state of addressesOption 3: Stateful Address Configuration• Address received from DHCPv6 Server

©

DHCPv6 I created my own address (Stateless),

and have the default gateway, but I need a

DNS address…

IPv6 Router & DHCPv6 Server

SOLICIT To all DHCPv6 Servers 3

ADVERTISE Unicast

INFORMATION REQUESTTo all DHCPv6 Servers

REPLY Unicast

Router as a Stateless DHCPv6 Server

ICMPv6 Router Advertisement

4

5

6

• Option 2: Stateless DHCPv6• O Flag = 1, M Flag = 0

ICMPv6 Router Solicitation 1

2

Note: Domain name and DNS server list may be included if router (and end system) support RFC 6106 IPv6 RA Options for DNS Configuration.

©

Setting the Other Configuration Flag

ICMPv6 Router Advertisement

• Option 2: Stateless DHCPv6• O Flag = 1, M Flag = 0

Router(config)# interface gigabitethernet 0/0Router(config-if)# ipv6 nd other-config-flag

G 0/0

©

RA Message: Stateless DHCPv6

To: FF02::1 (All-IPv6 devices)

From: FE80::1 (Link-local address)

Prefix: 2001:DB8:CAFE:1::

Prefix-length: /64

Other Configuration Flag: 1

RA

1

MAC: 00-19-D2-8C-E0-4C

Prefix: 2001:DB8:CAFE:1::

Prefix-length: /64

Default Gateway: FE80::1

Global Unicast Address:

2001:DB8:CAFE:1: + Interface ID

2001:DB8:CAFE:1::/64

EUI-64 Process or Random 64-bit value

2

Stateless DHCPv6 Server3

SLAAC for Addressing & DNS for Other Information

2001:DB8:CAFE:1:6909:cb1c:36a0:a595DHCPv6For DNS

©

Configuring Router as a Stateless DHCPv6 Server

Step 1: Enable IPv6 routing to send ICMPv6 Router AdvertisementRouter(config)# ipv6 unicast-routing

Step 2: Configure “stateless” DHCPv6 and parametersRouter(config)# ipv6 dhcp pool pool-nameRouter(config-dhcpv6)# dns-server dns-server-addressRouter(config-dhcpv6)# domain-name domain-name

Step 3: Configure interface: RA message and DHCPv6 serverRouter(config)# interface type numberRouter(config-if)# ipv6 nd other-config-flagRouter(config-if)# ipv6 dhcp server pool-name

IPv6 Router & DHCPv6 Server

RA 0 = 1 DHCPv6

No client address information.

©

IPv6 Router & DHCPv6 Server

2001:DB8:CAFE:1/64G0/0:1

DNS Server

Configuring Router as a Stateless DHCPv6 Server

RA Message

DHCPv6

O Flag = 1, M Flag = 0

I created my own address (Stateless),

and now I need to get a DNS address using stateless DHCPv6.

2001:DB8:CAFE:9::99

©

Router(config)# ipv6 unicast-routing

Router(config)# ipv6 dhcp pool IPV6-STATELESSRouter(config-dhcpv6)# dns-server 2001:DB8:CAFE:9::99Router(config-dhcpv6)# domain-name www.example.com

Router(config)# interface GigabitEthernet 0/0Router(config-if)# ipv6 address 2001:DB8:CAFE:1::1/64Router(config-if)# ipv6 address FE80::1 link-localRouter(config-if)# ipv6 nd other-config-flagRouter(config-if)# ipv6 dhcp server IPV6-STATELESS

Configuring Router as a Stateless DHCPv6 Server2001:DB8:CAFE:1/64G0/0

:1DNS Server

2001:DB8:CAFE:9::99 RAO = 1

DHCPv6

©

PC> ipconfig /all

Physical Address. . . .: 00-21-9B-88-0E-40 IPv6 Address. . . . . .: 2001:db8:cafe:1:6909:cb1c:36a0:a595 Default Gateway . . . .: fe80::1 DNS Servers . . . . . .: 2001:db8:cafe:9::99 Connection-specific DNS Suffix Search List: www.example.com

2001:DB8:CAFE:1/64G0/0:1

DNS Server

2001:DB8:CAFE:9::99 RAO = 1

DHCPv6

Verifying Stateless DHCPv6 Server Configuration

Random 64 bits

©

Router# show ipv6 interface gigabitethernet 0/0GigabitEthernet 0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::1 Global unicast address(es): 2001:DB8:CAFE:1::1, subnet is 2001:DB8:CAFE:1::/64 <Output omitted> Hosts use stateless autoconfig for addresses. Hosts use DHCP to obtain other configuration.Router#

2001:DB8:CAFE:1/64G0/0:1

DNS Server

2001:DB8:CAFE:9::99 RAO = 1

DHCPv6

Verifying Stateless DHCPv6 Server Configuration

8.3: Stateful DHCPv6

©

RA Message

DHCPv6 Server

RA

Router(config)# ipv6 unicast-routing

Option 1: SLAAC – No DHCPv6 (Default on Cisco routers)

“I’m everything you need (Prefix, Prefix-length, Default Gateway)”

Option 2: SLAAC + Stateless DHCPv6 for DNS address

“Here is my information but you need to get other information such as DNS addresses from a DHCPv6 server.” (DNS can be in RA)

Option 3: All addressing except default gateway use DHCPv6

“I can’t help you. Ask a DHCPv6 server for all your information.”

DHCPv6

Option 1 and 2: Stateless Address Autoconfiguration• DHCPv6 Server does not maintain state of addressesOption 3: Stateful Address Configuration• Address received from DHCPv6 Server

©

DHCPv6 I’m only using the default gateway address from the

RA. I need to contact a stateful DHCPv6 server for all my addressing.

IPv6 Router & DHCPv6 Server

SOLICIT To all DHCPv6 Servers 3

ADVERTISE Unicast

REQUESTTo all DHCPv6 Servers

REPLY Unicast

Router as a Stateful DHCPv6 Server

ICMPv6 Router Advertisement

4

5

6

• Option 3: Stateful DHCPv6• O Flag = 0, M Flag = 1

ICMPv6 Router Solicitation 1

2

©

Setting the Managed Configuration Flag

ICMPv6 Router Advertisement

• Option 3 Stateful DHCPv6 • O Flag = 0, M Flag = 1

Router(config)# interface gigabitethernet 0/1Router(config-if)# ipv6 nd managed-config-flag

G 0/1

DHCPv6

DHCPv6 Server

©

Stateful DHCPv6 without SLAAC

ICMPv6 Router Advertisement

• Option 3 Stateful DHCPv6 • O Flag = 0, M Flag = 1• No SLAAC: A Flag = 0

Router(config)# interface gigabitethernet 0/1Router(config-if)# ipv6 nd managed-config-flagRouter(config-if)# ipv6 nd prefix prefix/length no-autoconfig

G 0/1

DHCPv6

DHCPv6 Server

• no-autoconfig (Optional) Indicates to hosts on the local link that the specified prefix cannot be used for IPv6 autoconfiguration (SLAAC).

• The prefix will be advertised with the A-bit clear (autonomous address-configuration flag).

As a Windows host I will still use the RA prefix to create

temporary (SLAAC) addresses)

©

RA Message: Stateful DHCPv6

To: FF02::1 (All-IPv6 devices)

From: FE80::1 (Link-local address)

Prefix: 2001:DB8:CAFE:2::

Prefix-length: /64

Managed Configuration Flag: 1

Autonomous Address Flag: 0

RA

1

Default Gateway: FE80::1

Global Unicast Address: DHCPv6

2001:DB8:CAFE:2::/64

2

Stateful DHCPv6 Server

Stateful DHCPv6

DHCPv6

As a Windows host I will still use the RA prefix to create

temporary (SLAAC) addresses)

©

Configuring Router as a Stateful DHCPv6 Server

Step 1: Enable IPv6 routing to send ICMPv6 Router AdvertisementRouter(config)# ipv6 unicast-routing

Step 2: Configure “stateful” DHCPv6 and parametersRouter(config)# ipv6 dhcp pool pool-nameRouter(config-dhcpv6)# address prefix prefix/lengthRouter(config-dhcpv6)# dns-server dns-server-addressRouter(config-dhcpv6)# domain-name domain-name

Step 3: Configure interface: RA message and DHCPv6 serverRouter(config)# interface type numberRouter(config-if)# ipv6 nd managed-config-flagRouter(config-if)# ipv6 nd prefix prefix/prefix-length no-autoconfigRouter(config-if)# ipv6 dhcp server pool-name

IPv6 Router & DHCPv6 Server

RAM = 1 A=1 DHCPv6

Client address information.

©

Router(config)# ipv6 unicast-routing

Router(config)# ipv6 dhcp pool IPV6-STATEFULRouter(config-dhcpv6)# address prefix 2001:DB8:CAFE:2:DEED::/80Router(config-dhcpv6)# dns-server 2001:DB8:CAFE:9::99Router(config-dhcpv6)# domain-name www.example.com

Router(config)# interface GigabitEthernet 0/1Router(config-if)# ipv6 address 2001:DB8:CAFE:2::1/64Router(config-if)# ipv6 address FE80::1 link-localRouter(config-if)# ipv6 nd managed-config-flagRouter(config-if)# ipv6 dhcp server IPV6-STATEFUL

Configuring Router as a Stateful DHCPv6 Server2001:DB8:CAFE:2/64G0/1

:1DNS Server

2001:DB8:CAFE:9::99 RAM = 1

DHCPv6

©

Router-IPV4(config)# ip dhcp excluded-address 192.168.1.1 192.168.1.9

Including Only Valid Addresses to Be Assigned• With IPv4, a router enabled as a DHCPv4 server we specifically

EXCLUDE addresses from being assigned.• All other addresses are INCLUDED as possible assigned addresses.

• With IPv6, a router enabled as a DHCPv6 server we specifically INCLUDE addresses to be assigned.

• All other addresses are EXCLUDED as possible assigned addresses.• Using the prefix length of the LAN may include the router’s address and

other statically assigned addresses.Router(config-dhcpv6)# address prefix 2001:DB8:CAFE:2::/64

Router(config-dhcpv6)# address prefix 2001:DB8:CAFE:2:DEED::/80

©

Including Specific Addresses

2001:DB8:CAFE:2::/642001:DB8:CAFE:2:0:0:0:02001:DB8:CAFE:2:FFFF:FFFF:FFFF:FFFF

2001:DB8:CAFE:2:DEED::/802001:DB8:CAFE:2:DEED:0:0:02001:DB8:CAFE:2:DEED:0:0:12001:DB8:CAFE:2:DEED:0:0:2 . . .

/64 /80

INCLUDED assigned addresses will have these 80 bits.

Available addresses for this network

Router(config-dhcpv6)# address prefix 2001:DB8:CAFE:2:DEED::/80

All other addresses are EXCLUDED

©

PC> ipconfig /all

Physical Address. . . .: 00-21-9B-88-0E-40 IPv6 Address. . . . . .: 2001:db8:cafe:2:deed:2de8:cfd8:5 Default Gateway . . . .: fe80::1 DNS Servers . . . . . .: 2001:db8:cafe:9::99 Connection-specific DNS Suffix Search List: www.example.com

2001:DB8:CAFE:2/64G0/1:1

DNS Server

2001:DB8:CAFE:9::99 RAM = 1

DHCPv6

Verifying Stateful DHCPv6 Server Configuration

©

Router# show ipv6 interface gigabitethernet 0/1GigabitEthernet 0/1 is up, line protocol is up IPv6 is enabled, link-local address is FE80::1 Global unicast address(es): 2001:DB8:CAFE:2::1, subnet is 2001:DB8:CAFE:2::/64 <output omitted> Hosts use DHCP to obtain routable addresses.Router#

2001:DB8:CAFE:2/64G0/1:1

DNS Server

2001:DB8:CAFE:9::99 RAM = 1

DHCPv6

Verifying Stateful DHCPv6 Server Configuration

©

Router(config)# ipv6 unicast-routing

Router(config)# ipv6 dhcp pool IPV6-STATELESSRouter(config-dhcpv6)# dns-server 2001:DB8:CAFE:9::99Router(config-dhcpv6)# domain-name www.example.com

Router(config)# ipv6 dhcp pool IPV6-STATEFULRouter(config-dhcpv6)# address prefix 2001:DB8:CAFE:2:DEED::/80Router(config-dhcpv6)# dns-server 2001:DB8:CAFE:9::99Router(config-dhcpv6)# domain-name www.example.com

Router(config)# interface GigabitEthernet 0/0Router(config-if)# ipv6 address 2001:DB8:CAFE:1::1/64Router(config-if)# ipv6 address FE80::1 link-localRouter(config-if)# ipv6 nd other-config-flagRouter(config-if)# ipv6 dhcp server IPV6-STATELESS

Router(config)# interface GigabitEthernet 0/1Router(config-if)# ipv6 address 2001:DB8:CAFE:2::1/64Router(config-if)# ipv6 address FE80::1 link-localRouter(config-if)# ipv6 nd managed-config-flagRouter(config-if)# ipv6 dhcp server IPV6-STATEFUL

Stateless and Stateful DHCPv6 Server

G0/1

G0/0

StatelessS

tateful

8.4: DHCPv6 Relay

©

Forwarding DHCPv6 Messages

Relay agent creates a RELAY-FORWARD message containing the original DHCPv6 message from the client and forwards the message to a server. The ipv6-address can be:• Unicast or multicast IPv6 address

• Link-scope: The output interface must be specified for this kind of address.

2001:DB8:CAFE:2/64G0/1:1

DHCPv6 Server

2001:DB8:CAFE:9::55

DHCPv6

Router(config)# interface GigabitEthernet 0/1Router(config-if)# ipv6 dhcp relay destination ipv6-address [exit-int]

RELAY-FORWARD

G0/0:1

©

Forwarding DHCPv6 Messages using unicast

When the destination of the DHCP server is a global unicast address, no multicast routing is required.

2001:DB8:CAFE:2/64G0/1:1

DHCPv6 Server

2001:DB8:CAFE:9::55

DHCPv6

Router(config)# ipv6 unicast-routing

Router(config)# interface GigabitEthernet 0/1Router(config-if)# ipv6 nd managed-config-flagRouter(config-if)# ipv6 dhcp relay destination 2001:DB8:CAFE:9::55 g0/0

RELAY-FORWARD

To: 2001:DB8:CAFE:9::55

G0/0:1

Only required if link-local unicast is used

©

Forwarding DHCPv6 Messages using Multicast

When the destination of the DHCP server is FF05::1:3 (All-DHCPv6 Servers) multicast address, then we need multicast routing enabled for IPv6.

2001:DB8:CAFE:2/64G0/1:1

DHCPv6 Server

2001:DB8:CAFE:9::55

DHCPv6

Router(config)# ipv6 unicast-routingRouter(config)# ipv6 multicast-routing

Router(config)# interface GigabitEthernet 0/1Router(config-if)# ipv6 nd managed-config-flagRouter(config-if)# ipv6 dhcp relay destination FF05::1:3

RELAY-FORWARD

To FF05::1:3 All-DHCPv6 Servers

G0/0:1

8.5: DHCPv6 Prefix Delegation Process

©

DHCPv4 and Private Addresses for the Home

• ISP only has to deliver a public IPv4 address for Home router interface.• DHCPv4 and RFC 1918 private address space is used for home

network.• NAT is used for translation – but has its drawbacks!• No NAT between private-public IPv6 (always in debate)

ISP HOME

Public IPv4 Addressfor the interface

G0/1 G0/1

10.0.0.0/8172.16.0.0/12192.168.0.0/16

G0/0

Private IPv4 Address

NAT

DHCPv4 DHCPv4

©

The World of IPv6 and DHCPv6-PD

• IPv6 end-to-end reachability:• Home network gets its own IPv6 prefix (public address)• No NAT

• Uses DHCPv6-PD (Prefix Delegation)• ISP router is known as the Delegating Router (DR)• HOME router is known as the Requesting Router (RR)

ISP-DR HOME-RRG0/1 G0/1 G0/0

Delegating Router (DR)

Requesting Router (RR)

Global IPv6 Address Global IPv6 Address

Complete IPv6 Reachability

©

HOME Router’s ISP Facing Interface

• First, HOME’s ISP facing interface needs an IPv6 address.• Similar to any IPv6 client it may dynamically get an address using:

• SLAAC - Using prefix in RA• Stateless DHCPv6 – SLAAC but DHCPv6 for DNS address• Stateful DHCPv6 - Like DHCPv4

• What about the address for the HOME LAN?

ISP-DR HOME-RRG0/1 G0/1 G0/0

Delegating Router (DR)

Requesting Router (RR)

IPv6 Address for the interface:• SLAAC • DHCPv6 (Stateful or Stateless)

?

©

DHCPv6-PD Steps Overview

HOME-RR first gets an IPv6 address on its ISP-facing interface, then:• Step 1: Request a Prefix for its LAN(s)• Step 2: Subnet the prefix for its LANs (optional) – Get a /48 but assign /64s• Step 3: Assign an IPv6 address from the prefix to its LAN interface Advertises the prefix in a Router Advertisement to devices on the LAN

ISP-DR HOME-RRG0/1 G0/1 G0/0

Delegating Router (DR)

Requesting Router (RR)

Global IPv6 Address Global IPv6 Address

©

DHCPv6 Steps 1 and 2

Step 1. HOME asks the ISP for an address to allocate for it’s LANs • DHCPv6-PD is initiated by the RR

Step 2. ISP delegates an IPv6 prefix for HOME• Example: ISP sends HOME a /48 prefix

ISP-DR HOME-RRG0/1 G0/1 G0/0

Delegating Router (DR)

Requesting Router (RR)

G0/2DHCPv6-PD REQUEST

DHCPv6-PD REPLY with /48 prefix

1

2

©

DHCPv6 Step 3

Step 3. HOME advertises prefix using SLAAC RA messages (currently only option)• HOME assigns an address from the prefix to its LAN interface and… advertises the prefix out its interface using ICMPv6 RA messages• HOME assigns the prefix or subnets of the prefix to one or more interfaces• Example: HOME interfaces are assigned /64 subnets from the /48 prefix

ISP-DR HOME-RRG0/1 G0/1 G0/0

Delegating Router (DR)

Requesting Router (RR)

G0/2DHCPv6-PD REQUEST

DHCPv6-PD REPLY with /48 prefix

1

2

RA with /64 prefix3

RA with /64 prefix

3

RA with prefix

8.6: DHCPv6-PD Configuration Example

©

Our Example

• HOME’s G0/1 interface gets an address using SLAAC• ISP delegates 2001:DB8:AB00::/48 prefix to HOME for its LANs using DHCP-PD• HOME will use the 2001:DB8:AB00:1::/64 subnet for its G0/0 LAN.• Assign :1 to the G0/0 interface• HOME will send 2001:DB8:AB00:1::/64 prefix and other information in RA.

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/0:1

2001:DB8:AB00:1::/642001:DB8:FEED:6::/64

Router Advertisement2001:DB8:AB00:1::/64

Router Advertisement2001:DB8:FEED:6::/64

DHCPv6-PD Prefix Delegation for the HOME2001:DB8:AB00:/48

SLAAC

SLAAC

©

Another Look at the Process

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/0:1

ICMPv6 Router Advertisement

ICMPv6 Router Solicitation

SOLICIT: Prefix Delegation request

ADVERTISE

REQUEST

REPLY: Include Prefix

ICMPv6 Router Advertisement (RA)SLAAC

DHCPv6-PD

Other options are Stateless and Stateful DHCPv6

RR must be enabled with the PD option

©

HOME-RR Configuration (1 of 2)

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/0

Router Advertisement

Router Solicitation

DHCPv6-PD Request

HOME(config)# ipv6 unicast-routing ! Required to send RA ! for LAN (next slide)HOME(config)# interface gig 0/1HOME(config-if)# ipv6 address autoconfig default ! Use RA & add defaultHOME(config-if)# ipv6 dhcp client pd DHCPV6-PREFIX-FROM-ISP ! Request DHCPv6-PD HOME(config)# interface gig 0/0HOME(config-if)# ipv6 address DHCPV6-PREFIX-FROM-ISP 0:0:0:1::1/64 ! Next slide

©

HOME-RR Configuration (2 of 2)

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/0

HOME(config)# ipv6 unicast-routing ! Required to send RA ! for LAN (next slide)HOME(config)# interface gig 0/1HOME(config-if)# ipv6 address autoconfig default ! Use RA & add defaultHOME(config-if)# ipv6 dhcp client pd DHCPV6-PREFIX-FROM-ISP ! Request DHCPv6-PD

HOME(config)# interface gig 0/0HOME(config-if)# ipv6 address DHCPV6-PREFIX-FROM-ISP 0:0:0:1::1/64 ! For RA

Router AdvertisementDHCPv6-PD Request

DHCPv6-PD Reply

2001:DB8:AB00:1::/64

2001:DB8:AB00::/482001:DB8:AB00:1::/64

::1

First 48 bits uses prefix in DHCPv6-PD 2001:DB8:AB00::Subnet-ID Interface ID

Prefix Length

©

ISP-DR Configuration (1 of 2)

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/0RA

DHCPv6-PD Reply2001:DB8:AB00::/48

ISP(config)# ipv6 unicast-routingISP(config)# interface gig 0/1ISP(config-if)# ipv6 address 2001:db8:feed:6::1/64ISP(config-if)# ipv6 address fe80::feed:1 link-localISP(config-if)# ipv6 dhcp server DHCPV6-CLIENT-ADDRESS

ISP(config)# ipv6 dhcp pool DHCPV6-CLIENT-ADDRESSISP(config-dhcpv6)# prefix-delegation pool DHCPV6-PD-POOLISP(config-dhcpv6)# dns-server 2001:DB8:CAFE:9::99ISP(config-dhcpv6)# domain-name example.com

ISP(config)# ipv6 local pool DHCPV6-PD-POOL 2001:DB8:AB00::/40 48

DHCPv6-PD Request

2001:DB8:FEED:6::/64

2001:DB8:AB00::/48

DNSServer

©

ISP-DR Configuration (2 of 2)

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/0

DHCPv6-PD Reply2001:DB8:AB00::/48

2001:DB8:FEED:6::/64

2001:DB8:AB00::/40

2001:DB8:AB00::/482001:DB8:AB01::/48 2001:DB8:AB02::/48 …2001:DB8:ABFF::/48

ISP(config)# ipv6 dhcp pool DHCPV6-CLIENT-ADDRESSISP(config-dhcpv6)# prefix-delegation pool DHCPV6-PD-POOLISP(config-dhcpv6)# dns-server 2001:DB8:CAFE:9::99ISP(config-dhcpv6)# domain-name example.com

ISP(config)# ipv6 local pool DHCPV6-PD-POOL 2001:DB8:AB00::/40 48 ! PD pool

Reserve a /40 to allocate addresses for ISP’s DHCPv6-PD clients 2001:DB8:ABxx::/40

From the /40 each DHCPv6-PD client will get a /48

©

HOME-RR Applies DHCPv6-PD Information on G0/0

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/0

DHCPv6-PD Reply2001:DB8:AB00::/48

2001:DB8:FEED:6::/64

ISP(config)# ipv6 dhcp pool DHCPV6-CLIENT-ADDRESSISP(config-dhcpv6)# prefix-delegation pool DHCPV6-PD-POOLISP(config-dhcpv6)# dns-server 2001:DB8:CAFE:9::99

ISP(config)# ipv6 local pool DHCPV6-PD-POOL 2001:DB8:AB00::/40 48 ! PD pool

ipv6 address DHCPV6-PREFIX-FROM-ISP 0:0:0:1::1/64

First 48 bits uses prefix in DHCPv6-PD 2001:DB8:AB00:: Subnet-ID Interface ID

Prefix

::1

2001:DB8:AB00:1::/64

Router Advertisement2001:DB8:AB00:1::/64

8.7: Verifying DHCPv6-PD

©

Verifying ISP-DR DHCPv6 Pool

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/02001:DB8:FEED:6::/64

::1

2001:DB8:AB00:1::/64

ISP# show ipv6 dhcp interface gig 0/1GigabitEthernet0/1 is in server mode Using pool: DHCPV6-CLIENT-ADDRESS Preference value: 0 Hint from client: ignored Rapid-Commit: disabledISP# ISP(config)# interface gig 0/1

ISP(config-if)# ipv6 dhcp server DHCPV6-CLIENT-ADDRESS

ISP(config)# ipv6 dhcp pool DHCPV6-CLIENT-ADDRESSISP(config-dhcpv6)# prefix-delegation pool DHCPV6-PD-POOLISP(config-dhcpv6)# dns-server 2001:DB8:CAFE:9::99

ISP(config)# ipv6 local pool DHCPV6-PD-POOL 2001:DB8:AB00::/40 48

©

Verifying ISP-DR DHCPv6 Pool Information

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/02001:DB8:FEED:6::/64

::1

2001:DB8:AB00:1::/64

ISP# show ipv6 local pool DHCPV6-PD-POOLPrefix is 2001:DB8:AB00::/40 assign /48 prefix1 entries in use, 255 available, 0 rejected0 entries cached, 1000 maximumUser Prefix Interface 00030001885A923B29E000040001 2001:DB8:AB00::/48 ISP#

ISP(config)# ipv6 local pool DHCPV6-PD-POOL 2001:DB8:AB00::/40 48

Reserve a /40 to allocate addresses for ISP’s DHCPv6-PD clients 2001:DB8:ABxx::/40

From the /40 each DHCPv6-PD client will get a /48

©

Verifying HOME-RR Addresses

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/02001:DB8:FEED:6::/64

::1

2001:DB8:AB00:1::/64

HOME# show ipv6 interface briefGigabitEthernet0/0 [up/up] FE80::1 2001:DB8:AB00:1::1GigabitEthernet0/1 [up/up] FE80::8A5A:92FF:FE3B:29E1 2001:DB8:FEED:6:8A5A:92FF:FE3B:29E1HOME-RR#

HOME(config)# ipv6 unicast-routingHOME(config)# interface gig 0/1HOME(config-if)# ipv6 address autoconfig default HOME(config-if)# ipv6 dhcp client pd DHCPV6-PREFIX-FROM-ISP

HOME(config)# interface gig 0/0HOME(config-if)# ipv6 address DHCPV6-PREFIX-FROM-ISP 0:0:0:1::1/64

DHCPv6-PD

SLAAC

©

Verifying HOME-RR Addresses

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/02001:DB8:FEED:6::/64

::1

2001:DB8:AB00:1::/64

HOME# show ipv6 interface gig 0/0GigabitEthernet0/0 is up, line protocol is up General-prefix in use for addressing Global unicast address(es): 2001:DB8:AB00:1::1, subnet is 2001:DB8:AB00:1::/64 [CAL/PRE] <Output ommited> Hosts use stateless autoconfig for addresses.HOME#

HOME(config)# ipv6 unicast-routingHOME(config)# interface gig 0/1HOME(config-if)# ipv6 address autoconfig default HOME(config-if)# ipv6 dhcp client pd DHCPV6-PREFIX-FROM-ISP

HOME(config)# interface gig 0/0HOME(config-if)# ipv6 address DHCPV6-PREFIX-FROM-ISP 0:0:0:1::1/64

Router Advertisement2001:DB8:AB00:1::/64

©

Verifying HOME-RR Routing Table

ISP-DR HOME-RR

G0/1 G0/1EUI-64

G0/02001:DB8:FEED:6::/64

::1

2001:DB8:AB00:1::/64

HOME# show ipv6 routeIPv6 Routing Table - default - 7 entriesCodes: ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr – Redirect

ND ::/0 [2/0] via FE80::FEED:1, GigabitEthernet0/1S 2001:DB8:AB00::/48 [1/0] via Null0, directly connected<Output omitted>HOME# HOME(config)# ipv6 unicast-routing

HOME(config)# interface gig 0/1HOME(config-if)# ipv6 address autoconfig default HOME(config-if)# ipv6 dhcp client pd DHCPV6-PREFIX-FROM-ISP

HOME(config)# interface gig 0/0HOME(config-if)# ipv6 address DHCPV6-PREFIX-FROM-ISP 0:0:0:1::1/64

Default Route2001:DB8:AB00::/48X

©

For more information please check out my Cisco Press book and video series:

IPv6 Fundamentals: A Straightforward Approach to Understanding IPv6• By Rick Graziani• ISBN-10: 1-58714-313-5

IPv6 Fundamentals LiveLessons: A Straightforward Approach to Understanding IPv6• By Rick Graziani• ISBN-10: 1-58720-457-6

8: DHCPv6 (Dynamic Host Configuration Protocol for IPv6)

Rick GrazianiCabrillo College

[email protected]