On sexta-feira, 15 de julho de 2016 21:39:11 PDT Dave Thaler wrote: > > Indeed, for a *link* local address, the Zone ID should specify the link. > > However, the entire IPv6 API as defined by the RFCs call this "ifindex" -- > > the interface index. > > > Which API are you referring to? > RFC 6874 never uses the term "ifindex" or "interface index".
Right. > RFC 3542 and RFC 3493 do use ifindex, but never to refer to a zone ID or > anything that can appear with a %. It only uses it with APIs that want to > explicitly reference an interface. RFC 3493 uses the term "scope id" (e.g., > sin6_scope_id) to refer to a zone id. > RFC 4007 is the primary RFC that explains the relationship between zone id, > interface index, etc., and is the main one relevant to this conversation. 3542 and 3493. For example, 3493 has "if_nametoindex" and 3542's struct in6_pktinfo contains a member called ipi6_ifindex. It's also a sorry state that struct sockaddr_in6 has sin6_scope_id, which is confusing with IPv6 scope levels. Indeed 4007 tries to clarify it all, but for Unix systems I have access to, one interface = one link. I have never had the chance to play with a multi- port network card, but I'm pretty sure each port (link) would show up as a different interface. > > It is very hard for everyone involved (OS, application, etc.) to determine > > if two interfaces are connected to the same link. We don't even try. > > It's part of OS configuration (outside the scope of iotivity), iotivity > shouldn't be trying itself. Indeed. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center