Re: [v6ops] DAD again [was: draft-ietf-v6ops-host-addr-availability discussion]

Owen DeLong <> Fri, 13 November 2015 22:52 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id B3E341B33E1 for <>; Fri, 13 Nov 2015 14:52:09 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -6.111
X-Spam-Status: No, score=-6.111 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_ADSP_ALL=0.8, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id bYA0NgJ94Q2a for <>; Fri, 13 Nov 2015 14:52:08 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id 170F11B33DF for <>; Fri, 13 Nov 2015 14:52:07 -0800 (PST)
Received: from (delong-dhcp29 []) (authenticated bits=0) by (8.14.5/8.14.5) with ESMTP id tADMn0Ot031416 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Fri, 13 Nov 2015 14:49:01 -0800
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\))
From: Owen DeLong <>
In-Reply-To: <>
Date: Fri, 13 Nov 2015 14:49:00 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <>
References: <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <! ! ! m> <> <> <> <> <> <>
To: "Hemant Singh (shemant)" <>
X-Mailer: Apple Mail (2.2104)
Archived-At: <>
Cc: "" <>
Subject: Re: [v6ops] DAD again [was: draft-ietf-v6ops-host-addr-availability discussion]
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: v6ops discussion list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 13 Nov 2015 22:52:09 -0000

> On Nov 13, 2015, at 14:00 , Hemant Singh (shemant) <> wrote:
> -----Original Message-----
> From: Owen DeLong [] 
> Sent: Friday, November 13, 2015 3:41 PM
> To: Hemant Singh (shemant)
> Cc: Alexandre Petrescu;
> Subject: Re: [v6ops] DAD again [was: draft-ietf-v6ops-host-addr-availability discussion]
>> Sure, but in such a case, DAD on the LAN interface wouldn’t detect the loopback nor would DAD on the loopback interface.
> If the loopback interface issues a DAD probe and if the router sends the probe out the outbound interface, another host on the LAN segment does see the DAD probe.  On detecting a duplicate, another node sends an NA to signal a Dup.  The NA does reach the router's outbound interface and then the router knows the IPv6 address provisioned on the loopback interface and thus cannot be used

Sure, but you’re talking about this like the interface is autonomous from the operating system in this process which is absurd.

An interface doesn’t issue a DAD probe, the operating system does. The operating system, further, sends those out on the interface where the address in question is to be configured.

I suppose if the interface is a member of a bridge group (e.g. lo0 and eth0 are both members of br125 and the address in question is being configured on br125), then you would see the DAD request sent to both eth0 and lo0 as they are part of a common link (from the OS perspective, it is sent to br0 which in turn invokes the bridging driver which would deliver the packets in question to lo0 and eth0 as a result of the bridge group definition).

Short of that, however, the behavior you describe doesn’t match my understanding of the reality in any modern operating system with which I am familiar.

In most circumstances, it’s far from desirable to have addresses from the same subnet on different links separated by a router. (lo0 is separated from eth0 by the host in question which is acting as a router if it accepts packets on eth0 for destination address(es) configured on lo0 whether you want to admit this to yourself or not). In fact, most properly designed routers will flag such configurations as an error and refuse to install them.

> An app such as tftpv6 or NTPv6 uses IPv6 global address of the loopback interface as source IPv6 address.   If a duplicate exists in the LAN segment, couldn't the tftpv6 or NTPv6 server responses head to the dup in the LAN instead of the loopback interface on the router?

You’re talking about a strange corner case with a misconfigured router. Not sure why we should waste time engineering for such brokenness in the first place.

> If a loopback interface does not perform DAD, then use a configuration on the loopback interface to set DupAddrDetectTransmits to zero.  Why change other text in RFC4861 to special-case a loopback interface to be excluded for DAD.

I would argue that DAD on a lo interface is an absurd concept. By definition the addresses on a lo interface should not be outside of the exclusive control of the host in question and it should know all addresses in use on the lo interface.

The lo interface should not be sharing addresses with other interfaces unless they are members of a common bridge interface in which case the address would not apply to lo but would, instead, apply to the bridge group.

DAD is required on a bridge group interface.

There is no need for DAD on a loopback interface in any sane configuration.