Buffalo WZR-HP-G300NH ipv6 toe seadistamine
Allikas: lillepuu.com
Buffalo WZR-HP-G300NH on DD-WRT firmwarega wifi ruuter
IPv6 toe seadistamine sisevõrgus SixXS tunneli ja radvd abil
eelduseks on SixXSi kasutajakonto, tunneli ja ipv6 subneti olemasolu. Juhend võib toimida ka teiste DD-WRT kasutavate ruuteritega, Buffalo on lihtsalt mõned ipv6 pakid kohe kaasa pannud.
vajalikud muudatused Buffalo veebiliideses:
- Services->Services->Secure Shell->SSHD enabled + apply settings
- Administration->Management->JFFS2 Support->JFFS enabled + apply settings
- Administration>Management->IPv6 enabled + apply settings
vajalikud muudatused ssh käsureal:
- ssh root@192.168.11.1
- paigaldame ipkg abil aiccu:
cd /jffs mkdir etc usr wget http://downloads.openwrt.org/backfire/10.03/ar71xx/packages/aiccu_20070115-3_ar71xx.ipk ipkg -d root install aiccu_20070115-3_ar71xx.ipk
- aiccu konfiguratsioonifaili loomine:
vi /jffs/etc/aiccu.conf
# AICCU Configuration # # Login information (defaults: none) username ABC1-SIXXS password 1234 # # Interface names to use (default: aiccu) ipv6_interface sixxs # # The tunnel_id to use (default: none) # (only required when there are multiple tunnels in the list) tunnel_id T12345 # # Be verbose? (default: false) verbose false # # Daemonize? (default: true) # Set to false if you want to see any output # When true output goes to syslog daemonize true # # Automatic Login and Tunnel activation? automatic true # # Require TLS? # requiretls false # # PID File pidfile /tmp/var/run/aiccu.pid # # Add a default route (default: true) defaultroute true # # enable if using NAT and proto 41 forwarding # local_ipv4_override 192.168.1.xx
sünkroniseerime ruuteri kella ja käivitame aiccu:
ntpclient ntp.estpak.ee /jffs/usr/sbin/aiccu -C /jffs/etc/aiccu.conf
nüüd võib ruuteris proovida kas ipv6 tunnel töötab:
ping6 ipv6.google.com PING6(56=40+8+8 bytes) 2001:xxx:yyy:1:21f:f3ff:fe51:5559 --> 2a00:1450:8005::68 16 bytes from 2a00:1450:8005::68, icmp_seq=0 hlim=49 time=58.448 ms 16 bytes from 2a00:1450:8005::68, icmp_seq=1 hlim=49 time=58.199 ms 16 bytes from 2a00:1450:8005::68, icmp_seq=2 hlim=49 time=58.437 ms
radvd seadistamine
- radvd konfiguratsioonifaili loomine:
vi /jffs/etc/radvd.conf
interface br0 {
AdvSendAdvert on;
prefix 2001:xxx:yyy:1::/64
{
AdvOnLink on;
AdvAutonomous on;
};
};
ipv6 aadressi lisamine ja radvd käivitamine:
/usr/sbin/ip addr add 2001:xxx:yyy:1::1/64 dev br0 /usr/sbin/radvd -C /jffs/etc/radvd.conf
nüüd võib kontrollida kas sisevõrgu arvutid saavad ipv6 aadressi ning kas ipv6 aadresside ping toimib. testimiseks sobib ka http://whatismyipv6.com
kui sisevõrgus ipv6 toimib, tuleb lisada ruuteri ja wan startup scriptid:
vi /jffs/etc/config/ipv6.startup
/usr/sbin/ip addr add 2001:xxx:yyy:1::1/64 dev br0
vi /jffs/etc/config/ipv6.wanup
/usr/sbin/ntpclient ntp.estpak.ee /jffs/sbin/aiccu start /jffs/etc/aiccu.conf /usr/sbin/radvd -C /jffs/etc/radvd.conf
chmod +x /jffs/etc/config/ipv6.wanup chmod +x /jffs/etc/config/ipv6.startup
/jffs/etc/config/ipv6.startup /jffs/etc/config/ipv6.wanup
IPv6 tulemüür
täiendavate kerneli ipv6 moodulite paigaldamine:
cd /jffs wget http://www.lillepuu.com/dd-wrt/kmod-ipv6-ar71xx-2.6.24.111.tar tar xvf kmod-ipv6-ar71xx-2.6.24.111.tar
ip6tables paigaldamine:
cd /tmp wget http://downloads.openwrt.org/kamikaze/7.09/atheros-2.6/packages/ip6tables_1.3.7-1_mips.ipk ipkg -d root install ip6tables_1.3.7-1_mips.ipk
- lisame ipv6 tulemüüri skripti: /jffs/etc/config/firewall.wanup:
# br0 - internal interface (lan+wlan) # eth1 - external interface (wan) # load modules insmod /jffs/kmod/net/ipv6/netfilter/ip6_tables.ko insmod /jffs/kmod/net/ipv6/netfilter/ip6table_filter.ko insmod /jffs/kmod/net/ipv6/netfilter/nf_conntrack_ipv6.ko # set custom ip6tables libraries location export IP6TABLES_LIB_DIR=/jffs/usr/lib/iptables # allow ipv6 traffic iptables -A INPUT -p 41 -j ACCEPT # allow related, established and icmpv6 echo request # allow net -> loc icmpv6 # allow loc -> net all ip6tables -F INPUT ip6tables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT ip6tables -A INPUT -p icmpv6 --icmpv6-type echo-request -j ACCEPT ip6tables -A INPUT -i br0 -j ACCEPT ip6tables -A INPUT -i eth1 -p icmpv6 --icmpv6-type neighbor-solicitation -j ACCEPT ip6tables -A INPUT -i eth1 -p icmpv6 --icmpv6-type neighbor-advertisement -j ACCEPT ip6tables -A INPUT -i eth1 -p icmpv6 --icmpv6-type router-solicitation -j ACCEPT ip6tables -P INPUT DROP # allow related, established and icmpv6 echo request # allow local -> net all # allow net -> sixxs all ip6tables -F FORWARD ip6tables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT ip6tables -A FORWARD -p icmpv6 --icmpv6-type echo-request -j ACCEPT ip6tables -A FORWARD -i br0 -j ACCEPT ip6tables -A FORWARD -i eth1 -o sixxs -j ACCEPT ip6tables -P FORWARD DROP
käivitame tulemüüri skripti:
chmod +x /jffs/etc/config/firewall.wanup /jffs/etc/config/firewall.wanup
proovi kas seadistused toimivad ka pärast ruuteri rebooti:
reboot
Sellega on Buffalo IPv6 toe seadistamine lõppenud.
juhend on koostatud järgmiste allikate põhjal:
- http://www.dd-wrt.com/phpBB2/viewtopic.php?t=86912
- http://dd-wrt.com/wiki/index.php/IPv6#SixXS_Tunnel_Broker
- http://blog.dest-unreach.be/2010/12/05/adding-ipv6-support-to-dd-wrt
NB! ruuteri /jffs partitsioon tühjendatakse firmware uuendamisel, seega tuleb see iga kord enne uuendamist varundada ning pärast taastata:
- varundamine
ruuteris: cd /tmp tar cvf jffs-backup.tar /jffs
arvutis: scp root@192.168.11.1:/tmp/jffs-backup.tar .
- taastamine
arvutis: scp jffs-backup.tar root@192.168.11.1:/tmp
ruuteris: cd /jffs tar xvf /tmp/jffs-backup.tar
NAT ja IPv6 suunamine
kui Buffalo ühendub internetiga näiteks läbi Elioni Thomson 780 ruuteri, siis on vaja väline ipv6 liiklus suunata sisevõrku buffalo ipv4 aadressile. Kui Buffalo on ühendatud otse internetiga siis pole järgnevat juhendit vaja.
- ipv6 liikluse suunamine Thomson 780 -> Buffalo:
telnet 192.168.1.254 :expr add name=ipv6 type=serv proto=41 :firewall rule add chain=forward_host_service name=SixXS serv=ipv6 state=enabled action=accept :nat tmpladd intf=Internet type=nat outside_addr=0.0.0.1 inside_addr=192.168.1.xx protocol=6to4 :saveall
allikas: http://blog.timstoop.nl/2009/04/15/ipv6-tunnel-behind-thomson-modem-2/
Kui on plaan kõik seadmed peale elioni digiboksi Buffalo külge ühendada siis võib veebiliidesest Thomsoni wifi välja lülitada.
- aiccu konfiguratsioonifailis /jffs/etc/aiccu.conf tuleb lubada local_ipv4_override rida
Moodulite kompileerimine dd-wrt 2.6.24.111 ar71xx (mips) kerneli jaoks
2.6.24.111 kerneli source asub dd-wrt subversionis src/linux/pb42/linux-2.6.23 all (loogiline, eks)
current-toolchains vajab 64bit linuxi distrot. 14998 on Buffalo dd-wrt versiooninumber.
svn co svn://svn.dd-wrt.com/DD-WRT/src/linux/pb42/linux-2.6.23 -r 14998 wget http://www.dd-wrt.com/dd-wrtv2/downloads/others/sourcecode/toolchains/current-toolchains.tar.bz2 tar xvjf current-toolchains.tar.bz2 export PATH=/path/to/toolchain-mips_gcc-4.3.3+cs_uClibc-0.9.30.1/usr/bin:$PATH cd linux-2.6.23 cp .config_ap83 .config grep -v madwifi drivers/net/wireless/Kconfig >drivers/net/wireless/Kconfig.new mv drivers/net/wireless/Kconfig drivers/net/wireless/Kconfig.old mv drivers/net/wireless/Kconfig.new drivers/net/wireless/Kconfig echo "#define JHASH_GOLDEN_RATIO 0x9e3779b9" >> include/linux/jhash2.h echo CONFIG_NF_CONNTRACK_IPV6=m >> .config echo CONFIG_IP6_NF_QUEUE=m >> .config echo CONFIG_IP6_NF_IPTABLES=m >> .config make oldconfig
respond to all prompts with m, exept for CONFIG_IP6_NF_TARGET_IMQ which does not compile
kompileeri moodulid:
make modules
pakenda moodulid:
find . -name *.ko > modules-2.6.24.111 for i in `cat modules-2.6.24.111`; do mips-linux-strip --strip-unneeded $i; done tar cvf modules-ar71xx-2.6.24.111.tar -T modules-2.6.24.111
siit saab kerneli konfiguratsioonifaili ja kompileeritud moodulite paki:
- http://www.lillepuu.com/dd-wrt/config-ar71xx-2.6.24.111
- http://www.lillepuu.com/dd-wrt/modules-ar71xx-2.6.24.111.tar
allikad:

