IPV6 Tunnel Setup Guide

This is my first attempt at editing and fixing someone else tutorial.

You will need a tunnel broker, and you can follow my guide and use Hurricane Electric. Once you have your account set up, you will need to create a regular tunnel, and all you have to do is enter in your public IP address which can be found at http://whatismyipaddress.com/.

With that set up, now you will need to get your tunnel info. Here is an example:

Server IPv4 Address:

Server IPv6 Address: 2001:480:a:40b::1/64

Client IPv4 Address: 123.456.789.101 (Your IP address here)

Client IPv6 Address: 2001:480:a:40b::2/64

Routed /64:2001:480:b:40b::/64

In my case, as I’m behind NAT on my router, so the tunnel actually ends at (for the Windows configuration, not set in the HE control panel).

For Windows, you will have to enable IPv6 for XP/2003, not for Vista/7, but if it is not, the command “ipv6 install” or “netsh interface ipv6 install” should get it set up.

In my example, I am using Windows 7. Open up the command prompt and type in:


netsh>interface ipv6

netsh interface ipv6>

This will put us into the IPv6 context of netsh and will save a lot of typing.

Next, we need to make the tunnel. I am using the example address from above; you should replace them with your own. Also note that I use the LAN IPv4 address for my end point. This is needed for the tunnel to work, but the broker doesn’t need to know this. Make sure you substitute your addresses for mine, as it will not work if you use mine.

netsh interface ipv6>add v6v4tunnel IP6Tunnel

netsh interface ipv6>add addr IP6Tunnel 2001:480:a:40b::1/64

That’s the tunnel set up. Don’t bother testing it yet though, as we don’t have a gateway set up. We also need to set up forwarding (allowing interfaces to forward traffic not meant for them) and advertising (telling other hosts where the router is). You will also need the name of your LAN interface. To find this out, either type “show interface”, or open your network connections window. In my case it is “Local Area Connection”. In this article, I have specified interfaces by name, but using “show interface” will also give you the ID of the interface (in my case, “Local Area Connection” is 5 and “IP6Tunnel” is 7) which can be substituted to save typing.

netsh interface ipv6>set interface IP6Tunnel forwarding=enabled

netsh interface ipv6>set interface “Local Area Connection” forwarding=enabled advertise=enabled

Now we need to add some routes, and tell Windows to broadcast these out to other machines on the network. We will set up three routes: one is your routed /64, and we will say that anything there is on the local connection; The next is the tunnel itself, and the final one is the default gateway. We will also broadcast all of these to the rest of the network.

netsh interface ipv6>add addr “Local Area Connection” 2001:480:a:bcd::1

netsh interface ipv6>add route 2001:480:b:40b::/64 “Local Area Connection” publi

netsh interface ipv6> add route ::/0 “IP6Tunnel” 2001:480:a:bcd::1 publish=yes

End Result:

IPV6 Command Prompt settings

And that should be it. Any IPv6 enabled machine on your LAN should now get a global IPv6 address and route. Note that I have not covered DNS. In my case this wasn’t an issue as my DNS server could already handle AAAA records, but yours may not.

Original source and credits: http://www.dezzanet.co.uk/articles/26/2010/05/12/Sharing-an-IPv6-tunnel-from-a-Windows-machine/

Bookmark the permalink.
  • tom

    I am not so sure about the usage of IPv6 tunnel. Why do I need this if I have iodine?

    • Anonymous

      This guide is for accessing IPv6 only VPSes or sites if your ISP doesn’t support IPv6.

  • Jonah Snead

    I’m getting “Ok.” but if I run ipconfig the Tunnel adapters say “media disconnected”

    • Paul

      I think you did’nt enter the right endpoint. It have to be your computer’s LAN IP address, not your public one.

      In this case, you have to delete and recreate a tunnel interface and enter the right endpoint.

  • Jeremy Durst

    “netsh interface ipv6>add addr IP6Tunnel 2001:480:a:40b::1/64” should be “netsh interface ipv6>add addr IP6Tunnel 2001:480:a:40b::2/64” although it looks correct in the screenshot.

  • DKT

    And DNS? I was looking for DNS 🙁