Pomalu se blíží doba, kdy nové servery už v IPv4 adresu nedostanou, a tak by mělo být přátelení se uživatelů s IPv6 čím dál intenzivnější. Dostat se k IPv6 adrese nebylo v posledních letech nějak extra složité a dnes už prakticky vůbec. Bohužel to na Linuxu pořád není o „zasuň a jeď“, je potřeba se věnovat trochu konfiguraci. V současné době má uživatel tyto možnosti:
- Poskytovatel ví a IPv6 už dávno má alespoň v testovacím provozu, uživatel tedy dostal adresu
- Poskytovatel neví, ale uživatel dostal veřejnou IPv4 adresu, a tak si nastavil 6to4
- Poskytovatel odmítá o jakékoli veřejné adrese diskutovat a IPv6 je pro něj bublina
A tomu poslednímu příkladu se budeme dneska věnovat, a to konkrétně službě SixXS (Six Access). Pokud se chcete o IPv6 dozvědět víc, můžete navštívit naše školení Akademie Root.cz.
Tunely
Shodou okolnosti byly moje první pokusy s IPv6 právě přes SixXS. Ta radost když jsem poprvé pingnul ipv6.google.com, a to zklamání, když reakce zabrala půl sekundy. Postupem času jsem přešel na tunely Hurricane Electric, kde byl ping „jen“ 50 ms k druhému konci tunelu. Minulý rok se objevil velmi slibný kandidát snad pro všechny domácí a komunitní sítě, 6to4 od organizace CZ.NIC. Odezva úchvatná, organizace věrohodná a technologie 6to4 pro běžný provoz dostatečná. Pořád tu ale zůstával problém s tím odporným NATem. I když mám IPv6 rozsah doma, neměl jsem ho jinde, zvlášť na sítích, kde adresu 192.168.1.1 mají čtyři routery v řadě.
SixXS bylo řešení pro moje problémy i problémy dalších uživatelů za NATem, kteří neměli přístup k veřejné a neměnné IPv4 adrese, jenže druhý konec tunelu mimo naše hranice ho degradoval na „to je hezké, ale nějaké divně pomalé“.
V neděli mi přišel od SixXS e-mail, že firma IGNUM s.r.o. zasponzorovala server ve vlastním datacentru v Praze a tím uživatelům v České republice otevřela cestu ke službám SixXS ve velmi dobré kvalitě. Jelikož jsem byl hned druhý den mimo svou IPv6 síť, rozhodl jsem se SixXS zkusit. Po pár hodinách splnilo SixXS mé očekávání a konečně se z něj stala použitelná služba i pro Čechy.
SixXS – tunely pro všechny
Služba SixXS je závislá na svých partnerech. Bylo by složité mít vlastní server v každé třetí zemi a navíc se o něj ještě starat. Proto SixXS spolupracuje s více než 36 partnery, kteří se starají o fyzické zázemí koncových bodů sítě SixXS a jejichž loga najdete na hlavní stránce. Samotné SixXS pak dodává technologii a působí jako centrální prvek celé sítě.
K tunelu SixXS vede delší cesta než například u Hurricane Electric. Každý krok, kdy se o něco žádá, se musí odůvodnit, takže se připravte, že budete dávat dohromady jednu či dvě věty k tomu, proč potřebujete registraci. Po té, co se dostanete do administrace, máte možnost zažádat o tunel.
V žádosti o tunel dostanete na výběr technologii, kterou chcete použít. Pokud jste za NATem, vyberte si tu poslední, AYIYA. Pak dostanete na výběr mezi tzv. PoP servery, což jsou koncové body SixXS sítě, přes které se můžete připojit do IPv6 internetu. Já dostal na výběr dva, z nichž jeden byl IGNUM. Pak si připravte opět jednu či dvě věty o tom, k čemu tunel potřebujete a proč jste si vybrali zrovna tento PoP server.
Teď si chvilku počkáte, dokud nebude žádost vyřízena. U mě to trvalo necelých 12 hodin, ale na webu budete varováni, že to může být v řádu dnů.
Máte-li tunel, nezbývá než nainstalovat obslužný software. Jde o program AICCU (Automatic IPv6 Connectivity Client Utility).
$ sudo apt-get install aiccu
Ten sám nakonfiguruje tunel na vašem systému, takže během instalace zadáte jméno, heslo k vašemu účtu, vyberete požadovaný tunel a tím to končí. Pokud šlo vše bez problémů, tunel už běží a můžete ho používat. Funkčnost připojení otestujete třeba pingem na Roota.
$ ping6 root.cz PING root.cz(2001:67c:68::18) 56 data bytes 64 bytes from 2001:67c:68::18: icmp_seq=1 ttl=60 time=63.2 ms 64 bytes from 2001:67c:68::18: icmp_seq=2 ttl=60 time=63.7 ms 64 bytes from 2001:67c:68::18: icmp_seq=3 ttl=60 time=54.6 ms [...]
AICCU se nestará jen o konfiguraci při startu stroje, ale dokáže si poradit i s jejími výpadky. Navíc můžete cestovat po celém světě a v místech s připojením k internetu, budete mít vždy svoji veřejnou IPv6 adresu, samozřejmě s limity souvisejícími s polohou koncového bodu.
Kromě AYIYA máte k dispozici ještě klasický statický tunel a tunel na měnící se veřejnou IPv4 adresu. V takovém případě bude režie spojení o něco menší, než u AYIYA, takže jestli máte možnost použít tento tunel, použijte ho.
AYIYA a AICCU
Za to, že nám IPv6 tunel funguje i za NATem vděčíme právě protokolu AYIYA. Název je akronymem k „Anything In Anything“, takže jde o protokol, který má projít čímkoli, nemá mu vadit mobilita a navíc by neměl být odchytitelný a zopakovatelný. Jde tedy o ideální protokol na tunelování IPv6 v nepřátelských sítích.
AICCU je implementací AYIYA, ale má v sobě i některé další protokoly, jako třeba zmíněný TIC na jednodušší konfiguraci nebo podporu pro klasické 6in4 tunely. V současné době dokáže AICCU nakonfigurovat všechno, co SixXS nabízí. AICCU je uvolněno pod BSD licencí a funguje na všech dnešních hlavních operačních systémech.
Zkušenosti
I když tunel k IGNUMu používám zatím jen tři dny, nepozoruji při přístupu na na IPv6 servery žádné zpomalení. Podle měření přes program iperf na server v Praze, je rychlost téměř shodná s nativní IPv4 sítí.
IPv6: 0.0-73.4 sec 50.0 MBytes 5.71 Mbits/sec
IPv4: 0.0-68.6 sec 50.0 MBytes 6.11 Mbits/sec
Server ipv6-test.com ukazuje přibližně dvojnásobnou rychlost přes IPv4.
Důležitější je ovšem odezva. Jelikož je tento článek psán v dost zapadlém místě naší republiky a jediný místní poskytovatel tu uživatele připojuje přes 2,4 GHz 802.11g, tak se odezva pohybuje kolem 30 ms. Přes IPv6 tunel byly hodnoty o 10 ms horší.
IPv6:
# ping6 -i 0.01 -c 200 root.cz
PING root.cz(2001:67c:68::18) 56 data bytes
64 bytes from 2001:67c:68::18: icmp_seq=1 ttl=60 time=63.2 ms
64 bytes from 2001:67c:68::18: icmp_seq=2 ttl=60 time=63.7 ms
64 bytes from 2001:67c:68::18: icmp_seq=3 ttl=60 time=54.6 ms
[...]
--- root.cz ping statistics ---
200 packets transmitted, 199 received, 0% packet loss, time 25636ms
rtt min/avg/max/mdev = 18.135/41.993/131.920/18.123 ms, pipe 2
IPv4:
$ ping -i 0.01 -c 200 root.cz
PING root.cz (91.213.160.118) 56(84) bytes of data.
64 bytes from www.root.cz (91.213.160.118): icmp_req=1 ttl=53 time=73.3 ms
64 bytes from www.root.cz (91.213.160.118): icmp_req=2 ttl=53 time=63.3 ms
64 bytes from www.root.cz (91.213.160.118): icmp_req=3 ttl=53 time=53.4 ms
[...]
--- root.cz ping statistics ---
200 packets transmitted, 200 received, 0% packet loss, time 35156ms
rtt min/avg/max/mdev = 11.318/31.276/238.347/20.987 ms, pipe 3
Všechny testy byly prováděny večer po sedmé hodině. V nočních hodinách bylo měření na ipv6-test.com téměř shodné, a to samé platí pro pingy.
Závěr
Při testování si dejte pozor na politiku SixXS. S registrací dostanete 25 tzv. ISK, což je měna, kterou získáváte užíváním tunelu, a 25 je přesně dost na jeden z nich. Když ale tunel zrušíte, bude vám dost výrazná částka stržena. Navíc nejde hned zpočátku zažádat o /48 subnet, který by se mohl hodit vaší síti, tunel musí nejdříve minimálně týden běžet. Přes ISK si SixXS hlídá, aby se uživatelé chovali slušně a aby nevznikaly zbytečné tunely. Více informací na toto téma najdete v příslušné sekci FAQ.
Jinak si se SixXS užijete hodně legrace a pokud vám jde o přístup do IPv6 sítě odkudkoli, ať už kvůli vašim serverům nebo službám, které se zde nacházejí, je SixXS to nejjednodušší řešení. Samozřejmě hned po nativním přípojení.