[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Debian jessie > buster IPv6 link scope change of behaviour



On Thu, Jan 21, 2021 at 08:04:05AM +0100, Marc SCHAEFER wrote:
> fe80::1 is specifically a link-local scope, a bit like if you try to
> access a class variable without telling in what class it is.

Reading RFC-4291 [1], 2.5.6 (link-local addresses) and RFC-4007 [2] 6,
Zones Indices:

   Because the same non-global address may be in use in more than one
   zone of the same scope (e.g., the use of link-local address fe80::1
   in two separate physical links) and a node may have interfaces
   attached to different zones of the same scope (e.g., a router
   normally has multiple interfaces attached to different links), a node
   *requires* an internal means to identify to which zone a non-global
   address belongs.  This is accomplished by assigning, within the node,
   a distinct "zone index" to each zone of the same scope to which that
   node is attached, and by allowing all internal uses of an address to
   be qualified by a zone index.

Also:

   An implementation should also support the concept of a "default" zone
   for each scope.  And, when supported, the index value zero at each
   scope SHOULD be reserved to mean "use the default zone".  Unlike
   other zone indices, the default index does not contain any scope, and
   the scope is determined by the address that the default index
   accompanies.  An implementation may additionally define a separate
   default zone for each scope.  Those default indices can also be used
   as the zone qualifier for an address for which the node is attached
   to only one zone; e.g., when using global addresses.

If I read well, recent Linux kernels might have decided that the first
Ethernet interface is the default zone. Or at least this is how I
understand the *requires* above.

[1] https://tools.ietf.org/html/rfc4291#section-2.5.6
[2] https://tools.ietf.org/html/rfc4007


Reply to: