** Abstract **
-odhcp6c is a minimalistic DHCPv6 client for use in embedded Linux systems.
+odhcp6c is a minimal DHCPv6 and RA-client for use in embedded Linux systems
+especially routers. It compiles to only about 35 KB (-Os -s).
** 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
+1. IPv6 bootstrap from different environments with autodetection
+ a) RA only
+ b) RA + stateless DHCPv6
+ c) RA + stateful DHCPv6 (either IA_NA or IA_PD or both)
-2. Handling of IPv6-Prefixes (Prefix Delegation)
- a) requesting of prefixes
+2. Handling of non-temporary addresses (IA_NA)
+ a) handling of valid and preferred lifetimes
+ b) automatic fallback to stateless or PD-only mode
-3. Stateless fallback-support
+3. Support for DHCPv6 extension
+ a) Reconfigure-Messages
+ b) Prefix Delegation (including handling of valid and preferred lifetimes)
+ c) Prefix Exclusion
+ d) DNS Configuration Options
+ e) NTP Options
+ f) SIP Options
+ g) Information-Refresh Options
+ h) Configurable SOL_MAX_RT
+ i) DS-Lite AFTR-Name Option
+ j) Softwire address and port mapped clients (MAP, LW4over6)
+ j) CER-ID (experimental)
-4. State script support
+4. Support for requesting and parsing Router Advertisements
+ a) parsing of prefixes, routes, MTU and RDNSS options
** Compiling **
* 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
+* 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
* 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
+* OPTION_<num> Custom option received as base-16
* PREFIXES A space-separated list of prefixes currently assigned
- Format: <prefix>/<length>,preferred,valid
+ Format: <prefix>/<length>,preferred,valid[,excluded=<excluded-prefix>/<length>][,class=<prefix class #>]
* 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
+* 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,preferred,valid,metric
+ 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
+* RA_DOMAINS A space-separated list of DNS search domains from the RA
+* RA_HOPLIMIT Highest hop-limit received in RAs
+* RA_MTU MTU-value received in RA
+* RA_REACHABLE ND Reachability time
+* RA_RETRANSMIT ND Retransmit time
+* AFTR The DS-Lite AFTR domain name
+* MAPE / MAPT / LW4O6 Softwire rules for MAPE, MAPT and LW4O6