{"id":282,"date":"2013-06-26T10:03:24","date_gmt":"2013-06-26T14:03:24","guid":{"rendered":"https:\/\/gotsteve.com\/blog\/?p=282"},"modified":"2013-06-27T14:35:05","modified_gmt":"2013-06-27T18:35:05","slug":"ipv6-and-4to6-tunnels","status":"publish","type":"post","link":"https:\/\/www.gotsteve.com\/blog\/ipv6-and-4to6-tunnels\/","title":{"rendered":"IPv6 and 6in4 tunnels"},"content":{"rendered":"<p>I&#8217;ve begun studying IPv6 in-depth recently; It&#8217;s quite interesting. \u00a0I setup my own tunnel \u00a0for my home network, as my ISP does not support IPv6 yet. \u00a0 \u00a0<a title=\"Hurricane Electric's\" href=\"https:\/\/www.he.net\">Hurricane Electric\u00a0<\/a>has some great resources, and they&#8217;ll also give you a tunnel and a \/64 (18 million trillion IPv6 addresses!)<\/p>\n<p>&nbsp;<\/p>\n<p>Here are the steps that worked for me; a prerequisite in my steps is a router with tomatousb firmware running a variant of linux 2.6 kernel (2.4 doesn&#8217;t support IPv6) \u00a0 (ddwrt should be similar) \u00a0so that you can create a static 6in4 tunnel. \u00a0 The option is generally available on the router under General &#8211;&gt; IPv6.<\/p>\n<p>&nbsp;<\/p>\n<ol>\n<li>Signup for an account @ Hurricane Electric&#8217;s\u00a0<a href=\"https:\/\/www.tunnelbroker.net\/\">https:\/\/www.tunnelbroker.net\/<\/a>\u00a0 Once signed up, create a new Regular Tunnel:\u00a0<a href=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-78.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-286\" alt=\"sshot-78\" src=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-78.jpg\" width=\"228\" height=\"288\" \/><\/a><\/li>\n<li>Put in your IPv4 address (will automatically be detected for you) \u00a0and choose a tunnel server close to your geographic location. \u00a0They do a decent job of recommending something close; but you be the judge of what&#8217;s closest to you&#8230;. \u00a0Hurricane Electric does a really nice job checking to see if you already have a tunnel available; and that the necessary steps are already done on your router (You have to allow ICMP echo replies on your router for this to work&#8230; ) \u00a0<a href=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-79.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-287\" alt=\"sshot-79\" src=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-79-300x280.jpg\" width=\"300\" height=\"280\" srcset=\"https:\/\/www.gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-79-300x280.jpg 300w, https:\/\/www.gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-79.jpg 673w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/li>\n<li>Ok. now you have your tunnel. There are a couple key pieces of information you&#8217;ll want to get familiar with at this point: (luckily Hurricane provides you a little info, I&#8217;ll \u00a0clarify in the green highlighted portion )<a href=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-80.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-288\" alt=\"sshot-80\" src=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-80-300x279.jpg\" width=\"300\" height=\"279\" srcset=\"https:\/\/www.gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-80-300x279.jpg 300w, https:\/\/www.gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-80.jpg 633w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><br \/>\n<em><br \/>\n<\/em><strong>Server IPv4 Address<\/strong><em> &#8211; This is the IPv4 endpoint of your Tunnel Server.\u00a0<\/em>\u00a0<span style=\"color: #339966;\">This will align to the IPv4 Tunnel Endpoint on your router.<\/span><br \/>\n<em><strong><br \/>\n<\/strong><\/em><strong>Client IPv6 Address (Endpoint)<\/strong><em><strong>\u00a0&#8211;\u00a0<\/strong><\/em><em>This is the IPv6 address that identifies your side of the tunnel. It will be what is homed on your endpoint device.\u00a0We utilize a \/64 for this because of RFC 3627. \u00a0<\/em><span style=\"color: #339966;\"><span style=\"color: #339966;\">This will align to the Tunnel Client IPv6 Address on your router.<span style=\"color: #000000;\"><\/p>\n<p><\/span><\/span><\/span><strong>Routed \/64 Prefix &#8211;<\/strong><em><em>\u00a0<\/em><span style=\"color: #000000;\">We automatically assign a \/64 to your account and route it via: ipv6 route [routed64] [clientV6Endpoint] This allows your endpoint device to operate as the router for this netblock and allows you to utilize DHCPv6 or RADVD to hand out IP&#8217;s from this allocation to your internal network. If you have more than one network segment please consider utilizing the \/48 above.<\/span> \u00a0<\/em><span style=\"color: #339966;\"><span style=\"color: #339966;\"><span style=\"color: #339966;\"><span>This aligns to the assigned\/routed prefix field on your router.<\/span><\/span><\/span><\/span>&nbsp;<\/p>\n<p><strong><span style=\"color: #000000;\">DNS Resolver &#8211;\u00a0<\/span><\/strong><span style=\"color: #000000;\"><span style=\"color: #333333;\"><em>These are recursive caching name servers that you can use through your tunnel either over IPv6 or IPv4. They will also allow you to access Google&#8217;s websites along with other organizations who have white-listed the servers as part of their IPv6 participation programs<\/em>. \u00a0<span style=\"color: #339966;\">The IPv6 nameserver\u00a0<\/span><span style=\"color: #339966;\">\u00a0should be put in the Static DNS field on your router<\/span><span style=\"text-decoration: underline; color: #339966;\">.<\/span><\/span><\/span><strong><span style=\"color: #000000;\"><br \/>\n<\/span><\/strong><\/li>\n<li>With all that explained, this is how you would configure this, in a router running tomatousb with the Basic &#8211;&gt; IPv6 Page:\u00a0<a href=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-83.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-289\" alt=\"sshot-83\" src=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-83-300x222.jpg\" width=\"300\" height=\"222\" srcset=\"https:\/\/www.gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-83-300x222.jpg 300w, https:\/\/www.gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-83.jpg 604w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><br \/>\nA couple of additional notes, also mentioned in the linksysinfo page below: \u00a0I left Tunnel MTU and TTL as default; \u00a0Hurricane suggests 1480. \u00a0Try 0 for default, and if it doesn&#8217;t work, then try 1480, 1280 for PPPoE, etc&#8230;<\/li>\n<li>Ok, you *should* be all setup. \u00a0Now from a IPv6 capable client, you should be able to confirm your IPv6 address aligns with the \/64 routed prefix, and then is a random address beyond that (EUI-64, maybe in a later post) \u00a0 \u00a0On a Windows box, I checked from the command line using ipconfig. \u00a0I did foolwith Network and Internet, Network Connections, and reordered File and Printer\/Client for Microsoft Networks as IPv6 first, as opposed to IPv4&#8230;<\/li>\n<li>Now, to test your \u00a0IPv6 connectivity from a browser. \u00a0I thoroughly recommend\u00a0<a href=\"https:\/\/test-ipv6.com\/\">https:\/\/test-ipv6.com<\/a>\u00a0 Your output will vary, and don&#8217;t be discouraged if it doesn&#8217;t work from the start; it took a little playing to get a clean bill of health:<a href=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-85.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-290\" alt=\"sshot-85\" src=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-85-300x293.jpg\" width=\"300\" height=\"293\" srcset=\"https:\/\/www.gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-85-300x293.jpg 300w, https:\/\/www.gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/sshot-85.jpg 620w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<p>IPv6 is the future; it may not happen overnight, but I suggest <strong>not\u00a0<\/strong>putting off learning it, and creating a tunnel is a great way to do so. \u00a0Forget NAT, broadcasts; \u00a0the times, they are a changin&#8217;!<\/p>\n<p>My thanks to the below links,\u00a0<a href=\"https:\/\/tomatousb.org\/forum\/t-347819\">https:\/\/tomatousb.org\/forum\/t-347819<\/a>\u00a0 and\u00a0<a href=\"https:\/\/www.linksysinfo.org\/index.php?threads\/setting-up-ipv6-for-he-tunnelbroker.35297\/\">https:\/\/www.linksysinfo.org\/index.php?threads\/setting-up-ipv6-for-he-tunnelbroker.35297\/<\/a>\u00a0for clearing up some of the lower-level details.<\/p>\n<p>&nbsp;<\/p>\n<p>Finally, here&#8217;s a \u00a0good image of \u00a0different types of deployments of IPv6 , courtesy of ntt:<\/p>\n<p><a href=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/gr_ipv6_tunneling.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-283\" alt=\"gr_ipv6_tunneling\" src=\"https:\/\/gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/gr_ipv6_tunneling-300x180.jpg\" width=\"300\" height=\"180\" srcset=\"https:\/\/www.gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/gr_ipv6_tunneling-300x180.jpg 300w, https:\/\/www.gotsteve.com\/blog\/wp-content\/uploads\/2013\/06\/gr_ipv6_tunneling.jpg 700w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>Steve<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve begun studying IPv6 in-depth recently; It&#8217;s quite interesting. \u00a0I setup my own tunnel \u00a0for my home network, as my ISP does not support IPv6 yet. \u00a0 \u00a0Hurricane Electric\u00a0has some great resources, and they&#8217;ll also give you a tunnel and a \/64 (18 million trillion IPv6 addresses!) &nbsp; Here are the steps that worked for&hellip; <a class=\"more-link\" href=\"https:\/\/www.gotsteve.com\/blog\/ipv6-and-4to6-tunnels\/\">Continue reading <span class=\"screen-reader-text\">IPv6 and 6in4 tunnels<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-282","post","type-post","status-publish","format-standard","hentry","category-uncategorized","entry"],"_links":{"self":[{"href":"https:\/\/www.gotsteve.com\/blog\/wp-json\/wp\/v2\/posts\/282","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gotsteve.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gotsteve.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gotsteve.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gotsteve.com\/blog\/wp-json\/wp\/v2\/comments?post=282"}],"version-history":[{"count":0,"href":"https:\/\/www.gotsteve.com\/blog\/wp-json\/wp\/v2\/posts\/282\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.gotsteve.com\/blog\/wp-json\/wp\/v2\/media?parent=282"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gotsteve.com\/blog\/wp-json\/wp\/v2\/categories?post=282"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gotsteve.com\/blog\/wp-json\/wp\/v2\/tags?post=282"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}