1 odhcp6c - Embedded DHCPv6 Client
6 odhcp6c is a minimal DHCPv6 and RA-client for use in embedded Linux systems
7 especially routers. It compiles to only about 35 KB (-Os -s).
12 1. IPv6 bootstrap from different environments with autodetection
14 b) RA + stateless DHCPv6
15 c) RA + stateful DHCPv6 (either IA_NA or IA_PD or both)
17 2. Handling of non-temporary addresses (IA_NA)
18 a) handling of valid and preferred lifetimes
19 b) automatic fallback to stateless or PD-only mode
21 3. Support for DHCPv6 extension
22 a) Reconfigure-Messages
23 b) Prefix Delegation (including handling of valid and preferred lifetimes)
25 d) DNS Configuration Options
28 g) Information-Refresh Options
29 h) Configurable SOL_MAX_RT
30 i) DS-Lite AFTR-Name Option
31 j) Softwire address and port mapped clients (MAP, LW4over6)
32 j) CER-ID (experimental)
34 4. Support for requesting and parsing Router Advertisements
35 a) parsing of prefixes, routes, MTU and RDNSS options
41 * To prepare a Makefile use: "cmake ."
42 * To build / install use: "make" / "make install" afterwards.
43 * To build DEB or RPM packages use: "make package" afterwards.
48 The state script is called whenever the DHCPv6 state changes.
49 The script is called with the following parameters: <interface> <state>
53 * started The DHCPv6 client has been started
54 * bound A suitable server was found and addresses or prefixes acquired
55 * informed A stateless information request returned updated information
56 * updated Updated information was received from the DHCPv6 server
57 * ra-updated Updated information was received from via Router Advertisement
58 * rebound The DHCPv6 client switched to another server
59 * unbound The DHCPv6 client lost all DHCPv6 servers and will restart
60 * stopped The DHCPv6 client has been stopped
64 * RDNSS A space-separated list of recursive DNS servers
65 * DOMAINS A space-separated list of DNS search domains
66 * SNTP_IP A space-separated list of SNTP server IP addresses
67 * SNTP_FQDN A space-separated list of SNTP server FQDNs
68 * SIP_IP A space-separated list of SIP servers
69 * SIP_DOMAIN A space-separated list of SIP domains
70 * OPTION_<num> Custom option received as base-16
71 * PREFIXES A space-separated list of prefixes currently assigned
72 Format: <prefix>/<length>,preferred,valid[,excluded=<excluded-prefix>/<length>][,class=<prefix class #>]
73 * ADDRESSES A space-separated list of addresses currently assigned
74 Format: <address>/<length>,preferred,valid
75 * RA_ADDRESSES A space-separated list of addresses from RA-prefixes
76 Format: <address>/<length>,preferred,valid
77 * RA_ROUTES A space-separated list of routes from the RA
78 Format: <address>/<length>,gateway,valid,metric
79 * RA_DNS A space-separated list of recursive DNS servers from the RA
80 * RA_DOMAINS A space-separated list of DNS search domains from the RA
81 * RA_HOPLIMIT Highest hop-limit received in RAs
82 * RA_MTU MTU-value received in RA
83 * RA_REACHABLE ND Reachability time
84 * RA_RETRANSMIT ND Retransmit time
85 * AFTR The DS-Lite AFTR domain name
86 * MAPE / MAPT / LW4O6 Softwire rules for MAPE, MAPT and LW4O6