<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>experimentalworks &#187; ipv6</title>
	<atom:link href="http://blog.experimentalworks.net/tag/ipv6/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.experimentalworks.net</link>
	<description></description>
	<lastBuildDate>Fri, 27 Jan 2012 10:07:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>IPv6: AAAA records with Plesk the hackish way</title>
		<link>http://blog.experimentalworks.net/2009/01/ipv6-aaaa-records-with-plesk-the-hackish-way/</link>
		<comments>http://blog.experimentalworks.net/2009/01/ipv6-aaaa-records-with-plesk-the-hackish-way/#comments</comments>
		<pubDate>Fri, 16 Jan 2009 10:19:10 +0000</pubDate>
		<dc:creator>dsp</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[ipv6]]></category>

		<guid isPermaLink="false">http://blog.experimentalworks.net/?p=150</guid>
		<description><![CDATA[Adding IPv6 addresses to a domain is usually quite simple. Instead of an A record, you hast have to add an AAAA record to your database that points to an IPv6 address. If you use a configuration tool like Plesk, adding those records might be a little bit more difficult, as Plesk - at ...]]></description>
			<content:encoded><![CDATA[<p>Adding IPv6 addresses to a domain is usually quite simple. Instead of an A record, you hast have to add an AAAA record to your database that points to an IPv6 address. If you use a configuration tool like Plesk, adding those records might be a little bit more difficult, as Plesk &#8211; at least in the version my hoster uses &#8211; doesn&#8217;t allow me to add AAAA records. So here is a short tutorial how to add an AAAA record.</p>
<p>Plesk manages the DNS records in a database. We first need a way to insert AAAA records in the database. Luckily if this is done, we are almost finished as the script that generates the zone files, doesn&#8217;t do a doublecheck at all.</p>
<p>First of all login as root on your box. Then login to your mysql server using the &#8216;admin&#8217; user:</p>
<blockquote><p>
# mysql -u admin -p psa
</p></blockquote>
<p>Now alter the table to allow AAAA records:</p>
<blockquote><p>
mysql> alter table dns_recs modify column type enum(&#8216;NS&#8217;,'A&#8217;,'AAAA&#8217;,'CNAME&#8217;,'MX&#8217;,'PTR&#8217;,'TXT&#8217;,'SRV&#8217;,'master&#8217;,'none&#8217;) NOT NULL default &#8216;A&#8217;;
</p></blockquote>
<p>Downoad the dnsupdate.sh script from <a href="http://kb.parallels.com/en/879">parallels website</a>. You now just need to add an entry to your database using a INSERT statement and then run the dnsupdate. I wrote a extremly hackish and dangerous to use script for that:</p>
<blockquote><p>
#!/bin/sh<br />
echo &#8220;INSERT INTO dns_recs (displayHost, host, displayVal, val, type, dns_zone_id) VALUES (&#8216;$1&#8242;, &#8216;$1&#8242;, &#8216;$2&#8242;, &#8216;$2&#8242;, &#8216;AAAA&#8217;, 2)&#8221; | mysql -u admin -p psa</p>
<p>sh /root/dnsupdate.sh
</p></blockquote>
<p> Notice that I set the dns_zone_id explicitly. You have to check what id your zone has. If you write a more sophisticated script and like to share it, I would be interested.</p>
<p>Don&#8217;t forget the trailing dot!</p>
<blockquote><p>
# sh /root/insert-dns.sh &#8216;ipv6.experimentalworks.net.&#8217; &#8217;2a01:3332:2324:52aa::2&#8242;
</p></blockquote>
<p>Done. Your domain now points to the right IPv6 address.</p>
<p class="wp-flattr-button"></p> <p><a href="http://blog.experimentalworks.net/?flattrss_redirect&amp;id=150&amp;md5=a08703ea80c663be4942176f3e2cfa3c" title="Flattr" target="_blank"><img src="http://blog.experimentalworks.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.experimentalworks.net/2009/01/ipv6-aaaa-records-with-plesk-the-hackish-way/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>IPv6: A first overview [UPDATED]</title>
		<link>http://blog.experimentalworks.net/2009/01/ipv6-a-first-overview/</link>
		<comments>http://blog.experimentalworks.net/2009/01/ipv6-a-first-overview/#comments</comments>
		<pubDate>Wed, 14 Jan 2009 17:28:58 +0000</pubDate>
		<dc:creator>dsp</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[ipv6]]></category>

		<guid isPermaLink="false">http://blog.experimentalworks.net/?p=136</guid>
		<description><![CDATA[I don't remember when I heard of IPv6 the first time. Back then I tried to learn it a little bit but it was quite hard to get a working solution. When Benoit told me about a french ISP that provides native IPv6 connectivity, recently, I got attracted again by the technology. This time ...]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t remember when I heard of IPv6 the first time. Back then I tried to learn it a little bit but it was quite hard to get a working solution. When Benoit told me about a french ISP that provides native IPv6 connectivity, recently, I got attracted again by the technology. This time I spend much more time in understanding how IPv6 works and must admit that I really love the way it works. In IPv6 every machine get an unique IP address, that can be (under some circumstances that I&#8217;ll explain later) reached from every point of the world. Therefore it solves my NAT issues, so that I can access every machine in my local network from a remote host (if I would let the remote host through my firewall). As IPv6 allows autoconf, I don&#8217;t even have to configure my machines in the network, I just need to route the prefix and and announce the prefix. And: IPv6 is pretty easy to get.<br />
<span id="more-136"></span><br />
<strong>Benefits</strong></p>
<ul>
<li>No NAT anymore. Just connect to your machine at home with it&#8217;s IPv6 address, so no more annoying port forwarding, redirecting, etc.</li>
<li>No DHCP setup (well at least if you trust autoconf, which frankly might not always be a good idea).</li>
<li>Use IPSec the easy way without getting NAT-traversal to work fine.</li>
<li>Use IPv6 enabled services. Sixxs.net hosts a IPv6 bittorrent tracker. <del datetime="2009-01-25T12:58:47+00:00">and thepiratebay will hopefully get IPv6 soon</del> Also thepiratebay.com now have native <a href="http://thepiratebay.org/blog/146">IPv6 connectivity</a>. At least the <a href="http://erdgeist.org/arts/software/opentracker/">opentracker</a> now supports it.</li>
<li>And last but not least: believe me, if you tell people you are using IPv6, you get 100 nerd-credits. And for sure to show people off your IPv6 connection, your start site is <a href="http://ipv6.google.com">ipv6.google.com</a></li>
<li>Sites that support IPv6: <a href="http://ipv6.google.com">ipv6.google.com</a>, <a href="http://ipv6.org">ipv6.org</a>, <a href="http://blog.fefe.de">blog.fefe.de</a> and many more.</li>
</ul>
<p><strong>IPv6 addresses</strong><br />
I think a good way to get started with IPv6 is understanding the new address scheme, which is different from the IPv4 scheme. Every address consist of 8 groups with 4 hexadecimal numbers per group. A group would be e.g.: <em>2ac0</em>. So here is an IPv6 address:</p>
<blockquote><p>
2001:0:53aa:64c:1c36:f226:a08d:2013
</p></blockquote>
<p>Every address has a containing prefix-length, which is the first part to the address. The length of a prefix is determined by the /&lt;BITCOUNT&gt; suffix. E.g.:</p>
<blockquote><p>
2001:0:53aa:64c::/64
</p></blockquote>
<p>You usually get that prefix from your ISP (or a tunnelbroker). It is somewhat similar to the public IPv4 address you get assigned from your ISP. Nevertheless, as we are using IPv6, we don&#8217;t have just one fixed public IP, we have a complete subnetwork, described by the prefix. Therefore we have 2^(128-64)=2^64 bits left (the other 64 bits are taken by the prefix) to give them away to our private machines in our network. So a machine in our local network at home would have an IP address like:</p>
<blockquote><p>
<strong>2001:0:53aa:64c</strong>:1c36:f226:a08d:2013, <strong>2001:0:53aa:64c</strong>:1c33:0:c0a3:1, etc.<br />
Legend: <strong>Prefix</strong>, Host address.</p>
</blockquote>
<p>And every of this IP address is reachable from the outside. The ISP knows that we <em>own</em> that prefix and routes the traffic to such a IP address to our router, which knows the IP addresses of the machines.</p>
<p><strong>Getting started</strong><br />
Now if you want to get started with IPv6 there a few things that you have to consider.</p>
<ol>
<li>Does your ISP provide native IPv6?</li>
<li>Do you want to route a complete subnet or just one machine?</li>
<li>Do you have a public IPv4 address (no NAT) on your router and your router can route and announce an IPv6 prefix (like OpenWRT or something)?</li>
<li>You are behind an NAT but you want to route a subnet?</li>
</ol>
<p>So for 1. it&#8217;s pretty simple. Just get the router from your ISP, plug it in, run it, and be happy. 2. If have just one machine at home, so you don&#8217;t want to serve a complete subnetwork (which I consider as the most useful think of IPv6) then just install <a href="http://www.remlab.net/miredo/">miredo</a> and add a port forwarding rule on port 3545 to your machine. Start miredo and you will get an IPv6 address.</p>
<blockquote><p>
 # apt-get install miredo<br />
 &#8230; add port forwarding rule on 3545 on the router to your maschine&#8230;<br />
 # /etc/init.d/miredo start<br />
 # ifconfig teredo<br />
teredo    Link encap:UNSPEC  Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00<br />
          inet6-Adresse: fe80::ffff:ffff:ffff/64 Gültigkeitsbereich:Verbindung<br />
          inet6-Adresse: 2001:0:53aa:64c:1c36:f226:a08d:2013/32 Gültigkeitsbereich:Global<br />
          UP PUNKTZUPUNKT RUNNING NOARP  MTU:1280  Metrik:1<br />
          RX packets:419 errors:0 dropped:0 overruns:0 frame:0<br />
          TX packets:448 errors:0 dropped:0 overruns:0 carrier:0<br />
          Kollisionen:0 Sendewarteschlangenlänge:500<br />
          RX bytes:382373 (382.3 KB)  TX bytes:64613 (64.6 KB)
</p></blockquote>
<p> Please notice that miredo gives you a <em>fixed</em> IPv6 address, so you are <em>not</em> able to route a subnet, as you don&#8217;t have a prefix assigned to you.</p>
<p>If you have a router that can route IPv6 and has a public IPv4 IP address, just go and use <a href="http://en.wikipedia.org/wiki/6to4">6to4</a>. If you are on a Mac it has a good build-in support for 6to4.</p>
<p>If you want to host a subnet but you are behind a NAT, things get slightly more complicated. You need first a way to traverse your NAT and then you need a subnet. Traversing a NAT can be done with miredo, but miredo gives you a fixed IPv6 address, which is pretty useless if you want to route a subnet. A good approach would be <strong><a href="http://www.sixxs.net">sixxs.net</a></strong>. They offer free tunnels and subnets. So go, sign up and install <em>aiccu</em> which you can find in your software repositories. A good explanation how to setup aiccu (actually it&#8217;s pretty simple) can be found on the sixxs.net site.</p>
<p>If you are ready you can try your IPv6 connection by pinging the website of the Kame project, which did a great job in implementing a lot of the IPv6 tools used in the operating systems:</p>
<blockquote><p>
 # ping6 www.kame.net<br />
PING www.kame.net(orange.kame.net) 56 data bytes<br />
64 bytes from orange.kame.net: icmp_seq=1 ttl=51 time=708 ms<br />
64 bytes from orange.kame.net: icmp_seq=2 ttl=51 time=321 ms
</p></blockquote>
<p>Note that the IPv6 tools of traceroute and ping usually end with 6: traceroute6, ping6, etc.</p>
<p>More on IPv6 and how to setup an OpenWRT router to announce prefixes will be covered soon.</p>
<p><em><br />
Internet Protocol version 6 (IPv6) is the next-generation Internet Layer protocol for packet-switched internetworks and the Internet. IPv4 is currently[update] the dominant Internet Protocol version, and was the first to receive widespread use. In December 1998, the Internet Engineering Task Force (IETF) designated IPv6 as the successor to version 4 by the publication of a Standards Track specification, RFC 2460.</em></p>
<p class="wp-flattr-button"></p> <p><a href="http://blog.experimentalworks.net/?flattrss_redirect&amp;id=136&amp;md5=99b9581f2222d01b09b9a3d506c4743e" title="Flattr" target="_blank"><img src="http://blog.experimentalworks.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.experimentalworks.net/2009/01/ipv6-a-first-overview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

