No UDP/TCP IPv6 connectivity (only) to router using gif interface - maybe ARM related

From: Martin Laabs <mailinglists_at_martinlaabs.de>
Date: Mon, 02 Sep 2013 08:42:04 +0200
Hi,

I tried to set up my raspberry PI as an ipv6 router. As a tunnel broker I
use sixxs. Now I observed an interesting behavior:

Every host from my network can reach the ipv6 world. The ipv6 world can
also reach every host in my network. However - the router itself is unable
to make udp or tcp connection to the "world" and is also unable to accept
connections form the "world"
ICMP however works properly.
I had a look to the tcpdump and when trying to connect i.e. to www.kame.net
the rasperry router sends a syn packet and get a syn/ack packet back. The
rest of the handshake is missing.
I tried also some udp with netcat (nc -6 -u -l 5555 on the server and nc -6
-u <server> 5555 on the client)
This works great for internal (ethernet) traffic but when the data should
go through the tunnel if fails.

The last test is maybe the most significant to describe the bug:

Start netcat to listen for UDP packages on an external host:

<external host> nc -6 -u -l 5555

Connect from the RPI-Router to that host

<RPI> nc -6 -u 2001:4dd0:xxxx:xxxx::2 5555

Now it is possible to send data from the RPI router to the external host
but the opposite direction does not work. Tcpdump however shows that the
udp package arrives but it is not "forwarded" to the application.
So for me it seems to be a problem with the handling of the receiving data
in the gif interface.

This behavior is independent from net.inet6.ip6.forwarding or
net.inet6.ip6.redirect status.

The router system: FreeBSD raspberry-pi.xxx 10.0-CURRENT FreeBSD
10.0-CURRENT #2 r254984

Best regards,
 Martin Laabs
Received on Mon Sep 02 2013 - 04:42:09 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:41 UTC