RE: [v6ops] RFC4861 question - short prefixes in PIOs

"Templin (US), Fred L" <Fred.L.Templin@boeing.com> Wed, 26 June 2019 20:22 UTC

Return-Path: <Fred.L.Templin@boeing.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 8D0501203A6 for <ipv6@ietfa.amsl.com>; Wed, 26 Jun 2019 13:22:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.198
X-Spam-Level:
X-Spam-Status: No, score=-4.198 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] 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 gPBuabGRAP9q for <ipv6@ietfa.amsl.com>; Wed, 26 Jun 2019 13:22:09 -0700 (PDT)
Received: from clt-mbsout-02.mbs.boeing.net (clt-mbsout-02.mbs.boeing.net [130.76.144.163]) (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 6D7FB12036C for <6man@ietf.org>; Wed, 26 Jun 2019 13:22:09 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by clt-mbsout-02.mbs.boeing.net (8.14.4/8.14.4/DOWNSTREAM_MBSOUT) with SMTP id x5QKM6m9031700; Wed, 26 Jun 2019 16:22:07 -0400
Received: from XCH16-07-08.nos.boeing.com (xch16-07-08.nos.boeing.com [144.115.66.110]) by clt-mbsout-02.mbs.boeing.net (8.14.4/8.14.4/UPSTREAM_MBSOUT) with ESMTP id x5QKM4dT031674 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=FAIL); Wed, 26 Jun 2019 16:22:04 -0400
Received: from XCH16-07-10.nos.boeing.com (144.115.66.112) by XCH16-07-08.nos.boeing.com (144.115.66.110) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.1.1713.5; Wed, 26 Jun 2019 13:22:03 -0700
Received: from XCH16-07-10.nos.boeing.com ([fe80::1522:f068:5766:53b5]) by XCH16-07-10.nos.boeing.com ([fe80::1522:f068:5766:53b5%2]) with mapi id 15.01.1713.004; Wed, 26 Jun 2019 13:22:03 -0700
From: "Templin (US), Fred L" <Fred.L.Templin@boeing.com>
To: David Farmer <farmer@umn.edu>, 神明達哉 <jinmei@wide.ad.jp>
CC: 6man <6man@ietf.org>
Subject: RE: [v6ops] RFC4861 question - short prefixes in PIOs
Thread-Topic: [v6ops] RFC4861 question - short prefixes in PIOs
Thread-Index: AdUsMmrDTybnqCimSw+vUa2pQYzWEwAHyw8iAAKphrA=
Date: Wed, 26 Jun 2019 20:22:03 +0000
Message-ID: <4b1cb44d708349dc8ff936bde9ebd21d@boeing.com>
References: <729f46ec4a8b419797e15bbdcac3e549@boeing.com> <CAJE_bqeXkyWec9-EG1QxS-1FeTyKS6-ONNOYhQK8gsQGwenaVQ@mail.gmail.com> <CAN-Dau35=8i0DAn1xd8nHJh9aAVZY12v3az9QUyXYXAtOQ9xeA@mail.gmail.com>
In-Reply-To: <CAN-Dau35=8i0DAn1xd8nHJh9aAVZY12v3az9QUyXYXAtOQ9xeA@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [137.137.12.6]
x-tm-snts-smtp: 0930528E688BF533EAF3B878FD0046EBBC7E43E71F018693F067B3414FD86CFD2000:8
Content-Type: multipart/alternative; boundary="_000_4b1cb44d708349dc8ff936bde9ebd21dboeingcom_"
MIME-Version: 1.0
X-TM-AS-GCONF: 00
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/ARYgdh9jV0G_NGvjDfV_LsXl02Q>
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: Wed, 26 Jun 2019 20:22:13 -0000

Thanks for your response, David:

>> RFC 8028 updates RFC4861 and talks about A=L=0, it talks about this in Section 2.1;

That does indeed look like the kind of behavior I am after, but how is it different than
RFC4191 RIOs? RIOs include a Preference value for each router that advertises the
prefix. Do we lose that feature by going with PIOs per RFC8028?

Thanks - Fred

From: David Farmer [mailto:farmer@umn.edu]
Sent: Wednesday, June 26, 2019 12:01 PM
To: 神明達哉 <jinmei@wide.ad.jp>
Cc: Templin (US), Fred L <Fred.L.Templin@boeing.com>; 6man <6man@ietf.org>
Subject: Re: [v6ops] RFC4861 question - short prefixes in PIOs

Some additional comments regarding questions #3 and #4 are below;

On Wed, Jun 26, 2019 at 11:23 AM 神明達哉 <jinmei@wide.ad.jp<mailto:jinmei@wide.ad.jp>> wrote:
(I'm only copying 6man, as I believe it's purely a protocol spec
question)

At Wed, 26 Jun 2019 15:56:36 +0000,
"Templin (US), Fred L" <Fred.L.Templin@boeing.com<mailto:Fred.L.Templin@boeing..com>> wrote:
>
> I have an RFC4861 question (several actually) on short prefixes in RA PIOs:
>
> 1) If a PIO includes a prefix with length less than 64 (e.g., 2001:db8::/32) and with L=1, does it
>
> mean that 2001:db8::/32 should be added to the interface prefix list?

In my interpretation (ditto for subsequent questions), yes.

+1

> 2) If yes to 1), does it mean that packets forwarded to the interface for any destination covered
>
> by 2001:db8::/32 will trigger Address Resolution instead of forwarding to a default router?

Yes.

+1

> 3) If the PIO instead has L=0, does it mean that 2001:db8::/32 is “associated” with the link but
> not necessarily “on-link”?

I'm not sure how to interpret it (in particular I'm not sure what
"associated with the link" means), but my interpretation of L=0 is
that the RA doesn't say anything about the on-link-ness of that
prefix.  See also the description of the L flag in RFC4861:

      L              1-bit on-link flag.  [...]  When
                     not set the advertisement makes no statement about
                     on-link or off-link properties of the prefix.  In
                     other words, if the L flag is not set a host MUST
                     NOT conclude that an address derived from the
                     prefix is off-link.  That is, it MUST NOT update a
                     previous indication that the address is on-link.

RFC 8028 updates RFC4861 and talks about A=L=0, it talks about this in Section 2.1;

   In some circumstances, both L and A might be zero.  If SLAAC is not
   wanted (A=0) and there is no reason to announce an on-link prefix
   (L=0), a PIO SHOULD be sent to inform hosts that they should use the
   router in question as the first hop for packets with source addresses
   in the PIO prefix.  An example case is the MIF router in Figure 1,
   which could send PIOs with A=L=0 for the common prefix.  Although
    this does not violate the existing standard [RFC4861], such a PIO has
   not previously been common, and it is possible that existing host
   implementations simply ignore such a PIO or that existing router
   implementations are not capable of sending such a PIO.  Newer
   implementations that support this mechanism should be updated
   accordingly:

   o  A host SHOULD NOT ignore a PIO simply because both L and A flags
      are cleared (extending Section 6.3.4 of [RFC4861]).

   o  A router SHOULD be able to send such a PIO (extending
      Section 6.2.3 of [RFC4861]).

> 4) If yes to 3), does it mean that 2001:db8::/32 should be added to the IPv6 forwarding table
>
> as a “route-to-interface” with the receiving interface as the next hop?

No.  See the second MUST NOT of the RFC4861 text cited above.

I wouldn't call it a “route-to-interface” it should be a route pointing to the route as the next-hop.

> 5) Does A=1 have any meaning for prefixes with length less than 64? Or, must prefixes with
>
> length less than 64 set A=0?

As far as RFC4861 is concerned, the A flag has no meaning, regardless
of the prefix length.  It only matters in RFC4862.  In terms of
RFC4862, whether "A=1 has any meaning for prefixes with length less
than 64" depends on the length of the IID of the link; if the prefix
length != 128-IIDLength, the validation rule 5.5.3 d) of RFC4862 makes
the prefix ignored.  If non-64 prefix length is invalid in terms of
RFC4862 in that sense, it'd be *safe* to avoid setting the A flag, but
the protocol specification doesn't say it *must* be so.

+1

You may also want to check
https://tools.ietf.org/html/draft-jinmei-6man-prefix-clarify-00
I believe it clarifies many of the above questions.

--
JINMEI, Tatuya
--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org<mailto:ipv6@ietf.org>
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------


--
===============================================
David Farmer               Email:farmer@umn.edu<mailto:Email%3Afarmer@umn.edu>
Networking & Telecommunication Services
Office of Information Technology
University of Minnesota
2218 University Ave SE        Phone: 612-626-0815
Minneapolis, MN 55414-3029   Cell: 612-812-9952
===============================================