Posted by
Cliff
on from the while-IPv4-refuses-to-hold-its-breath dept.
ps asks: "In light of our recent discussions, does anyone know of an IPv6 capable ISP? DSL, cable, dialup even? Googling for this only shows one ISP in Japan that has IPv6."
You don't need an ISP, use a 6to4 tunnel
by
foom
·
· Score: 5, Interesting
After the last/. article, I took it upon myself to learn more about IPv6 and maybe possibly start using it inside my private network. Well, what I found out was that I could use it on the *public* network, with hardly any hassle at all.
There's this really great feature in IPv6 that lets everyone with a (publicly routable) IPv4 address get 2^80 IPv6 addresses. Your IPv6 network is 2002:xxxx:yyyy::/48, where xxxxyyyy is the hex equivalent of your IPv4 address.
It's a system called "6to4" and basically involves the OS encapsulating all IPv6 packets into IPv4 and sending them through a tunnel to the "anycast" IPv4 address 192.88.99.1. This IP address is not that of one individual computer, but rather, the closest router actually on an IPv6 network. This router will then unencapsulate your packet and send it off into IPv6-land. Because your IPv4 address is embedded into the IPv6 address, every router on the IPv4 network knows how to reach you, given an IPv6 packet destined for your address, so you aren't tied to a particular tunnel endpoint like you are in some other schemes.
The best part about this is how easy it is to enable in OSX. Assuming you aren't behind NAT, to enable IPv6, just type:
Of course replace en0 with whichever device you're using (en1 probably if you're using airport). All done! Now try something like "ping6 debian.ipv6.lcs.mit.edu" to make sure it's working. There's also traceroute6, and telnet works as well.
Unfortunately, ssh for OSX doesn't appear to be compiled for IPv6 yet. If it were, "ssh -6 host" should work. Also unfortunately, none of the browsers I've tried can resolve IPv6 DNS for some reason. However, at least Safari does work with explicit IP addresses, so http://[3ffe:501:4819:2000:210:f3ff:fe03:4d0]/ will work.
After the last /. article, I took it upon myself to learn more about IPv6 and maybe possibly start using it inside my private network. Well, what I found out was that I could use it on the *public* network, with hardly any hassle at all.
There's this really great feature in IPv6 that lets everyone with a (publicly routable) IPv4 address get 2^80 IPv6 addresses. Your IPv6 network is 2002:xxxx:yyyy::/48, where xxxxyyyy is the hex equivalent of your IPv4 address.
It's a system called "6to4" and basically involves the OS encapsulating all IPv6 packets into IPv4 and sending them through a tunnel to the "anycast" IPv4 address 192.88.99.1. This IP address is not that of one individual computer, but rather, the closest router actually on an IPv6 network. This router will then unencapsulate your packet and send it off into IPv6-land. Because your IPv4 address is embedded into the IPv6 address, every router on the IPv4 network knows how to reach you, given an IPv6 packet destined for your address, so you aren't tied to a particular tunnel endpoint like you are in some other schemes.
The best part about this is how easy it is to enable in OSX. Assuming you aren't behind NAT, to enable IPv6, just type:
sudo ip6config start-v6 en0; sudo ip6config start-stf en0
Of course replace en0 with whichever device you're using (en1 probably if you're using airport). All done! Now try something like "ping6 debian.ipv6.lcs.mit.edu" to make sure it's working. There's also traceroute6, and telnet works as well.
Unfortunately, ssh for OSX doesn't appear to be compiled for IPv6 yet. If it were, "ssh -6 host" should work. Also unfortunately, none of the browsers I've tried can resolve IPv6 DNS for some reason. However, at least Safari does work with explicit IP addresses, so http://[3ffe:501:4819:2000:210:f3ff:fe03:4d0]/ will work.
Have fun.