So what is DHCPv6 client mode and why can this help me? A while back Ivan Pepelnjak commented on the blog asking if the SRX had DHCPv6 client features such as IA_PD and IA_NA. Now as of version 12.1×45-D10 these features are supported on SRX100,110,210,220,240,550,650, and the J Series. It is also supported in any security zone so you can now receive DHCPv6 on an outside interface! Think HE brokered tunnel or pure IPv6 ISP!
In IPv6 each DHCPv6 server and client is marked with a DHCP unique identifier known as the DUID. It is unique across DHCPv6 clients and servers. Clients use these DUIDs to identify the correct server in the DHCP messages. Servers use DUIDs to figure out the configuration parameters used on the clients and when associated addresses. DUID is a type code in the network byte that is 2 octets. It followed by a variable number of octets which put together makes the identifier.
DHCPv6 addresses can be delivered in two methods. Stateful and Identity association nontemporary addresses (IA_NA) and Identity association prefix delegation (IA_PD). In a stateful address mode a client requests a global address from a server. Based upon the response the client assigns the interface and lease time for responses. Upon expiration, the client releases the existing address and renews the lease. IA_NA and IA_PD
DHCPv6 Client – Stateful
set interfaces ge-0/0/5 unit0 family inet6 dhcpv6-client set interfaces ge-0/0/5 unit0 family inet6 dhcpv6-client set client-type statefull set interfaces ge-0/0/5 unit0 family inet6 dhcpv6-client client-ia-type ia-na
DHCPv6 Client – Stateful with IA_NA and IA_PD
set interfaces ge-0/0/5 unit0 family inet6 dhcpv6-client set interfaces ge-0/0/5 unit 0 family inet6 dhcpv6-client client-type statefull set interfaces ge-0/0/5 unit 0 family inet6 dhcpv6-client client-ia-type ia-na set interfaces ge-0/0/5 unit 0 family inet6 dhcpv6-client client-ia-type ia-pd
Time to check my interface and test my setup. I have set up a little Microsoft 2012 server to apply this IP address.
[email protected]> show dhcpv6 client binding IP prefix Expires ClientType State Interface Client 2000::caca:bebe:2233:8d5e/128 96 STATEFULL BOUND ge-0/0/5.0
A bit more detail can be found
[email protected]> show dhcpv6 client binding detail Client Interface: ge-0/0/5.0 State: BOUND(DHCPV6_CLIENT_STATE_BOUND) Lease Expires: 2013-05-30 20:50:19 UTC Lease Expires in: 18000 seconds Lease Start: 2013-05-30 15:50:19 UTC Server Ip Address: fe80::230:abab:1fde:abab Client IP Address: 2000::caca:bebe:2233:1a3/128
If you need to release your binding and request it again issue the following commands.
clear dhcpv6 client binding request dhcpv6 client renew
Good work Juniper addressing what many have asked for. High five in that department! IPv6 is here and now and it is time to get your hands dirty! Further reading can be found here.