Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 17 Aug 2016 07:58:45 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-bugs@FreeBSD.org
Subject:   [Bug 211926] svn rev 303171 breaks Layer 2 with IPv6 on the freebsd.org cluster
Message-ID:  <bug-211926-8@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D211926

            Bug ID: 211926
           Summary: svn rev 303171 breaks Layer 2 with IPv6 on the
                    freebsd.org cluster
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs@FreeBSD.org
          Reporter: peter@FreeBSD.org

After rev 303171 we are seeing multiple network stack problems.

The most urgent is that Layer-2 routing is broken and packets are being sen=
t to
the wrong address.

In the paste below,
0c:c4:7a:49:48:70 =3D halo
00:25:90:30:d7:48 =3D ns1
00:00:5e:00:01:64 =3D default gateway

04:18:06.156769 0c:c4:7a:49:48:70 > 00:25:90:30:d7:48, ethertype IPv6 (0x86=
dd),
length 102: halo.40045 > ns1.domain: 26984+% [1au] DS? freebsd.org. (40)
04:18:06.156942 00:25:90:30:d7:48 > 00:00:5e:00:01:64, ethertype IPv6 (0x86=
dd),
length 313: ns1.domain > halo.40045: 26984 2/0/1 DS, RRSIG (251)

You can see the reply is being incorrectly sent to the default gateway.  We
have confirmed with tcpdump that the gateway actually is receiving the pack=
ets
and it isn't a display error.

>From the broken machine we can see it known to ndp:
# ndp -n halo
Neighbor                             Linklayer Address  Netif Expire    S F=
lags
2610:1c1:1:6002::16:12               0c:c4:7a:49:48:70    em0 23h59m45s S=20

And the default gateway is also present in ndp:
# ndp -an
...
fe80::1%em0                          00:00:5e:00:01:64    em0 23h59m57s S R
...

A 'route get' shows the correct answer on the affected machine.
# route -n get -inet6 halo
   route to: 2610:1c1:1:6002::16:12
destination: 2610:1c1:1:6002::
       mask: ffff:ffff:ffff:ffff::
  interface: em0
      flags: <UP,DONE>

Reverting 303171 locally restores correct behavior where both machines are =
able
to communicate directly on the same ethernet segment again. When the packets
arrive at the router it (understandably) refuses to route it back out the s=
ame
interface it arrived on.

I am aware that 303171 has been mfc'ed to 11-stable.  It appears to work wh=
en
we tried stable/11 temporarily but I cannot explain why.  (These are in
redundant paired machines, one runs 11, the other runs 12.)

The machine does have jails.  ns1 is a dual-stack jail.  The host runs an e=
m0
interface, but we have also seen it on igb, bce, bge and vlan.

Jail addresses:
        127.0.1.8
        96.47.72.14
        2610:1c1:1:6002::100

Interface addresses:
        inet 96.47.72.4 netmask 0xffffffe0 broadcast 96.47.72.31=20
        inet 96.47.72.21 netmask 0xffffffff broadcast 96.47.72.21=20
        inet 96.47.72.14 netmask 0xffffffff broadcast 96.47.72.14=20
        inet6 2610:1c1:1:6002::1004 prefixlen 64=20
        inet6 2610:1c1:1:6002::7b:1 prefixlen 128=20
        inet6 2610:1c1:1:6002::100 prefixlen 128

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-211926-8>