Re: 6MAN Working group last call: draft-ietf-6man-rdnss-rfc6106bis

神明達哉 <jinmei@wide.ad.jp> Wed, 24 February 2016 19:27 UTC

Return-Path: <jinmei.tatuya@gmail.com>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 37CD81B3C8C for <ipv6@ietfa.amsl.com>; Wed, 24 Feb 2016 11:27:18 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.978
X-Spam-Level:
X-Spam-Status: No, score=-0.978 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FM_FORGED_GMAIL=0.622, FREEMAIL_FROM=0.001, MIME_8BIT_HEADER=0.3, SPF_PASS=-0.001] autolearn=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 xpJQarufbD_7 for <ipv6@ietfa.amsl.com>; Wed, 24 Feb 2016 11:27:16 -0800 (PST)
Received: from mail-io0-x22d.google.com (mail-io0-x22d.google.com [IPv6:2607:f8b0:4001:c06::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1939A1ACD49 for <ipv6@ietf.org>; Wed, 24 Feb 2016 11:27:16 -0800 (PST)
Received: by mail-io0-x22d.google.com with SMTP id l127so60640815iof.3 for <ipv6@ietf.org>; Wed, 24 Feb 2016 11:27:16 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=JsS7HZYpj/kF0z0rdfZnzVwfQLOTHbYnYNkfGvPuUVU=; b=K8I1Ux9ZIwtu3VmY3w5Q0GQM/SdJL2eS8/NvEfn1qsi5HnSKgam87Sd59hYa18sOWC lqiV1NIpvCmD39OzXAmZaIVUd1LB4InqC+H21yDQKeUyGLdWOLCzCcjkjfD1sXr0MqIp QCc95w4Pw6wIGLS355duH9yArKcnf6nqfULQbbfacBCzjK6Czc61pX6brtm9gMf1OtSW Fe3j93lWGRv3zFv6Ci8CyBTa0Y47TzgoqdeQl6FGhyxonFwQtE2r9Ait6y0uZI6xJ9xC ZVGsMiMjAnSBjts5yibjogPGpmRCNIYH/lc7DVykN8/9FDlDu7MbvDQ6RcE6+IP8S26D k6Fg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=JsS7HZYpj/kF0z0rdfZnzVwfQLOTHbYnYNkfGvPuUVU=; b=EpOrAAYl9SuEo1PhrjRf1d5mnTAW+3jmB8B3H4kHmaQPJNAh4QFMVN/jzJI57KemLd orSz3PlbR0o4J1s7wtdcxgFSpNmwVe21bL/54fW6C3IZwbvbTP6tGDr35amqIKr45wYz 8/jq2KMssCGTJ1QSl0+5Lt1NCJN7m6aJfTNeOL/bYFMkYZ7kVJkAuf/ClxESDeLvCV17 frguBIZJX+7AVO/iMDWqLzrzbwXFalDqbRrUGvnsU09jupPtBhPhJdn9hMwTWKyhp/90 whaYUFno52g0ieniQjElMdMU8vez4kXW7RiUpQB7KOkObwP1dYxoirdinAfQP02ZeGGn t/ow==
X-Gm-Message-State: AG10YOTiLuR38evstR7+W62LZlMEMYfOnDJ0cg0r5LbavPFoGMoMvv4pzL6WzG22ef4kkQ/Wh1D9/JtXkDFK1g==
MIME-Version: 1.0
X-Received: by 10.107.198.197 with SMTP id w188mr38094062iof.178.1456342035340; Wed, 24 Feb 2016 11:27:15 -0800 (PST)
Sender: jinmei.tatuya@gmail.com
Received: by 10.107.169.35 with HTTP; Wed, 24 Feb 2016 11:27:15 -0800 (PST)
In-Reply-To: <6AC58C26-01B6-4C16-851F-0C1228CDD2AF@employees.org>
References: <6AC58C26-01B6-4C16-851F-0C1228CDD2AF@employees.org>
Date: Wed, 24 Feb 2016 11:27:15 -0800
X-Google-Sender-Auth: lXlFTvuajCZu_AM2zCMq6qcU4mI
Message-ID: <CAJE_bqfvE0jGoRi2X=ohpqsXmGx9AVKnjeGH-P8zWp6=3_kbVA@mail.gmail.com>
Subject: Re: 6MAN Working group last call: draft-ietf-6man-rdnss-rfc6106bis
From: 神明達哉 <jinmei@wide.ad.jp>
To: Ole Troan <otroan@employees.org>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <http://mailarchive.ietf.org/arch/msg/ipv6/ONd704zGa8tIx8fGnQZNd6V9Vbg>
Cc: Bob Hinden <bob.hinden@gmail.com>, 6man WG <ipv6@ietf.org>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.15
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, 24 Feb 2016 19:27:18 -0000

At Tue, 9 Feb 2016 10:54:16 +0100,
otroan@employees.org wrote:

> This message starts a two week 6MAN Working Group Last Call on advancing:
>
>      Title    : IPv6 Router Advertisement Options for DNS Configuration
>      Authors  : J. Jeong, S. Park, L. Beloeil, S. Madanapalli
>      Filename : draft-ietf-6man-rdnss-rfc6106bis-06
>      Pages    : 17
>      Date     : 2015-10-09
>
>     https://tools.ietf.org/html/draft-ietf-6man-rdnss-rfc6106bis-06
>
> as a Proposed Standard.  Substantive comments and statements of
> support for publishing this document should be directed to the
> mailing list.  Editorial suggestions can be sent to the authors.
> This last call will end on 23 February 2016.

I've reviewed the 06 version.  I don't have a particular opinion on
whether to publish it, but I have some comments:

- Section 5

   The IPv6 DNS configuration mechanism in this document needs two new
   ND options in Neighbor Discovery: (i) the Recursive DNS Server
   (RDNSS) option and (ii) the DNS Search List (DNSSL) option.

  "new" sounds like awkward since, well, it's not new any more.  I
  don't know the usual practice (if any) in cases like this for "-bis"
  specifications, but I'd suggest just removing "new".

- Section 5.1

     Lifetime      32-bit unsigned integer.  The maximum time, in
                   seconds (relative to the time the packet is sent),
                   over which this RDNSS address MAY be used for name
                   resolution.

  Shouldn't "relative to the time the packet is sent" actually be
  "relative to the time the packet is received"?  In practice these
  two wouldn't be different very much anyway, but, technically, the
  former looks awkward to me since the recipient can't know that time.

- Section 5.1

   Note:  [...]  The link zone indices SHOULD be
      represented in the textual format for scoped addresses as
      described in [RFC4007].

  Perhaps the actual intent is "The link-local addresses SHOULD be
  represented with their link zone indices in the textual format for
  scoped addresses as described in [RFC4007]."?  Also, it's not very
  clear to me why it's a "SHOULD".  Maybe because it's convenient as
  the DNS client (stub resolver) implementation can simply pass the
  textual text (whether it's link-local or not) to a utility function
  like getaddrinfo()?  If so, that's understandable, but I guess it's
  not obvious and should be explained explicitly.  Also, I'm not sure
  if this convenience (if that's the reason for the SHOULD) is worth
  the RFC2119 keyword.  While it'd certainly be convenient, this seems
  to be a pure implementation choice.

- Section 5.2: s/name/names/

     Lifetime      32-bit unsigned integer.  The maximum time, in
                   [...]
                   (0xffffffff) represents infinity.  A value of zero
                   means that the DNSSL domain name MUST no longer be
                   used.

- Section 5.2

     Domain Names of DNS Search List
                   One or more domain names of DNS Search List that MUST
                   be encoded using the technique described in Section
                   3.1 of [RFC1035].

  The word "technique" sounds awkward to me as it's the standard wire
  format of domain names.  I suggest, e.g., just saying "...encoded as
  described in Section 3.1 of [RFC1035]".

- Section 6

   In environments where the DNS information is stored in user space and
   ND runs in the kernel, it is necessary to synchronize the DNS
   information (i.e., RDNSS addresses and DNS search domain names) in
   kernel space and the Resolver Repository in user space.  For the
   synchronization, an implementation where ND works in the kernel
   should provide a write operation for updating DNS information from
   the kernel to the Resolver Repository.  One simple approach is to
   have a daemon (or a program that is called at defined intervals) that
   keeps monitoring the Lifetimes of RDNSS addresses and DNS search
   domain names all the time.  [...]

  This seems to assume that "ND runs in the kernel" means that all
  information in RAs is managed in the kernel.  I don't know if
  there's such an implementation (does Linux work that way?), but it
  doesn't necessarily have to be so, and is actually different from
  the BSD implementation: the FreeBSD's rtsol(d) completely works as a
  user space application, receives RA via an ICMPv6 socket using the
  standard advanced socket API (RFC3542), and manages RDNSS
  implementation independently from the kernel (even if some other
  parts of the RA are managed in the kernel).  So, I'd at least
  suggest clarifying that this kind of approach is only necessary for
  some deviant protocol stack implementation that doesn't even support
  RFC3542.  And, I'd also mention the FreeBSD-style approach as it
  should be more generic and portable.

- Section 6.3: this section largely repeats the text of Section 6.2
  and looks redundant to me.  I'd consider unifying these two sections
  and eliminate unnecessary duplicates.

- Section 6.3: on a related point, this text looks awkward:

      Step (b): For each DNSSL domain name, check the following: [...]
      [...] for certain reasons in network management,
      e.g., the termination of the RDNSS or a renaming situation.  That
      is, the RDNSS can resign from its DNS service because the machine
      running the RDNSS is out of service intentionally or
      unintentionally.  Also, under the renaming situation, the DNSSL

  How can the termination of a particular RDNSS mean that DNSSL names
  are not usable anymore?  There may be a case where one event is
  realted to the other, but I don't see any obvious relationship
  between these two (the RDNSS may simply be replaced with a new,
  different node).  This text rather seems to be a result of a naive
  copy of Section 6.2.

- Section 7.1, second paragraph.  Most of the text in this paragraph
  is irrelevant to this protocol and looks redundant to me.  I'd
  consider just referring to some other document for the general
  issue.

- Section 7.2

   The Secure Neighbor Discovery (SEND) protocol [RFC3971] is used as a
   security mechanism for ND.  It is RECOMMENDED that ND use SEND to
   allow all the ND options including the RDNSS and DNSSL options to be
   automatically included in the signatures.

  I don't think this "RECOMMENDED" is realistic.  As a matter of fact,
  SEND isn't even widely implemented, and, IMO, its deployability
  issues are not easily resolved.  I don't have a specific suggestion
  on how to make the whole text realistic, but I'd at least suggest
  stopping to make such an unrealistic requirement, especially with an
  RFC2119 keyword.

--
JINMEI, Tatuya