Any comments on the diff in this?

On 2014/10/08 13:31, Stuart Henderson wrote:
> On 2014/10/08 11:10, Stefan Sperling wrote:
> > On Tue, Oct 07, 2014 at 11:42:10PM -0400, Brad Smith wrote:
> > > On 07/10/14 10:03 PM, Stuart Henderson wrote:
> > > >Since it's non-obvious how to setup pppoe for v6 now that link-local
> > > >addresses are no longer configured by default, I think we should have
> > > >something in the manual.
> > > >
> > > >Any comments/objections/suggestions for a better way to do this?
> > > 
> > > This doesn't make any sense. IPv6CP configures the link local address.
> > 
> > IPv6CP prevents *collisions* of link-local addresses on the same p2p link.
> > 
> > If an existing link-local address doesn't collide with the remote peer's
> > address we keep using the existing address. The link-local address will
> > be changed by IPv6CP only if there is a collision (which won't ever happen
> > under normal conditions).
> 
> pppoe(4) doesn't send an IPV6CP request unless it already has a
> link-local address.
> 
> With a pre-existing link-local :
> 
> We request
> They ack
> They request
> We ack
> Done, echoes start
> 
> Without :
> 
> They request
> We ack
> They request
> We ack
> They request
> We ack
> They request
> We ack
> They reques.....etc etc until they give up waiting for us to send a req.
> 
> > A route to fe80:: needs to be configured statically in any case
> > until autoconf works with ip6 forwarding enabled.
> > 
> > !/sbin/route add default -ifp pppoe0 fe80::
> > 
> > I suppose we can't run this command from hostname.pppoe0 if there is
> > no IPv6 address yet, so it makes sense to configure one first.
> 
> With the current behaviour it's more that it's a requirement rather
> than just "makes sense".
> 
> But then... you expect that a pppoe(4) interface *does* pick up addresses
> automatically when it's configured/brought up, so perhaps the argument
> that triggered the change to NOINET6 by default shouldn't apply in this
> case - should pppoe(4) interfaces actually get an IPv6 link-local address
> by default like they used to?
> 
> Index: if_pppoe.c
> ===================================================================
> RCS file: /cvs/src/sys/net/if_pppoe.c,v
> retrieving revision 1.41
> diff -u -p -w -r1.41 if_pppoe.c
> --- if_pppoe.c        13 Aug 2014 12:03:40 -0000      1.41
> +++ if_pppoe.c        8 Oct 2014 12:24:07 -0000
> @@ -245,6 +245,9 @@ pppoe_clone_create(struct if_clone *ifc,
>       timeout_set(&sc->sc_timeout, pppoe_timeout, sc);
>       
>       if_attach(&sc->sc_sppp.pp_if);
> +#ifdef INET6
> +     sc->sc_sppp.pp_if.if_xflags &= ~IFXF_NOINET6;
> +#endif
>       if_alloc_sadl(&sc->sc_sppp.pp_if);
>       sppp_attach(&sc->sc_sppp.pp_if);
>  #if NBPFILTER > 0
> 

Reply via email to