[PATCH v2] dhcp6c: DHCPv6 client
Leonid Lisovskiy
lly.dev at gmail.com
Tue Nov 8 10:15:06 UTC 2011
2011/11/8 Denys Vlasenko <vda.linux at googlemail.com>:
>
> [...reading rfc3633...]
>
> I don't think so. See option -x below:
>
> $ busybox udhcpc6 --help
> BusyBox v1.20.0.git (2011-11-07 15:35:32 CET) multi-call binary.
>
> Usage: udhcpc6 [-fbnqvoRB] [-i IFACE] [-r IP] [-s PROG] [-p PIDFILE]
> [-x OPT:VAL]... [-O OPT]... [-P N]
>
> -i,--interface IFACE Interface to use (default eth0)
> -p,--pidfile FILE Create pidfile
> -s,--script PROG Run PROG at DHCP events (default
> /usr/share/udhcpc/default.script)
> -B,--broadcast Request broadcast replies
> -t,--retries N Send up to N discover packets
> -T,--timeout N Pause between packets (default 3 seconds)
> -A,--tryagain N Wait N seconds after failure (default 20)
> -f,--foreground Run in foreground
> -b,--background Background if lease is not obtained
> -n,--now Exit if lease is not obtained
> -q,--quit Exit after obtaining lease
> -R,--release Release IP on exit
> -S,--syslog Log to syslog too
> -P,--client-port N Use port N (default 68)
> -O,--request-option OPT Request option OPT from server (cumulative)
> -o,--no-default-options Don't request any options (unless -O is given)
> -r,--request IP Request this IP address
> -x OPT:VAL Include option OPT in sent packets (cumulative)
> Examples of string, numeric, and hex byte opts:
> -x hostname:bbox - option 12
> -x lease:3600 - option 51 (lease time)
> -x 0x3d:0100BEEFC0FFEE - option 61 (client id)
> -v Verbose
> Signals:
> USR1 Renew lease
> USR2 Release lease
>
>
> Option -x can be extended to support options with arbitrary format.
> Thus, with some coding, IA_PD can be requested via -x.
> Then, the second half of work is to export values (in this case, prefix(es),
> their lifetime) from server reply to $envvars so that script can use them.
>
As I remember right, we reach agreement that all real interface
operations should performed by external script, yesterday.
The rest is:
1) Automated renew. In DHCPv4 it performed automatically by udhcpc
after 1/2 lease period expired. Why to change this behavior in DHCPv6?
It simply requires to remember a list of IA-NA IA-PD id's & lifetimes
and chain of events.
2) Calculation of complete prefix & corresponding IPv6 address by
EUI-64 rules, based on SLA(site-level aggregator) info provided in
config. This can be moved to external script, but IMHO it is much
easier do in C code.
Leonid
More information about the busybox
mailing list