Re: 6.0-RC1 IPv6 losing local subnet route

From: SUZUKI Shinsuke (suz_at_kame.net)
Date: 10/29/05

  • Next message: Jon Otterholm: "if_bridge and vlan"
    Date: Sat, 29 Oct 2005 21:22:08 +0900
    To: craig@olyun.gank.org
    
    

    Hello all,

    >>>>> On Fri, 28 Oct 2005 16:14:16 -0500
    >>>>> craig@olyun.gank.org(Craig Boston) said:

    > Knowing that, I can cause it to happen on command by manually
    > re-configuring an interface with an address it already has:
    > # ifconfig em1 inet6 2002:abcd:ef01:5555::20
    > (routes are all normal)
    > # ifconfig em1 inet6 2002:abcd:ef01:5555::20
    > (prefix route disappears)

    I could reproduce your problem, and found out the reason: it's a bug,
    not a feature.

    In this case, the second ifconfig command removes the old address and
    then installs the new one (actually the same one again). Within
    kernel, however, the prefix route is completely removed after 1[s] by
    nd6_timer() (this 1[s] timer is set in in6.c in6_control() l.710).

    This route-removing timer is invoked after the addition of new
    address, and removes the prefix route. (prefix lifetime is not
    properly managed in case of a statically configured address)

    Here's the list of possible solutions. I'm now working on the second
    one. But if you need an immediately solution for 6.0-RELEASE, please
    consider the first one.

    - in ifconfig, wait for 1[s] between the removal of the old address
      and addition of the new address
              it immediately works, but people has to wait 1[s] for each
              address assignment...

    - in kernel, properly manages the reference count of nd_prefix and
      remove the nd_prefix only when the reference count becomes 0.
              There's a KAME code implementing this.
            I'm now porting it, but it'll take some time to check its
            behavior (a day or two)...

    Thanks,

    ----
    SUZUKI, Shinsuke @ KAME Project
    _______________________________________________
    freebsd-net@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-net
    To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
    

  • Next message: Jon Otterholm: "if_bridge and vlan"