Disassembler

Artificial intelligence is no match for natural stupidity.
27únor2012

6to4 i ve vašem Mikrotiku


IPv6. Protokol starý více než patnáct let, ve všech majoritních operačních systémech podporovaný od roku 2002 a díky viditelnosti AAAA záznamů efektivně použitelný od roku 2003. Všichni jej známe, protože se za tu spoustu let bez problémů dostal až do našich domovů. Že nedostal? No bodejť! Malí poskytovatelé se IPv6 bojí a netroufají si na něj a velké organizace jsou líné, protože mají nasyslené IPv4 adresy. Naštěstí sdružení CZ.NIC v červnu 2010 zprovoznilo první český veřejný 6to4 relay router. A protože na drtivé většině sítí používám Mikrotiky, které, jako každý slušný router, umí 6to4 tunel vyrobit, předvedu vám, jak právě na Mikrotiku takový 6to4 spoj nastavit.

Z českých luhů a hájů


Je to u nás s IPv6 ale opravdu tak zlé? Několik „menších“ poskytovatelů IPv6, ať už jen z hecu nebo opravdu profesionálně, nabízí. Hlavní problém je u těch větších. UPC má na svých stránkách výmluvnou informaci „Liberty Global/UPC zahájí zavádění v roce 2011 a dokončí je v roce 2012.“ Super! Už ovšem není řečeno, že se jedná o testovací provoz a ke klientům se pořádná IPv6 dostane nejdřív za tři roky. Netbox s velkou parádou loni v červenci oznámil, že jejich portál je dostupný po IPv6. Škoda jen, že si jej zákazníci neužijí, protože “ Zpřístupnění IPv6 pro naše zákazníky plánujeme v blízké budoucnosti.“. No a Telefónica O2 si také na písečku raději plácá svoje ADSL/VDSL a o IPv6 nechce ani slyšet. Jejich filozofie je totiž jednoduchá. „My máme IPv4 adres ještě dost, tak co bychom se cpali na IPv6. K přechodu na IPv6 je potřeba práce, práci dělají lidi a lidi stojí peníze. Šmytec.“ Ostatně, můžete se sami podívat kdo přístup na IPv6 má a kdo jej poskytuje zákazníkům. Druhá tabulka je o poznání smutnější.

128 bitů by mělo stačit každému


Jak tedy onen lotyšský zázrak nastavit, abyste mohli objevovat internet třetího tisíciletí? Relativně snadno. Předpokladem je jakýkoliv Mikrotik s RouterOSem v3beta10 nebo vyšším a balíčkem ipv6. Dále je nutno mít na WAN portu IPv4 adresu dosažitelnou z venku (tj. „veřejnou“). Předvedu vám klikací i konzolovou metodu na svém RB493G s RouterOSem 5.14.

Nejprve je třeba vytvořit 6to4 interface, na kterém se bude odehrávat veškerá IPv6 komunikace se světem. Interfaces -> přidat -> 6to4 tunnel.

6to4 interface

123.45.67.89 je moje veřejná IP a 192.88.99.1 jsou kouzla a čáry. Jedná se totiž o anycastovou adresu, popsanou v RFC 3068, díky které váš router jednoduše najde nejbližší 6to4 relay a připojí se na něj. Jakmile bude interface vytvořen, nahlédněte do IPv6 -> Adresses. Zjistíte totiž, že se na vašem zařízení objevila adresa s lokálním prefixem. A shodou okolností její číselné vyjádření odpovídá vaší veřejné IPv4. 123.45.67.89 dekadicky je totiž 7b.2d.43.59 hexadecimálně, v IPv6 tedy 7b2d:4359. Tuto „přeloženou“ adresu si zapamatujte nebo zapište, protože s ní budeme operovat.

Lokální IPv6 adresa 6to4 rozhraní

Přidejte na 6to4 interface novou adresu. Bude to opět ta vaše „přeložená“ IPv4, tentokrát s 6to4 prefixem.

Vnější IPv6 adresa 6to4 rozhraní

A totéž v bledě modrém udělejte i pro váš bridge interface, čímž docílíte toho, že se klienti s routerem vždycky najdou.

Vnější IPv6 adresa bridge

Na závěr už jen stačí přidat routu ven. IPv6 -> Routes

Směrování internetu

A můžeme vesele pingat, třeba na ipv6.google.com

Ping na ipv6.google.com

Ještě jednou, písemně


Takže tedy

/interface 6to4
add name=sit1 local-address=123.45.67.89 remote-address=192.88.99.1 disabled=no
/ipv6 address
add address=2002:7b2d:4359::1/48 interface=sit1 advertise=no
add address=2002:7b2d:4359:1::1/64 interface=bridge1
/ipv6 route
add distance=1 dst-address=2000::/3 gateway=sit1

Ještě bych doporučil alespoň základní firewall

/ipv6 firewall filter
add chain=input in-interface=sit1 action=jump jump-target=wan-to-mkt comment="Jump to wan-to-mkt rules"
add chain=wan-to-mkt connection-state=established action=accept comment="Allow established connections"
add chain=wan-to-mkt connection-state=related action=accept comment="Allow related connections"
add chain=wan-to-mkt connection-state=invalid action=drop comment="Drop invalid connections"
add chain=wan-to-mkt protocol=icmpv6 action=accept comment="Accept ICMP"
add chain=wan-to-mkt action=log log-prefix="IPv6 IN:" comment="Log everyting else"
add chain=wan-to-mkt action=drop comment="Drop everyting else"
add chain=forward in-interface=sit1 action=jump jump-target=wan-to-lan comment="Jump to wan-to-lan rules"
add chain=wan-to-lan connection-state=established action=accept comment="Allow established connections"
add chain=wan-to-lan connection-state=related action=accept comment="Allow related connections"
add chain=wan-to-lan connection-state=invalid action=drop comment="Drop invalid connections"
add chain=wan-to-lan action=log log-prefix="IPv6 FW:" comment="Log everyting else"
add chain=wan-to-lan action=drop comment="Drop everyting else"

Pak už se jen běžte podívat jakou IPv6 dostaly vaše počítače a zda všechno funguje jak má.

Ping z Windows za Mikrotikem