250 likes | 694 Views
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.
E N D
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 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 • SOLICIT • ADVERTISE • REQUEST • CONFIRM • RENEW • REBIND • REPLY • RELEASE • DECLINE • RECONFIGURE • INFORMATION-REQUEST • RELAY-FORW • RELAY-REPL
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 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 • Client Identifier • Server Identifier • Identity Association for Non-temporary Addresses • Identity Association for Temporary Addresses • IA Address • Option Request • Preference • Elapsed Time • Relay Message • Authentication • Server Unicast • Status Code • Rapid Commit • User Class • Vendor Class • Vendor-specific Information • Interface-Id • Reconfigure Message • Reconfigure Accept
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 DHCP client DHCP server B DHCP server A T I M E ADVERTISE ADVERTISE REQUEST Client select one advertise server B REPLY Client Now use address and parameter for lifetime Client renew life time RENEW 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?