			DHCPv6 README file
			------------------
The current version 0.01 is an implementation is based on the draft 23 
standards. Version 0.01 is a prototype implementation for linux and includes 
basic interaction between client and the server. 

This file briefly explains how to run the client and server, organisation of
files.

CLIENT:
-------
Client can be initiated by
	
	./dhcp6client OPTIONS

	dhcp6client -I <interface> -n <number of addresses> [-d][-v]

Description:
	-I interface 
		eth0, eth1 etc.

	-n number of addresses
		1,2 etc.,
	
	-d
		To log the information on stderr(default is printed to file dbug).
	
	-c
		Creates a new configuration file (Not recommended).

	-v
		Prints the version and the draft number of the underlying 
		implementation.
		
Signals:
	Client releases all the addresses held, if it receives a SIGUSR1
	sugnal. And client exits after releaseing the addresses.

SERVER:
------
server can be intitated by
	
	./dhcp6server OPTIONS
	dhcp6server -I <interface> [-D] [-d][-v]

Description:
	-I interface
		eth0, eth1 etc.,
	
	-d
		To log the information on stderr(default is printed to file dbug).
	-v 
		Prints version and the draft number of the underlying 
		implementation.

	-D 	Runs as a daemon.

Signals:
	Server initiates reconfigure process, if it receives a SIGUSR1 
	signal.


FILES:
------
dhcp6client.c and dhcp6server.c carries the major functionalities of client 
and server respectively. Some of the common functionalities between client and 
server are implemented in dhcp6common.c

CONFIGURATION FILES:
-------------------

Created by User/Administrator:
dhcp6.conf

Generated by client/server:
dhcp6client.conf
dhcp6.lease

Server uses dhcp6.conf to get the information regarding the addresses
it has to configure along with prefixlen, preference value and lifetime
of the addresses being leased out.

DHCPv6 draft requires duid ( an unique indentification of clients) to be
generated once (first time in life span) and stored permanently in 
memory. duid is stored in dhcp6client.conf by dhcp6client.

Server generates and uses dhcp6.lease to store and use the information
regarding the addresses being leased out along with the client's duid, 
iaid (unique identifier of the interface with a client), and the lease period.
Server loads the information from the file while coming up and modifies the 
information while running based on the interaction with the client.

Contact Email:
--------------
Suresh Kodati <skodati@in.ibm.com>
