From owner-freebsd-net@freebsd.org Fri Jun 22 18:08:58 2018 Return-Path: Delivered-To: freebsd-net@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7A1E71022F0F for ; Fri, 22 Jun 2018 18:08:58 +0000 (UTC) (envelope-from freebsd@dukhovni.org) Received: from mournblade.imrryr.org (mournblade.imrryr.org [108.5.242.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0EDB57A312 for ; Fri, 22 Jun 2018 18:08:58 +0000 (UTC) (envelope-from freebsd@dukhovni.org) Received: from [192.168.1.161] (straasha.imrryr.org [100.2.39.101]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mournblade.imrryr.org (Postfix) with ESMTPSA id 3E3A47A3309 for ; Fri, 22 Jun 2018 18:08:57 +0000 (UTC) (envelope-from freebsd@dukhovni.org) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 11.4 \(3445.8.2\)) Subject: Re: [PATCH]: The 6to4 stf0 interface flapping in/out of tentative in FreeBSD 11 From: Viktor Dukhovni In-Reply-To: <8fe71247-a9a4-e3cb-3e4a-03852307f080@yandex.ru> Date: Fri, 22 Jun 2018 14:08:56 -0400 Content-Transfer-Encoding: quoted-printable Reply-To: freebsd-net@freebsd.org Message-Id: References: <20171106042248.GL3322@mournblade.imrryr.org> <20180622163812.GA17559@mournblade.imrryr.org> <8fe71247-a9a4-e3cb-3e4a-03852307f080@yandex.ru> To: freebsd-net@freebsd.org X-Mailer: Apple Mail (2.3445.8.2) X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Jun 2018 18:08:58 -0000 > On Jun 22, 2018, at 1:41 PM, Andrey V. Elsukov = wrote: >=20 > Your change looks reasonable due to IPv6 DAD procedure does check for > presence of IFF_DRV_RUNNING flag. But actually it seems the right > solution should be disabling DAD for if_stf(4) interface. > IPv6 DAD requires that given interface should be multicast capable, = but > for if_stf(4) it is not true. > Will it help if you use `ifconfig stf0 inet6 no_dad` before assigning > IPv6 address? stf_up() in /etc/rc.d/stf has: ifconfig stf0 create >/dev/null 2>&1 ifconfig stf0 inet6 = 2002:${ipv4_in_hexformat}:${stf_interface_ipv6_slaid:-0}:${stf_interface_i= pv6_ifid} \ prefixlen ${stf_prefixlen} Are you suggesting to add the: ifconfig stf0 inet6 no_data right under "ifconfig stf0 create"? I'd have to find a convenient time = to reboot to the stock kernel, so this will take O(12 hours) before I can = re-test. Perhaps the fix should be belt-and-suspenders? Both set IFF_DRV_RUNNING and disable DAD automatically for lack of multicast support? Setting the flag bit might avoid other future issues. Avoiding needless DAD polling sounds sensible. --=20 Viktor.