Peter Memishian wrote:
> Seb/Erik,
> 
> In Nevada, when an IP interface's link-local address goes down, in.ndpd
> prints:
> 
>   Interface net0 has been removed from kernel. in.ndpd will no longer use it
> 
> ... but then it proceeds to leave any ADDRCONF'd addresses flapping in the
> breeze on the IP interface.  Since in.ndpd has stopped management of those
> addresses (via the message above and via phyint_cleanup()), and indeed no
> longer has a working link-local to manage them with, does it make sense to
> keep them around?  Could it instead just prefix_delete() all the PR_AUTO
> prefixes, and recreate them if the link-local comes back up?

Assuming in.ndpd isn't fooled by incorrect routing socket messages i.e., 
that it is robust against the internal ipif_down+ipif_up changes that 
the kernel does, then I don't see a problem with taking the link-local 
address going down as an indication that in.ndpd should clean up. BTW: 
Does the DHCPv6 client do the same thing?

One thing to look out for are interfaces that don't have a link-local 
address. I think 6to4 falls in that category. Need to make sure we don't 
regress the behavior for such interfaces.

    Erik

> I ask because if I could make this change, then I wouldn't need to add the
> message-passing interface between ifconfig and in.ndpd to convince it to
> stop managing the soon-to-be-underlying interfaces: ifconfig *already*
> brings down the link-local as part of preparing for an IP interface to
> join a group, so things would work cleanly.  So, is there an issue with
> this approach?
> 
> PS. As part of researching this I found a bunch more old IPMP-related code
>     in in.ndpd`check_if_removed() that can be deleted with Clearview IPMP.
> 
> Thanks,


Reply via email to