Re: IPv6 Link Local Addresses

Alexandre Petrescu <alexandre.petrescu@gmail.com> Tue, 11 June 2019 13:04 UTC

Return-Path: <alexandre.petrescu@gmail.com>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 34A9F120136 for <ipv6@ietfa.amsl.com>; Tue, 11 Jun 2019 06:04:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.632
X-Spam-Level:
X-Spam-Status: No, score=-2.632 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, FREEMAIL_FROM=0.001, NML_ADSP_CUSTOM_MED=0.9, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_SOFTFAIL=0.665] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0GU_vF0MD3cx for <ipv6@ietfa.amsl.com>; Tue, 11 Jun 2019 06:04:51 -0700 (PDT)
Received: from sainfoin-smtp-out.extra.cea.fr (sainfoin-smtp-out.extra.cea.fr [132.167.192.228]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 534C5120048 for <ipv6@ietf.org>; Tue, 11 Jun 2019 06:04:51 -0700 (PDT)
Received: from pisaure.intra.cea.fr (pisaure.intra.cea.fr [132.166.88.21]) by sainfoin-sys.extra.cea.fr (8.14.7/8.14.7/CEAnet-Internet-out-4.0) with ESMTP id x5BD4na7006318 for <ipv6@ietf.org>; Tue, 11 Jun 2019 15:04:49 +0200
Received: from pisaure.intra.cea.fr (localhost [127.0.0.1]) by localhost (Postfix) with SMTP id B5638202D01 for <ipv6@ietf.org>; Tue, 11 Jun 2019 15:04:49 +0200 (CEST)
Received: from muguet1-smtp-out.intra.cea.fr (muguet1-smtp-out.intra.cea.fr [132.166.192.12]) by pisaure.intra.cea.fr (Postfix) with ESMTP id AAC3E201A9A for <ipv6@ietf.org>; Tue, 11 Jun 2019 15:04:49 +0200 (CEST)
Received: from [10.8.69.21] ([10.8.69.21]) by muguet1-sys.intra.cea.fr (8.14.7/8.14.7/CEAnet-Internet-out-4.0) with ESMTP id x5BD4nRm014468 for <ipv6@ietf.org>; Tue, 11 Jun 2019 15:04:49 +0200
Subject: Re: IPv6 Link Local Addresses
To: ipv6@ietf.org
References: <DM6PR15MB2506E62560613C85F74A1FF8BB100@DM6PR15MB2506.namprd15.prod.outlook.com> <CALx6S36vVpD9bAPSBQmhV+daR0Yr4heQ-LaiB4hABAs8ofVfNQ@mail.gmail.com> <DM6PR15MB25063BAF058C1825E2B63E30BB130@DM6PR15MB2506.namprd15.prod.outlook.com> <CAKQ4NaW-QRZDO52zDZTSqz_MsfrS1uQHdz6zFjo+gXvtYVnFxA@mail.gmail.com> <DM6PR15MB2506E06165EA22E66BBB9524BB130@DM6PR15MB2506.namprd15.prod.outlook.com> <7E03089C-8429-4B56-96D6-441490C850B2@gmail.com>
From: Alexandre Petrescu <alexandre.petrescu@gmail.com>
Message-ID: <32ad99f9-7e22-d214-7311-266d4f12caba@gmail.com>
Date: Tue, 11 Jun 2019 15:04:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0
MIME-Version: 1.0
In-Reply-To: <7E03089C-8429-4B56-96D6-441490C850B2@gmail.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: fr
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/sjpuv5mMAJ_wEuqj-RP7Sy0biyU>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 11 Jun 2019 13:04:54 -0000


Le 10/06/2019 à 18:44, Bob Hinden a écrit :
> Hi,
> 
> RFC4291 defines Link Local Address as:
> 
>   2.5.6.  Link-Local IPv6 Unicast Addresses
> 
>     Link-Local addresses are for use on a single link.  Link-Local
>     addresses have the following format:
> 
>     |   10     |
>     |  bits    |         54 bits         |          64 bits           |
>     +----------+-------------------------+----------------------------+
>     |1111111010|           0             |       interface ID         |
>     +----------+-------------------------+----------------------------+
> 
>     Link-Local addresses are designed to be used for addressing on a
>     single link for purposes such as automatic address configuration,
>     neighbor discovery, or when no routers are present.
> 
>     Routers must not forward any packets with Link-Local source or
>     destination addresses to other links.
> 
> This means that link local addresses have a 10 bit prefix (1111111010) followed by 54 bits of zeros.  That is it, nothing more.   Address with different prefixes or with a 1111111010 prefix followed by non-zero 54 bits are not link local addresses.
> 
> This is not ambiguous.

Bob,

The RFC4291 link local addresses have a 10 bit prefix and 54bits of 
zero.  That is fe80::/64.

The IANA allocation of IPv6 link-local addresses is fe80::/10.

 > fe80::/10 	Link-Scoped Unicast 	[RFC3513][RFC4291] 	

In that sense, the IANA definition and the RFC4291 differ with respect 
to the definition of link-local addresses.

fe80::/10 and fe80::/64 are not the same thing.

Alex

> 
> Bob
> 
> 
> 
>> On Jun 10, 2019, at 9:08 AM, Mudric, Dusan (Dusan) <dmudric@avaya.com> wrote:
>>
>>   
>>
>>   
>>
>> From: Yucel Guven <yucel.guven@gmail.com>
>> Sent: Monday, June 10, 2019 12:47 PM
>> To: Mudric, Dusan (Dusan) <dmudric@avaya.com>
>> Cc: Tom Herbert <tom@herbertland.com>; ipv6@ietf.org
>> Subject: Re: Is 1111 1110 10 equal to 0xfe80 or 0x3fa?
>>
>>   
>>
>> No need to define as a range.
>>
>> When you specify the prefix-length, it already defines a range.
>>
>> e.g. FE80::/10 (absolutely not  FE8::/10)  has the range of
>>
>> fe80:0000:0000:0000::/10 - febf:ffff:ffff:ffff::/10
>>
>> [Dusan] I agree that FE80::/10 is the FE80::/10 – FEBF::/10 range. However, it is not define like a range in RFC 4291 and if often misinterpreted as just one value of FE80:0000:0000:0000. The question is how to write it to make it clear this definition is a range?
>>
>>   
>>
>> https://tools.ietf.org/html/rfc4291#section-2.5.6 defines LL as the address with 64 bit FE80:0000:0000:0000 prefix, not as the fe80:0000:0000:0000::/10 - febf:ffff:ffff:ffff::/10 range. There are applications that need more flexibility for the LL prefix, like draft-petrescu-6man-ll-prefix-len. For these applications, FE80::/10 would be defined as LL identifier, not a prefix. The LL prefix would start with LL identifier and can have a variable length.
>>
>>   
>>
>> Is there any strong reason to keep 54 bits of zeros in this definition, other than backward compatibility?
>>
>>     |   10     |
>>
>>     |  bits    |         54 bits         |          64 bits           |
>>
>>     +----------+-------------------------+----------------------------+
>>
>>     |1111111010|           0             |       interface ID         |
>>
>>     +----------+-------------------------+----------------------------+
>>
>>   
>>
>>   
>>
>> Reg.'s
>>
>> Yucel
>>
>>   
>>
>> On Mon, Jun 10, 2019 at 3:58 PM Mudric, Dusan (Dusan) <dmudric@avaya.com> wrote:
>>
>>> On Friday, June 7, 2019 at 3:48 PM Tom Herbert
>>> <tom@herbertland.com> wrote
>>>>
>>>>>
>>>>> Message: 3
>>>>> Date: Fri, 7 Jun 2019 10:53:28 -0700
>>>>> From: Fred Baker <fredbaker.ietf@gmail.com>
>>>>> To: Alexandre Petrescu <alexandre.petrescu@gmail.com>
>>>>> Cc: IPv6 <ipv6@ietf.org>
>>>>> Subject: Re: Is 1111 1110 10 equal to 0xfe80 or 0x3fa?
>>>>> Message-ID: <A722E202-7671-4111-BA92-8A67B3D3B924@gmail.com>
>>>>> Content-Type: text/plain; charset="us-ascii"
>>>>>
>>>>>
>>>>>
>>>>> If I have prefix fe80::/10, as described in RFC 4291, the next bit
>>>>> is bit 11. Doing the same subdivision of the prefix is fe80::/11 and
>>> fea0::/11.
>>>> [Dusan] The hexadecimal definition for LL address is not syntactically
>>> correct. The binary 10 bit prefix 1111111010 cannot be presented as
>>> hexadecimal FE80::/10. It is rather a range FE80::/10 - FEBF::/10. In this
>>> notation, FE80::/10 = FEBF::/10,  because the first 10 bits are equal and other
>>> 6 should be ignored. 111 1111010 can be defined as FE80::/10 only if every
>>> time it is also mentioned that the trailing 6 bits are all zero.
>>>
>>> By that logic, we'd have to mention that the trailing 118 bits are zero.  E.g.
>>> FE80::/10 == FEBD:F676:BBBB:C654:FEBD:F676:BBBB:C654/10
>>> also. It's obviously convenient canonical notication to express all the trailing
>>> bits as zeroes for a prefix, but not required. For instance, ifconfig shows my
>>> host address as fe80::ac2f:ea58:94a:438/64 which in one string indicates both
>>> a fully qualified address and it's prefix bits.
>> [Dusan] In this example fe80::ac2f:ea58:94a:438/64 is LL address with 0xfe80 0x0000 0x0000 0x0000 prefix. Based on LL prefix definition, this LL address can have a value of feab::ac2f:ea58:94a:438/64 and still have the binary 10 bit prefix 1111111010
>>
>> May be LL address can be defined in hex notation as a range FE8::/10 - FEB::/10? This range always has the same well know LL identifier, the binary 10 bit prefix 1111111010.
>>
>>>
>>> Tom
>>>
>> --------------------------------------------------------------------
>> IETF IPv6 working group mailing list
>> ipv6@ietf.org
>> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
>> --------------------------------------------------------------------
>>
>> --------------------------------------------------------------------
>> IETF IPv6 working group mailing list
>> ipv6@ietf.org
>> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
>> --------------------------------------------------------------------
> 
> --------------------------------------------------------------------
> IETF IPv6 working group mailing list
> ipv6@ietf.org
> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
> --------------------------------------------------------------------
>