Skip to content

shawndfisher/odhcp6c

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

odhcp6c - Embedded DHCPv6 Client


** Abstract **

odhcp6c is a minimalistic DHCPv6 client for use in embedded Linux systems.


** Features **

1. Handling of non-temporary addresses
	a) assignment of addresses to source interface
	b) handling of valid and preferred lifetimes
	c) duplicate address detection

2. Handling of IPv6-Prefixes (Prefix Delegation)
	a) requesting of prefixes

3. Stateless fallback-support

4. State script support


** Compiling **

odhcp6c uses cmake:
* To prepare a Makefile use:  "cmake ." 
* To build / install use: "make" / "make install" afterwards.
* To build DEB or RPM packages use: "make package" afterwards.


** State Script **

The state script is called whenever the DHCPv6 state changes.
The script is called with the following parameters: <interface> <state>


States:
* started		The DHCPv6 client has been started
* bound			A suitable server was found and addresses or prefixes acquired		
* informed		A stateless information request returned updated information
* updated		Updated information was received from the DHCPv6 server
* ra-updated	Updated information was received from via Router Advertisement
* rebound		The DHCPv6 client switched to another server
* unbound		The DHCPv6 client lost all DHCPv6 servers and will restart
* stopped		The DHCPv6 client has been stopped


Environment:
* RDNSS			A space-separated list of recursive DNS servers
* DOMAINS		A space-separated list of DNS search domains
* SNTP_IP		A space-separated list of SNTP server IP addresses
* SNTP_FQDN		A space-separated list of SNTP server FQDNs
* SIP_IP		A space-separated list of SIP servers
* SIP_DOMAIN		A space-separated list of SIP domains
* OPTION_<num>	Custom option received as base-16
* PREFIXES		A space-separated list of prefixes currently assigned
				Format: <prefix>/<length>,preferred,valid
* ADDRESSES		A space-separated list of addresses currently assigned
				Format: <address>/<length>,preferred,valid
* RA_ADDRESSES	A space-separated list of addresses from RA-prefixes
				Format: <address>/<length>,preferred,valid
* RA_ROUTES		A space-separated list of routes from the RA
				Format: <address>/<length>,gateway,valid,metric
* RA_DNS		A space-separated list of recursive DNS servers from the RA




** Wishlist **

Features that I would like to see implemented in the near or far future:

* Reconfigure Authentication 

About

Embedded DHCPv6-client for Linux

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 100.0%