macos Sierra with CGA address?

Jeroen Massar jeroen at
Wed Dec 14 13:05:56 CET 2016

On 2016-12-14 12:40, Jeroen Massar wrote:
>> There is another sysctl parameter (opmode) but unclear what 1 (or 0) means:
>> $ sysctl net.inet6.send
>> net.inet6.send.opstate: 1
>> net.inet6.send.opmode: 1
> There is no documentation at all about these things, hence, nothing one
> can say about it, except begging Apple to finally document stuff.

Maybe this is the 'closest' to documentation: the source:

This is an older dump though.

Not a single mention of a RFC in there, but they are talking about
"SEND" (Not SeND") and there are CGA parameters in there which are not

Apparently one needs "#if CONFIG_MACF" which we do not have...

Hence, I can only guess that that code is not active yet, at least in
that ancient version.

Thus lets peek at:

mmm while I have:
 root:xnu-3789.21.3~60/RELEASE_X86_64 x86_64

Thus 500 something behind....

In that tarball, look at bsd/netinet6/

Same file still there. Thus: nothing changed in that timeframe
concerning send.

Though, as various of the dumps show, opmode/state has changed to '1'

Maybe this is thus part of those last 500 changes?

in6.c has:
        if (optdad) {
                if ((optdad & ND6_OPTIMISTIC_DAD_LINKLOCAL) &&
                        flags = IN6_IFF_OPTIMISTIC;
                else if ((optdad & ND6_OPTIMISTIC_DAD_AUTOCONF) &&
                    (ia->ia6_flags & IN6_IFF_AUTOCONF)) {
                        if (ia->ia6_flags & IN6_IFF_TEMPORARY) {
                                if (optdad & ND6_OPTIMISTIC_DAD_TEMPORARY)
                                        flags = IN6_IFF_OPTIMISTIC;
                        } else if (ia->ia6_flags & IN6_IFF_SECURED) {
                                if (optdad & ND6_OPTIMISTIC_DAD_SECURED)
                                        flags = IN6_IFF_OPTIMISTIC;
                        } else {
                                 * Keeping the behavior for temp and CGA
                                 * SLAAC addresses to have a knob for
                                 * DAD.
                                 * Other than that if
                                 * is set, we should default to optimistic
                                 * DAD.
                                 * For now this means SLAAC addresses
with interface
                                 * identifier derived from modified
EUI-64 bit
                                 * identifiers.
                                flags = IN6_IFF_OPTIMISTIC;

Which is likely related.... but that was also in the old github edition

Hence, we are still none the wiser here.


More information about the ipv6-ops mailing list