From: Su Yanjun <suyj.f...@cn.fujitsu.com> Date: Mon, 29 Jul 2019 10:49:51 +0800
> When we send mpls packets and the interface only has a > manual global ipv6 address, then the two hosts cant communicate. > I find that in ndisc_send_ns it only tries to get a ll address. > In my case, the executive path is as below. > ip6_output > ->ip6_finish_output > ->lwtunnel_xmit > ->mpls_xmit > ->neigh_resolve_output > ->neigh_probe > ->ndisc_solicit > ->ndisc_send_ns > > In RFC4861, 7.2.2 says > "If the source address of the packet prompting the solicitation is the > same as one of the addresses assigned to the outgoing interface, that > address SHOULD be placed in the IP Source Address of the outgoing > solicitation. Otherwise, any one of the addresses assigned to the > interface should be used." > > In this patch we try get a global address if we get ll address failed. > > Signed-off-by: Su Yanjun <suyj.f...@cn.fujitsu.com> David, can you take a quick look at this? Thank you.