Introduction To DHCPv6 and DHCPv6 For DOCSIS
Introduction To DHCPv6 and DHCPv6 For DOCSIS
NANOG46
John Jason Brzozowski
June 2009
Overview
SOLICIT
ADVERTISE
Server Client
REQUEST
REPLY
Stateful DHCPv6 Message Exchange
Detail (SOLICIT)
DHCPv6 Identity Association for Non-temporary Address
Message type: Solicit (1) option type: 3
Transaction-ID: 0x0095d266 option length: 40
Client Identifier IAID: 1041795326
option type: 1
T1: 3600
option length: 14
T2: 5400
DUID type: link-layer address plus time (1)
Hardware type: Ethernet (1) IA Address
Time: 281507745 option type: 5
Link-layer address: 00:16:3e:18:88:fe option length: 24
Option Request IPv6 address:
option type: 6 2001:558:ff10:870:f914:a7c1:42d1:faa1
option length: 4 Preferred lifetime: 7200
Requested Option code: DNS recursive name Valid lifetime: 10800
server (23)
Requested Option code: Domain Search List (24)
Elapsed time
option type: 8
option length: 2
elapsed-time: 0 ms
Stateful DHCPv6 Message Exchange
Detail (ADVERTISE)
DHCPv6 Client Identifier
Message type: Advertise (2) option type: 1
Transaction-ID: 0x0095d266 option length: 14
Identity Association for Non-temporary Address DUID type: link-layer address plus time (1)
option type: 3 Hardware type: Ethernet (1)
option length: 40 Time: 281507745
IAID: 1041795326 Link-layer address: 00:16:3e:18:88:fe
T1: 0 Server Identifier
T2: 0 option type: 2
IA Address option length: 14
option type: 5 DUID type: link-layer address plus time (1)
option length: 24 Hardware type: Ethernet (1)
IPv6 address: Time: 281498447
2001:558:ff10:870:f914:a7c1:42d1:faa1 Link-layer address: 00:16:3e:60:6d:5d
Preferred lifetime: 75
Valid lifetime: 120
Stateful DHCPv6 Message Exchange
Detail (REQUEST)
DHCPv6 Elapsed time
Message type: Request (3) option type: 8
Transaction-ID: 0x0086a342 option length: 2
Client Identifier elapsed-time: 0 ms
option type: 1
Identity Association for Non-temporary Address
option length: 14
option type: 3
DUID type: link-layer address plus time (1)
Hardware type: Ethernet (1) option length: 40
Time: 281507745 IAID: 1041795326
Link-layer address: 00:16:3e:18:88:fe T1: 3600
Server Identifier T2: 5400
option type: 2 IA Address
option length: 14 option type: 5
DUID type: link-layer address plus time (1) option length: 24
Hardware type: Ethernet (1) IPv6 address:
Time: 281498447 2001:558:ff10:870:f914:a7c1:42d1:faa1
Link-layer address: 00:16:3e:60:6d:5d Preferred lifetime: 7200
Option Request
Valid lifetime: 7500
option type: 6
option length: 4
Requested Option code: DNS recursive name
server (23)
Requested Option code: Domain Search List (24)
Stateful DHCPv6 Message Exchange
Detail (REPLY)
DHCPv6 Client Identifier
Message type: Reply (7) option type: 1
Transaction-ID: 0x0086a342 option length: 14
Identity Association for Non-temporary Address DUID type: link-layer address plus time (1)
option type: 3 Hardware type: Ethernet (1)
option length: 40 Time: 281507745
IAID: 1041795326 Link-layer address: 00:16:3e:18:88:fe
T1: 0 Server Identifier
T2: 0 option type: 2
IA Address option length: 14
option type: 5 DUID type: link-layer address plus time (1)
option length: 24 Hardware type: Ethernet (1)
IPv6 address: Time: 281498447
2001:558:ff10:870:f914:a7c1:42d1:faa1 Link-layer address: 00:16:3e:60:6d:5d
Preferred lifetime: 75
Valid lifetime: 120
Stateful DHCPv6 Message Exchange
(Rapid Commit)
SOLICIT
Server Client
REPLY
Stateful DHCPv6 - Rapid Commit
Message Exchange Detail (SOLICIT)
DHCPv6 Rapid Commit
Message type: Solicit (1) option type: 14
Transaction-ID: 0x00d8bf63 option length: 0
Client Identifier Identity Association for Non-temporary Address
option type: 1
option type: 3
option length: 14
option length: 40
DUID type: link-layer address plus time (1)
Hardware type: Ethernet (1) IAID: 1041795326
Time: 281507745 T1: 3600
Link-layer address: 00:16:3e:18:88:fe T2: 5400
Option Request IA Address
option type: 6 option type: 5
option length: 4 option length: 24
Requested Option code: DNS recursive name IPv6 address:
server (23) 2001:558:ff10:870:f914:a7c1:42d1:faa1
Requested Option code: Domain Search List (24) Preferred lifetime: 7200
Elapsed time
Valid lifetime: 10800
option type: 8
option length: 2
elapsed-time: 0 ms
Stateful DHCPv6 - Rapid Commit
Message Exchange Detail (REPLY)
DHCPv6 Server Identifier
Message type: Reply (7) option type: 2
Transaction-ID: 0x00d8bf63 option length: 14
Identity Association for Non-temporary Address DUID type: link-layer address plus time (1)
option type: 3
Hardware type: Ethernet (1)
option length: 40
Time: 281498447
IAID: 1041795326
T1: 0 Link-layer address: 00:16:3e:60:6d:5d
T2: 0 Rapid Commit
IA Address option type: 14
option type: 5 option length: 0
option length: 24
IPv6 address:
2001:558:ff10:870:f914:a7c1:42d1:faa1
Preferred lifetime: 75
Valid lifetime: 120
Client Identifier
option type: 1
option length: 14
DUID type: link-layer address plus time (1)
Hardware type: Ethernet (1)
Time: 281507745
Link-layer address: 00:16:3e:18:88:fe
Stateful DHCPv6 Message Exchange
(with Relay Agent)
RELAY-FORW SOLICIT
RELAY-REPLY ADVERTISE
Relay
Server Client
Agent
RELAY-FORW REQUEST
RELAY-REPLY REPLY
Stateful DHCPv6 Message Exchange
Detail with Relay Agent (SOLICIT)
DHCPv6 Option Request
Message type: Relay-forw (12) option type: 6
Hop count: 0 option length: 4
Link-address: 2001:470:1f01:3164:192:168::3 Requested Option code: DNS recursive name server
Peer-address: fe80::260:8ff:fed1:d51f (23)
Interface-Id Requested Option code: Domain Search List (24)
option type: 18 Elapsed time
option length: 4 option type: 8
Interface-ID option length: 2
Relay Message elapsed-time: 0 ms
option type: 9 Identity Association for Non-temporary Address
option length: 80 option type: 3
DHCPv6 option length: 40
Message type: Solicit (1) IAID: 147969311
Transaction-ID: 0x00c2aab6 T1: 3600
Client Identifier T2: 5400
option type: 1 IA Address
option length: 14 option type: 5
DUID type: link-layer address plus time (1) option length: 24
Hardware type: Ethernet (1) IPv6 address: 2001:470:1f01:3164:4916:62de:123e:
19b
Time: 282016307
Preferred lifetime: 7200
Link-layer address: 00:60:08:d1:d5:1f
Valid lifetime: 10800
Stateful DHCPv6 Message Exchange
Detail with Relay Agent (ADVERTISE)
DHCPv6 Client Identifier
Message type: Relay-reply (13) option type: 1
Hop count: 0 option length: 14
Link-address: 2001:470:1f01:3164:192:168::3 DUID type: link-layer address plus time (1)
Peer-address: fe80::260:8ff:fed1:d51f
Hardware type: Ethernet (1)
Interface-Id
Time: 282016307
option type: 18
Link-layer address: 00:60:08:d1:d5:1f
option length: 4
Interface-ID Server Identifier
Relay Message option type: 2
option type: 9 option length: 14
option length: 84 DUID type: link-layer address plus time (1)
DHCPv6 Hardware type: Ethernet (1)
Message type: Advertise (2) Time: 282033914
Transaction-ID: 0x00c2aab6 Link-layer address: 00:11:11:69:c7:99
Identity Association for Non-temporary Address
option type: 3
option length: 40
IAID: 147969311
T1: 0
T2: 0
IA Address
option type: 5
option length: 24
IPv6 address: 2001:470:1f01:3164:4916:62de:123e:
19b
Preferred lifetime: 75
Valid lifetime: 120
Stateful DHCPv6 Message Exchange
Detail with Relay Agent (REQUEST)
DHCPv6 Option Request
Message type: Relay-forw (12) option type: 6
Hop count: 0 option length: 4
Link-address: 2001:470:1f01:3164:192:168::3 Requested Option code: DNS recursive name server
Peer-address: fe80::260:8ff:fed1:d51f (23)
Interface-Id Requested Option code: Domain Search List (24)
option type: 18
Elapsed time
option length: 4
option type: 8
Interface-ID
option length: 2
Relay Message
option type: 9 elapsed-time: 0 ms
option length: 98 Identity Association for Non-temporary Address
DHCPv6 option type: 3
Message type: Request (3) option length: 40
Transaction-ID: 0x00906783 IAID: 147969311
Client Identifier T1: 3600
option type: 1 T2: 5400
option length: 14 IA Address
DUID type: link-layer address plus time (1)
option type: 5
Hardware type: Ethernet (1)
option length: 24
Time: 282016307
IPv6 address: 2001:470:1f01:3164:4916:62de:123e:
Link-layer address: 00:60:08:d1:d5:1f
19b
Server Identifier
Preferred lifetime: 7200
option type: 2
option length: 14 Valid lifetime: 7500
DUID type: link-layer address plus time (1)
Hardware type: Ethernet (1)
Time: 282033914
Link-layer address: 00:11:11:69:c7:99
Stateful DHCPv6 Message Exchange
Detail with Relay Agent (REPLY)
DHCPv6 Client Identifier
Message type: Relay-reply (13) option type: 1
Hop count: 0 option length: 14
Link-address: 2001:470:1f01:3164:192:168::3 DUID type: link-layer address plus time (1)
Peer-address: fe80::260:8ff:fed1:d51f
Hardware type: Ethernet (1)
Interface-Id
Time: 282016307
option type: 18
Link-layer address: 00:60:08:d1:d5:1f
option length: 4
Interface-ID Server Identifier
Relay Message option type: 2
option type: 9 option length: 14
option length: 84 DUID type: link-layer address plus time (1)
DHCPv6 Hardware type: Ethernet (1)
Message type: Reply (7) Time: 282033914
Transaction-ID: 0x00906783 Link-layer address: 00:11:11:69:c7:99
Identity Association for Non-temporary Address
option type: 3
option length: 40
IAID: 147969311
T1: 0
T2: 0
IA Address
option type: 5
option length: 24
IPv6 address: 2001:470:1f01:3164:4916:62de:123e:
19b
Preferred lifetime: 75
Valid lifetime: 120
Stateless DHCPv6
• Auto-configuration
Server Client
REPLY
Stateless DHCPv6 Message Exchange
Detail (INFORMATION-REQUEST)
DHCPv6
Message type: Information-request (11)
Transaction-ID: 0x007b23c6
Client Identifier
option type: 1
option length: 14
DUID type: link-layer address plus time (1)
Hardware type: Ethernet (1)
Time: 281507745
Link-layer address: 00:16:3e:18:88:fe
Option Request
option type: 6
option length: 4
Requested Option code: DNS recursive name
server (23)
Requested Option code: Domain Search List (24)
Elapsed time
option type: 8
option length: 2
elapsed-time: 0 ms
Stateless DHCPv6 Message Exchange
Detail (REPLY)
DHCPv6
Message type: Reply (7)
Transaction-ID: 0x007b23c6
Client Identifier
option type: 1
option length: 14
DUID type: link-layer address plus time (1)
Hardware type: Ethernet (1)
Time: 281507745
Link-layer address: 00:16:3e:18:88:fe
Server Identifier
option type: 2
option length: 14
DUID type: link-layer address plus time (1)
Hardware type: Ethernet (1)
Time: 281498447
Link-layer address: 00:16:3e:60:6d:5d
Prefix Delegation
ADVERTISE
Server Client
REQUEST
REPLY
DHCPv6 Prefix Delegation Message Exchange
Detail with Relay Agent (SOLICIT)
• Timers
• T1 timer indicates when the DHCPv6 client must
attempt to renew IPv6 addresses or prefixes
• Lifetimes
• Preferred Lifetime is aligned with the IPv6 construct of
preferred lifetime
– At this lifetime IPv6 addresses or prefixes is valid
– Nodes must extend the lifetimes or prepare to abandon
the use of the same.
# server-a #server-b
option dhcp6.preference code 7 = unsigned integer 8; option dhcp6.preference code 7 = unsigned integer 8;
option dhcp6.preference 128; option dhcp6.preference 128;
# server-a #server-b
option dhcp6.preference code 7 = unsigned integer 8; option dhcp6.preference code 7 = unsigned integer 8;
option dhcp6.preference 128; option dhcp6.preference 128;
• Software resources
• ISC (www.isc.org)
– Open source DHCPv6 implementation
• Dibbler (http://klub.com.pl/dhcpv6)
– Open source DHCPv6 implementation
• Testing resources
• TAHI (www.tahi.org)
• UNH-IOL
– DHCPv6 Specification Test Suite
– DHCPv6 Interoperability Test Suite
DHCPv6 Server Configuration
Example
Basic server configuration using the ISC DHCPv6 server version 4.1.0rc1:
Usage:
Usage:
dhclient -r -6 eth0 # releases the binding associated with the DHCPv6 client
dhclient -S -6 eth0 # starts the DHCPv6 client on interface eth0 using stateless DHCPv6
dhclient -P -6 eth0 # starts the DHCPv6 client on interface eth0 using DHCPv6 PD
DHCPv6 Relay Configuration
Example
Basic relay agent configuration using the ISC DHCPv6 relay agent version 4.1.0rc1:
Terminology
Standards and References
Overview of DOCSIS
Protocol Overview
Modes of Operation
DOCSIS IPv6 Message Flow
Deployment Considerations
Terminology
CM – Cable Modem
CMTS - Cable Modem Termination System
MTA – Media Terminal Adapter (VoIP device)
STB – Set top Box
eMTA – Embedded MTA (CM-MTA in one device)
eSTB – Embedded STB (CM-STB in one device)
DOCSIS – Data over cable standard Interface specification
PacketCable – Specification to provision and support MTAs behind a CM
Provisioning – Assigning an IP-address, configuration information, and a
service tier to CM, MTA, etc.
DHCP - Dynamic Host Configuration Protocol
TFTP - Trivial File Transfer Protocol
TOD - Time of Day
Standards and References
• Cablelabs (www.cablelabs.com)
• DOCSIS 3.0 Specifications
– MAC and Upper Layer Protocols Interface
Specification (CM-SP-MULPIv3.0-I08-080522)
– CableLabs' Assigned Names and Numbers
(CL-SP-CANN-I02-080306)
– CableLabs' DHCP Options Registry (CL-SP-
CANN-DHCP-Reg-I02-080306)
• DOCSIS 2.0 + IPv6 Technical Report (CM-TR-
DOCSIS2.0-IPv6-V01-080307)
• IETF (www.ietf.org)
• RFC5007 - DHCPv6 Leasequery
Overview of DOCSIS (continued)
RELAY-REPLY ADVERTISE
Relay
Client
Server Agent
(CM)
(CMTS)
RELAY-FORW REQUEST
RELAY-REPLY REPLY
DOCSIS Stateful DHCPv6 Message Exchange
Detail with Relay Agent (SOLICIT)
Authentication option
option type: 11 option code: 34
option length: 28 option length: 16
Protocol: 3 option-data
Algorithm: 1 option
RDM: 0 option code: 38
Replay Detection option length: 4
Authentication Information option-data
Vendor-specific Information option
option type: 17 option code: 33
option length: 116 option length: 20
enterprise-number: 4491 option-data
option
option code: 37
option length: 16
option-data
option
option code: 32
option length: 16
option-data
option
option code: 2170
option length: 16
option-data
DOCSIS DHCPv6 Reconfigure
Message Exchange with Relay Agent
RECONFIGURE RECONFIGURE
Relay
Client
Server Agent
(CM)
(CMTS)
RELAY-FORW REQUEST
RELAY-REPLY REPLY
DOCSIS DHCPv6 Reconfigure Message Exchange Detail
with Relay Agent (RECONFIGURE)
Authentication option
option type: 11 option code: 34
option length: 28 option length: 16
Protocol: 3 option-data
Algorithm: 1 option
RDM: 0 option code: 38
Replay Detection option length: 4
Authentication Information option-data
Vendor-specific Information option
option type: 17 option code: 33
option length: 116 option length: 20
enterprise-number: 4491 option-data
option
option code: 37
option length: 16
option-data
option
option code: 32
option length: 16
option-data
option
option code: 2170
option length: 16
option-data
Q&A
• Contact information
John Jason Brzozowski
[email protected]