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