Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 25

IPv6 DHCP

By : Santosh Yadav
IIT Kanpur
IPv6 Dynamic Host
Configuration Protocol
Overview
Evolution Of DHCPv6
DHCPv6 Concepts
Installation
Configuration
Evolution Of DHCPv6

To boot the machines in a LAN, needs lot of


network parameters to be configured in each
machine.

In order to avoid this manual process, all the


network parameters are put in a server and
when a machine in LAN is booting, it will contact
the server for the configuration parameters.
This is called BOOTP server. Later it is
extended to DHCP with additional features.

Generally called DHCP


Evolution Of DHCPv6

IP configuration in IPV6 is carried out by IPV6 auto-


configuration

IPv6 auto-configuration
Stateless
nodes configure addresses themselves with
information from routers (if available);
no managed addresses

Stateful
nodes use DHCPv6 to obtain addresses.
Duplicate address detection (DAD) used to avoid
duplicated addresses
Dhcpv6 Concepts

What is DHCPv6 ?

The Dynamic Host Configuration Protocol for IPv6


(DHCP) enables DHCP servers to pass configuration
parameters such as IPv6 network addresses to IPv6
nodes.
DHCPv6 protocol Released in RFC 3315
This protocol is a stateful counterpart to "IPv6 Stateless
Address Autoconfiguration" (RFC 2462).
Used separately or concurrently with the latter to obtain
configuration parameters.
Dhcpv6 Concepts

DHCPv6 Versus DHCPv4


The following lists the main differences between DHCPv4 and
DHCPv6:
Unlike DHCPv4, IPv6 address allocation in DHCPv6 is
handled using a message option.
The message types, such as DHCPDISCOVER and
DHCPOFFER supported by DHCPv4 are removed in
DHCPv6. Instead, DHCPv6 servers are located by a client
SOLICIT message followed by a server ADVERTISE message
Unlike DHCPv4 clients, DHCPv6 clients can request multiple
IPv6 addresses.
Dhcpv6 Concepts

Why we need dhcpv6 ?


A method of providing stateful IPv6 address
configuration/assignment
Also provides other network information
DNS servers
NIS information

DHCP allows centralized control and


auditing of IP address assignments
Central point of control for resources
Dynamic DNS updates
More security versus stateless
Dhcpv6 Concepts

DHCPv6 Basic Message Format


01234567012345670123456701234567
Msg-type Transaction-id
Options (variable)

SOLICIT RELEASE
ADVERTISE DECLINE
REQUEST RECONFIGURE
CONFIRM INFORMATION-REQUEST
RENEW RELAY-FORW
REBIND RELAY-REPL
REPLY
Message Type Option
Message Type Meaning
SOLICIT(1) A client sends a Solicit message to locate servers.
ADVERTISE (2) A server sends an Advertise message to indicate that it is
available for DHCP service, in response to a Solicit message
received from a client.
REQUEST (3) A client sends a Request message to request configuration
parameters, including IP addresses, from a specific server.
REPLY (4) A server sends a Reply message containing assigned
addresses and configuration parameters in response to a
Solicit, Request, Renew, Rebind message received from a
Client.
RENEW (5) A client sends a Renew message to the server that originally
provided the client's addresses and configuration parameters
to extend the lifetimes on the addresses assigned to the
client.
REBIND (6) A client sends a Rebind message to any available
server to extend the lifetimes on the addresses
assigned to the client.
Dhcpv6 Concepts

DHCP Messages

Messages exchanged using UDP


Client port udp/546
Server Port udp/547
Client uses Link-Local address or addresses determined
using other methods to transmit and receive DHCP
messages.
Server receives messages from clients using a reserved,
Link-Scoped multicast address.
Dhcpv6 Concepts

DHCP Multicast Addresses

All_DHCP_Relay_Agents_and_Servers
Link-scoped multicast address used by a client to
communicate with on-link relay agents and servers
FF02::1:2
All_DHCP_Servers
Site-scoped multicast address used by a relay agent to
communicate with servers
FF05::1:3
Dhcpv6 Concepts

DHCPv6 option format and base option


01234567012345670123456701234567
Option-code Option length
Options data(option len octets)
Client Identifier
Authentication
Server Identifier
Server Unicast
Identity Association for Non-temporary
Status Code
Addresses
Rapid Commit
Identity Association for Temporary
User Class
Addresses
Vendor Class
IA Address
Vendor-specific Information
Option Request
Interface-Id
Preference
Reconfigure Message
Elapsed Time
Reconfigure Accept
Relay Message
Dhcpv6 Concepts
DHCP Unique Identifer (DUID)

Each DHCP client and server has a DUID. DHCP servers


use DUIDs to identify clients for the selection of
configuration parameters and in client Identity
Associations.
Unique across all clients and servers
Should not change over time (if possible)
Must be < 128 octets long
Dhcpv6 Concepts

Identity Association

An identity association (IA) is a construct through which a


server and client can identify, group, and manage a set of
related IP addresses.
Client must associate at least one distinct IA with each
network interface requesting assignment of IP
addresses from DHCP server (IAID)
Must be associated with exactly one interface
Must be consistent across restarts by the client
DHCPv6 working

SOLICIT

ADVERTISE ADVERTISE
TIME

REQUEST
Client select
one advertise REPLY
server B Client Now use address and
parameter for lifetime
DHCP DHCP DHCP
server client Client renew life time server
A RENEW B
REPLY

Client releases address


when shutting down
RELEASE
Dhcpv6 Concepts

Dhcpv6 operation :
Client sends messages to link-local multicast address
Server unicasts response to client
Information-Request / Reply - provide client configuration
information but no addresses
Confirm / Reply - assist in determining whether client moved
Reconfigure - allow servers to initiate a client reconfiguration
Basic client/server authentication capabilities in base
standard.
DHCP Unique Identifier (DUID) used to identify clients &
servers
Identity Association ID (IAID) used to identify a collection of
addresses
Relay Agents used when server not on-link
Relay Agents may be chained
Ongoing Project

Previously DHCPv6 v1.001and now DHCPv6 2.001 available for


the HP-UX 11i v1 and HP-UX 11i v2 operating systems
http:/docs.hp.com

Dibbler is a portable DHCPv6 implementation on Linux 2.4/2.6 and


Windows XP and Windows 2003.
This project was started as master thesis by Tomasz Mrugalski and
Marek Senderski of Computer Science faculty on Gdansk University
of Technology.
http://klub.com.pl/dhcpv6/

Project UNIX name: dhcpv6


Operating System: All POSIX (Linux/BSD/UNIX-like OSes), Linux
http://dhcpv6.sourceforge.net/
Installation

Dhcpv6 server :

Update with dhcpv6-0.10-11_FC3.i386.rpm using


# rpm -U dhcpv6-0.10-11_FC3.i386.rpm

Create a database directory


#mkdir /var/db/dhcpv6

Copy sample server configuration file


# cp dhcp6s.conf /etc/dhcp6s.conf

Start the server daemon using


# dhcp6s dDf eth0
Installation

Dhcpv6 client :

Update with dhcpv6_client-0.10-11_FC3.i386.rpm using


# rpm -U dhcpv6_client-0.10-11_FC3.i386.rpm

Copy sample client configuration file


# cp dhcp6c.conf /etc/dhcp6c.conf

Start the client daemon using


# dhcp6c dDf eth0
Configuration

In Fedora core 3 following files are configured :


Server configuration :
/etc/sysconfig/dhcp6s
/etc/dhcp6s.conf

File : /etc/sysconfig/dhcp6s
Specify the interface for dhcp6s
DHCP6SIF=eth0
Configuration
Server configuration...
File : /etc/dhcp6s.conf
interface eth0 {
server-preference 255;
renew-time 60;
rebind-time 90;
prefer-life-time 130;
valid-life-time 200;
allow rapid-commit;
link BBB {
pool{
range 2001:0E30:1402:2::4 to 2001:0E30:1402:2::ffff/64;
prefix 2001:0E30:1402::/48;
};
};
};
Configuration

In Fedora core 3 following files are configured :


Client configuration :
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/dhcp6c.conf

File : /etc/sysconfig/network-scripts/ifcfg-eth0
IPV6INIT=yes
DHCP6C=yes
Configuration
client configuration...

File : /etc/dhcp6c.conf

interface eth0 {
#information-only;
send rapid-commit;
#request prefix-delegation;
#request temp-address;
address {
2001:0E30:1402:1:9656:3:4:56/64;

};

};
Testing

Start the server daemon in debug mode in foreground


#dhcp6s dDf eth0

Restart the network service of client


#service network restart

See the address assignment


#ifconfig
Thank you for your attention

Any Question?

You might also like