[Berlin-wireless] MAP66 (NAT fuer IPv6)
Sven-Ola Tuecke
sven-ola
Do Aug 26 19:39:18 CEST 2010
FYI,
ich hab'n Kernelmodul und eine ip6tables fuer NAT66 fertig. Nennt sich "MAP66"
um Namens- und Denkkonflikte zu vermeiden. Zur Zeit nur Kernel-2.6. Muss noch'n
Paket zusammenstellen und richtig testen kann ich gerade auch nicht (not-
enough sixxs points). Code steht erstmal hier:
http://ff-firmware.cvs.sourceforge.net/viewvc/ff-firmware/ff-devel/ip6t_MAP66-0.1/
Unter der Voraussetzung dass z.B. mit einer Freifunk-Firmware eine
durchgehende Route zum Gateway mit ULAs (also irgend eine IP aus
fdca:ffee:babe::/64) aufgebaut werden kann funktioniert das ganze auf dem IPv6-
Internet-Gateway etwa so:
insmod ip6t_MAP66.ko
ip6tables -t mangle -I POSTROUTING -o sixxs \
-s fdca:ffee:babe::/64 -j MAP66 --to 2001:4dd0:ff00:2ee::/64
ip6tables -t mangle -I PREROUTING -i sixxs \
-d 2001:4dd0:ff00:2ee::/64 -j MAP66 --to fdca:ffee:babe::/64
Lektuere: http://tools.ietf.org/html/draft-mrw-behave-nat66-02
Um dann noch einen Linux-Rechner ohne OLSR, der an einem Freifunk-Router per
Ethernet haengt, mit IPv6 zu versorgen (aktuelle Freifunk-Firmware-Testing,
muss noch ausgefummelt und mit GUI versehen werden):
ipkg install radvd
cat>/etc/radvd.conf<<EOF
root at sven-ola-gs:~# cat /etc/radvd.conf
interface br0
{
AdvSendAdvert on;
prefix fdca:ffee:babe::/64
{
AdvOnLink off;
};
#RDNSS 2001:4f8:0:2::14
#{
#};
};
EOF
ff_ipv6_lanmacs="00:0e:8e:0d:fe:be;00:c0:9f:2a:f2:38"
nvram commit
reboot
Damit bekommt der PC via Radvd eine passende ULA fuer das Freifunk-IPv6
verpasst und auszerdem wird die IP (des PCs) noch per Hna6 angekuendigt damit
es auch mit den Rueckrouten funzt.
// Sven-Ola
Mehr Informationen über die Mailingliste Berlin