[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20181123.111822.1955916094908693402.davem@davemloft.net>
Date: Fri, 23 Nov 2018 11:18:22 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: liuhangbin@...il.com
Cc: netdev@...r.kernel.org, sbrivio@...hat.com, pabeni@...hat.com,
hideaki.yoshifuji@...aclelinux.com, maheshb@...gle.com
Subject: Re: [PATCH net] net/ipv6: re-do dad when interface has IFF_NOARP
flag change
From: Hangbin Liu <liuhangbin@...il.com>
Date: Wed, 21 Nov 2018 21:52:33 +0800
> When we add a new IPv6 address, we should also join corresponding solicited-node
> multicast address, unless the interface has IFF_NOARP flag, as function
> addrconf_join_solict() did. But if we remove IFF_NOARP flag later, we do
> not do dad and add the mcast address. So we will drop corresponding neighbour
> discovery message that came from other nodes.
>
> A typical example is after creating a ipvlan with mode l3, setting up an ipv6
> address and changing the mode to l2. Then we will not be able to ping this
> address as the interface doesn't join related solicited-node mcast address.
>
> Fix it by re-doing dad when interface changed IFF_NOARP flag. Then we will add
> corresponding mcast group and check if there is a duplicate address on the
> network.
>
> Reported-by: Jianlin Shi <jishi@...hat.com>
> Reviewed-by: Stefano Brivio <sbrivio@...hat.com>
> Signed-off-by: Hangbin Liu <liuhangbin@...il.com>
Applied.
Powered by blists - more mailing lists