State of IPv6 on Debian GNU/kFreeBSD
Hi,
I just tried to get an SixXS tunnel to my kFreeBSD box using aiccu.
Short summary:
I got it working, but many important IPv6 tools/packages are badly
broken even if the IPv4 counterparts works. Some bug reports exist,
some not, others claim to be fixed, but are still present.
Details:
First I had to patch aiccu slightly to build on kFreeBSD. The patch is
included in the newest aiccu package (which therefore is now also
available on kFreeBSD :-) and upstream also plans to include the fix
in the next (major) release. (See the "Known bugs and issues" section
on http://www.sixxs.net/tools/aiccu/history/)
After that I have a working IPv6 tunnel:
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1280
inet6 fe80::223:54ff:fec7:560a%tun0 prefixlen 64 scopeid 0x3
inet6 fe80::40e0:ff00:131:2%tun0 prefixlen 64 scopeid 0x3
inet6 2001:41e0:ff00:131::2 --> 2001:41e0:ff00:131::1
prefixlen 128
Opened by PID 84689
>From the inside, I can't ping6, because ping6 just doesn't work, not
even with ping6ing localhost:
!756 Z258 ?0 L1 root@metisse:ttyp0 (-zsh) 10:50:24 [~] # ping6 ::1
!757 Z259 ?1 L1 root@metisse:ttyp0 (-zsh) 10:52:25 [~] #
^-- return code
Details and bug report at http://bugs.debian.org/552138 since that's
obviously a bug.
If I ping6 2001:41e0:ff00:131::2 from the outside, I see the pings
coming in in tcpdump.
But they don't come back -- probably due to a missing default route
for IPv6:
# netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
[...]
Internet6:
Destination Gateway Flags Netif Expire
::1 ::1 UHL lo0
2001:41e0:ff00:131::1 link#3 UHL tun0
2001:41e0:ff00:131::2 link#3 UHL lo0
fe80::%re0/64 link#1 UC re0
fe80::223:54ff:fec7:560a%re0 00:23:54:c7:56:0a UHL lo0
fe80::%lo0/64 fe80::1%lo0 U lo0
fe80::1%lo0 link#2 UHL lo0
fe80::223:54ff:fec7:560a%tun0 link#3 UHL lo0
fe80::40e0:ff00:131:2%tun0 link#3 UHL lo0
ff01:1::/32 link#1 UC re0
ff01:2::/32 ::1 UC lo0
ff01:3::/32 link#3 UC tun0
ff02::%re0/32 link#1 UC re0
ff02::%lo0/32 ::1 UC lo0
ff02::%tun0/32 link#3 UC tun0
If I try to add a default route as I would on FreeBSD and according to
route(8), I get the following error message:
!758 Z260 ?68 L1 root@metisse:ttyp0 (-zsh) 10:57:43 [~] # route add -inet6 -net ::/0 2001:41e0:ff00:131::1
route: writing to routing socket: Invalid argument
!759 Z261 ?1 L1 root@metisse:ttyp0 (-zsh) 10:57:47 [~] #
If I do the same but using the /lib/freebsd/route instead /sbin/route
(which is a shell script wrapper around /lib/freebsd/route), it work's
like a charm:
!767 Z269 ?0 L1 root@metisse:ttyp0 (-zsh) 11:00:04 [~] # /lib/freebsd/route add -inet6 -net ::/0 2001:41e0:ff00:131::1
add net ::/0: gateway 2001:41e0:ff00:131::1
!768 Z270 ?0 L1 root@metisse:ttyp0 (-zsh) 11:00:18 [~] # netstat -rn
Routing tables
Internet:
[...]
Internet6:
Destination Gateway Flags Netif Expire
default 2001:41e0:ff00:131::1 UGS tun0
::1 ::1 UHL lo0
[...]
!769 Z271 ?0 L1 root@metisse:ttyp0 (-zsh) 11:00:46 [~] #
Looking into /usr/sbin/route I noticed that it's a wrapper around
/lib/freebsd/route. If I use that one directly it works as charm:
/lib/freebsd/route add -inet6 -net ::/0 2001:41e0:ff00:131::1
route: writing to routing socket: File exists
add net ::/0: gateway 2001:41e0:ff00:131::1: route already in table
!514 Z3 ?0 L1 root@metisse:ttyp0 (-zsh) 10:16:11 [~] # /lib/freebsd/route add -inet6 -net ::/0 2001:41e0:ff00:131::1
route: writing to routing socket: File exists
add net ::/0: gateway 2001:41e0:ff00:131::1: route already in table
!515 Z4 ?1 L1 root@metisse:ttyp0 (-zsh) 10:18:01 [~] # /lib/freebsd/route del -inet6 -net ::/0 2001:41e0:ff00:131::1
del net ::/0: gateway 2001:41e0:ff00:131::1
!516 Z5 ?0 L1 root@metisse:ttyp0 (-zsh) 10:18:54 [~] # /lib/freebsd/route add -inet6 -net ::/0 2001:41e0:ff00:131::1
add net ::/0: gateway 2001:41e0:ff00:131::1
!517 Z6 ?0 L1 root@metisse:ttyp0 (-zsh) 10:18:57 [~] #
So the wrapper does not to support IPv6.
Anyone working on this? If not I would try to get IPv6 support into
it, but a comment about the reason for and the ideas behind the
wrapper from its author would be helpful.
Another thing I noticed is that traceroute6 (not tcptraceroute6) is
missing on kfreebsd. Reason seems to be a FTBFS which is said to be
closed with 2.0.7-1 (according to http://bugs.debian.org/403768) but
according to https://buildd.debian.org/pkg.cgi?pkg=traceroute and my
installation still is present since then:
kfreebsd-i386:
!522 Z11 ?0 L1 root@metisse:ttyp0 (-zsh) 10:23:23 [~] # apt-cache policy traceroute
traceroute:
Installed: 1.4a12-18
Candidate: 1.4a12-18
Version table:
*** 1.4a12-18 0
990 http://debian.ethz.ch unstable/main Packages <--- this is probably the old debian-ports archive
100 /var/lib/dpkg/status
!523 Z12 ?0 L1 root@metisse:ttyp0 (-zsh) 10:26:05 [~] #
amd64:
3/0/0 root@kiva6:pts/2 10:23:33 [~] # apt-cache policy traceroute
traceroute:
Installed: 2.0.12-3
Candidate: 2.0.12-3
Version table:
*** 2.0.12-3 0
990 http://ftp.ch.debian.org sid/main Packages
600 http://ftp.ch.debian.org testing/main Packages
100 /var/lib/dpkg/status
2.0.11-2 0
400 http://ftp.ch.debian.org stable/main Packages
1.4a12-21 0
500 http://ftp.ch.debian.org oldstable/main Packages
4/0/0 root@kiva6:pts/2 10:26:12 [~] #
What's the current policy regarding FTBFS on kfreebsd? Report them?
Reopen them if they claim to be fixed, but don't report new ones?
Regards, Axel
--
/~\ Plain Text Ribbon Campaign | Axel Beckert
\ / Say No to HTML in E-Mail and News | abe@deuxchevaux.org (Mail)
X See http://www.asciiribbon.org/ | abe@noone.org (Mail+Jabber)
/ \ I love long mails: http://email.is-not-s.ms/ | http://noone.org/abe/ (Web)
Reply to: