[radvd-devel-l] RDNSS Option
Mickaël Guérin
kael at withinthebox.net
Thu Mar 9 11:48:41 EST 2006
Hi
I'm still working on some modifications but i'll give you answers (in
the mail, that's bad ;) )
I'll put the new version of the patch later (when it's finished ;))
Mickaël.
Pekka Savola a écrit :
> Hi,
>
> Thanks!
>
> On Mon, 6 Mar 2006, Mickaël Guérin wrote:
>
>> I've written a page to summarize what has been done (still under
>> construction) : http://withinthebox.net/ipv6/
>>
>> We have developped a GNU/Linux client but the current version is still
>> 'dirty'.
>
>
> A few comments on the patch on the web page, without compile or
> run-testing at this point:
>
> Generic comments:
> - at some point, radvdump parser should be included
i'm working on it
> - you don't seem to implement Lifetime bounding
> between {Min,Max}RtrAdvInterval. The default value for
> AdvRDNSSLifetime should maybe be taken from there.
ok.
> - I hope the draft gets approved in the IETF before we ship the code,
> but you never know how long it takes...
>
> A few specific ones:
>
> +/* pref/flag/reserved field : yyyyx00000000000 (big endian) -
> 00000000yyyyx000 (little indian); where yyyy = pref, x = flag */
> +#if BYTE_ORDER == BIG_ENDIAN
> +#define ND_OPT_RDNSSI_PREF_SHIFT 12
> +#else
> +#define ND_OPT_RDNSSI_PREF_SHIFT 4
> +#endif
> +#define ND_OPT_RDNSSI_PREF_MASK (0xff <<
> ND_OPT_RDNSSI_PREF_SHIFT)
>
> ==> does this work OK in a little-endian machine if one of the 8
> high-order zero bits would, at some later date, get used? Should you
> use '0xf' instead of '0xff' ?
you're right :)
>
> + rdnss_init_defaults(rdnss, iface);
> + rdnss->AdvRDNSSNumber = 1;
>
> ==> is there a reason for overwriting the number of RDNSS's?
no reason, it has been changed.
>
> + rdnss->AdvSFlag = DFLT_AdvSFlag;
>
> ==> AdvSFlag needs to be better named, as it's specific to RDNSS,
> maybe AdvRDNSSSFlag or AdvRDNSSOpenFlag ? Especially in the actual
> configuration syntax-- "AdvS" isn't good, maybe "AdvRDNSSOpen" or
> something....
renamed to "AdvRDNSSOpen"
>
> +RDNSS (Recursive DNS server) definitions are of the form:
> +
> +.nf
> +.BR "rdnss " "ip " {
> + list of rdnss specific options
> +.B };
> +.fi
>
> ==> If I understand correctly, the syntax is:
>
> RDNSS ip1 [ip2] [ip3] {
> ...
> }
>
> or something? And there can be only one RDNSS definition under
> an interface's configuration. Is this true?
Maybe should i explain this in the documentation :)
you can specify only 1 IP per rdnss section, but you could put many
rdnss sections. (dns servers are grouped during the parsing of the
configuration file depending if the options allow it).
>
> +.BR "AdvS " on | off;
> +
> +"Service Open" flag. When set, it indicates that RDNSS can be
> available for IPv6 hosts which are located in the different network
> with the RDNSS.
> +
> +Default: on
>
> ==> the default value should be disabled.
done.
>
> +# NOTE: This feature is still a draft has no IANA number type for the
> moment
> +#
> + rdnss 2001::1
>
> ==> the option name should probably be in upper-case, should use
> addresses under 2001:db8::/32, and should include multiple servers.
the address example was bad, you're right. i let it in uppercase to do
like the other options, but as it's an abbreviation, maybe should it be
in uppercase.
>
> + // TODO : regrouper en fonction de pref lifetime et S, au
> plus 3 RDNSS
>
> ==> excuse my french... :)
oups, i forgot to delete it :)
>
> +.PP
> +J. Jeong, L. Beloeil, and S. Madanapalli, "IPv6 Router Advertisement
> Option for DNS Configuration", Draft ietf.
>
> ==> please add the draft name, version, etc.
>
that's done.
More information about the radvd-devel-l
mailing list