IPv6, 6in4 tunnel - GUI only

From DD-WRT Wiki

Revision as of 07:11, 25 January 2016 by Mile-Lile (Talk | contribs)
Jump to: navigation, search

Contents


Introduction

What is 6in4 tunnel?

login or register
login or register
Registration form
Registration form
Creating tunnel
Creating tunnel
Tunnel info on IP6 and MTU
Tunnel info on IP6 and MTU

6in4 is an Internet transition mechanism for migrating from Internet Protocol version 4 (IPv4) to IPv6. 6in4 uses tunneling to encapsulate IPv6 traffic over explicitly-configured IPv4 links as defined in RFC 4213 (obsoletes RFC 2893 and RFC 1933).

6to4 is not equal 6in4?

No. 6to4 is an Internet transition mechanism for migrating from IPv4 to IPv6, a system that allows IPv6 packets to be transmitted over an IPv4 network (generally the IPv4 Internet) without the need to configure explicit tunnels. Special relay servers are also in place that allow 6to4 networks to communicate with native IPv6 networks.

In another words, if you only get IPv4 from your ISP, but you want to be able to reach IPv6 sites, 6in4 is one of your solutions. It is simple and free with a just few of clicks in ddwrt GUI:)


Setup

First thing you need to do, is to create your account at HE.net IPv6 Tunnel Broker After creating an account, return back to main page to create a tunnel. Choose your nearest location. Click on Host/Identifier: The DNS fully-qualified name of your tunnel, not the numeric Tunnel ID. This is of the form <user>-<index>.tunnel.<tunnel-server>.<datacenter>.ipv6.he.net.


You also need to accept ping (icmp protocol) from HE server to. So save this command as your firewall rule:


iptables -I INPUT 2 -s 66.220.2.74 -p icmp -j ACCEPT


Now, setup your ddwrt and enable radvd as shown on screenshots. Pay attention on MTU (generally wanif MTU - 20). That's all. You are ready to go! You should be able to browse ipv6 sites now. Check your connection with links provided at the bottom of the page.



Custom settings using DNSMasq or radvd+dhcp6s

If you prefer you can use DNSMasq, for router advertisements, instead of Radvd (disable radvd, dhcp6c and dhcp6s on ipv6 tab). Just put these directives in Additional DNSMasq Options (Services tab of your ddwrt):

DNSMasq:

interface=br0 
enable-ra 
dhcp-range=::1000,::FFFF,constructor:br0,ra-names,5m 
dhcp-option=option6:dns-server,[::]
#dhcp-option=option6:ntp-server,[2001:470:0:50::2]
ra-param=br0,10,300 
quiet-ra 
quiet-dhcp 
quiet-dhcp6
Setting ddwrt GUI
Setting ddwrt GUI
MTU
MTU

If you are ipv6 "explorer", and want to experiment with custom radvd and custom dhcp6s configuration to get stateful configuration (required for IPv6 Address Reservations) enable custom for both. This way router will use radvd for advertisements and dhcp6s for assigning leases. You must use both in conjuction. Pay attention not to put these directives below, to "Custom hosts" box. You have to enable Dhcp6s custom and Dhcp6s config box will appear.

dhcp6s:

option domain-name-servers 2620:0:ccc::2 2620:0:ccd::2;
option refreshtime 900;
interface br0 {
address-pool pool1 3600;
};
pool pool1 {
range 2001:470:6d:a91::1000 to 2001:470:6d:a91::2000;
# line above is Assigned/Routed Prefix ::1000 to ::2000
};

radvd:

interface br0
{
AdvSendAdvert on;
AdvManagedFlag off;
AdvOtherConfigFlag on;
AdvReachableTime 0;
AdvRetransTimer 0;
AdvCurHopLimit 64;
AdvHomeAgentFlag off;
AdvDefaultPreference medium;
AdvSourceLLAddress on;
AdvDefaultLifetime 900;
AdvLinkMTU 1428; # MTU of WAN interface - 20
prefix  2001:470:6d:a91::/64 { #Assigned/Routed Prefix
AdvValidLifetime 86400;
AdvPreferredLifetime 14400;
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr on;
};
};

Troubleshooting

Dynamic_IP_change
Dynamic_IP_change
feature_starting_28788
feature_starting_28788

About MTU you can read HERE and HERE Don't go under 1280 because it is the minimum IPv6 packet size.

If your ISP provides you with dynamic IP than you need announce every change on HE. You can use DNS-O-MATIC method or starting public build 28788 (unit with curl ONLY) you can do it from the ipv6 tab within your ddwrt. Just copy Update URL from Advanced tab of the he account and paste it like on the screenshot.

Now, if everything is ok, you should be able to ping ipv6.google from your PC (MS Win) command prompt:

ping -6 ipv6.google.com

If you have problem with your win machines read this

Check your connection:

http://test-ipv6.com http://ipv6-test.com http://test-ipv6.netiter.dk


special thx to JAMESMTL