IPv6
Obsah |
IPv6 obecně
Co je to IPv6 a k čemu je to dobré? http://cs.wikipedia.org/wiki/IPv6
Pro zjednodušení bude v následujícím textu (tam, kde je to vhodné) místo pojmu "IPv6 adresa" používáno pouze IP6 a místo "IPv4 adresa" (klasická "IPéčka") pouze IP4.
Uživatelé
Jste-li připojeni do sítě SH, a jste-li připojeni do některého z veřejných IPv4 rozsahů (viz IP rozsahy), nebo přes Wifi, máte tzv. nativní IPv6 připojení (tzn. že router, ke kterému jste připojeni, má přidělen pro váš segment veřejný IPv6 rozsah a umí routovat IPv6 provoz). Pozor: veřejný IPv6 rozsah se týká i Wifi !!!
Ačkoliv tento rozsah má prefix délky 64 b, a tudíž by se mohlo zdát, že adres je "mraky", a lze si tudíž vybrat libovolnou "neobsazenou" z 2^64 možných kombinací, není to tak docela pravda: adres je v tomto rozsahu sice mraky, ale každý uživatel smí používat pouze přidělenou IP6 (= dohledatelnou v DUSPSu). Je to ze stejného důvodu, jako u IP4 – aby v případě, že se někdo na síti nechová tak, jak má, a přijde na něj stížnost, tak aby se dal dotyčný hříšník dohledat.
Přidělené IP6
Na rozdíl od IPv4, kde je situace jednoduchá – přidělená IP4 je zaregistrovaná v DUSPSu, je vidět v DUSPS FindIt, exportuje se do DNS atd., tak u IPv6 je situace zajímavější – resp. přidělené IP6 jsou dvojího druhu:
- registrovaná – ručně registrovaná do DUSPSu pomocí administračního rozhraní, je vidět ve FindItu a v DNS – v podstatě stejná situace jako u IPv4
- automatická – je vygenerovaná z MAC adresy stejným postupem jako při bezstavové autokonfiguraci těm uživatelům, kteří ji nemají explicitně registrovanou přes administrační rozhraní, a objevuje se pouze v IPv6 exportech z DUSPSu (v rámci procesu automatické konfigurace aktivních prvků)
Důvod zavedení automatické IP6 je opět celkem prostý: ne každý uživatel nutně potřebuje mít AAAA záznam v DNS a zároveň chce, aby měl s nastavováním co nejmíň práce. A nejjednodušší je pro něj použití bezstavové autokonfigurace a vygenerování interface-ID z MAC adresy.
V současné době nelze v SH síti pro automatickou konfiguraci klientských stanic efektivně použít DHCP (DHCPv6 je postaveno na tzv. Client DUID – narozdíl od DHCPv4, které je postaveno na MAC adresách), takže proto vychází jako nejjednodušší způsob právě bezstavová autokonfigurace (ovšem v základní variantě – tj. bez Privacy extensions a náhodného generování Interface-ID).
Jak na to
Předně je třeba mít v systému nainstalovnou podporu IPv6. Ve Windows Vista je už defaultně, ve Windows XP je třeba doinstalovat - viz níže.
Když už teda máme nainstalováno a zapnuto, tak je třeba zajistit, aby počítač používal pro komunikaci přidělenou IP6. Tou je, jak již bylo výše řečeno, IP6 vygenerovaná z MAC (registrovaná IP6 se sice dá teoreticky zadat do DUSPSu s libovolným Interface-ID, ale registrátor vám stejně jinou než tu vygenerovanou z MAC nezaregistruje;-)).
To se dá udělat 2 způsoby:
- pomocí bezstavové autokonfigurace – pro začátečníky nejjednodušší způsob
- manuálně – pro fajnšmekry;-)
Bezstavová autokonfigurace
Tady většinou není potřeba nastavovat nic - ve Windows XP a W2003 je tato volba zapnuta v defaultním nastavení (po instalaci podpory IPv6).
Trochu komplikovanější je to ve Windows Vista (a obdobné to bude asi i ve Windows Server 2008) - tam je totiž defaultně zapnuta podpora Privacy extensions a generování nahodných interface-ID. Což je sice hezká věc, ale v SH síti je anonymita vyloučena (důvody uvedeny výše), a proto tohle nastavení je akorát na překážku. A proto je potřeba v takovýchto případech zadat do příkazové řádky následující 2 příkazy:
netsh interface ipv6 set global randomizeidentifiers=disabled netsh interface ipv6 set privacy disabled
TODO: Doplnit Linuxy
Manuální konfigurace
TODO: Bude doplněno
Testujeme
Ne vždy se všechno podaří hned napoprvé, a tak bude asi občas potřeba otestovat, jestli se dostaneme dál než "za humna":
Ve Windows:
Nejdřív zkusíme bránu (<prefix> je 1. 64 b z vaší IP6 – např. 2001:718:2:42 pro blok 4 a "ten 2." rozsah – blíže viz IP rozsahy):
ping <prefix>::1
Potom SH GW:
ping 2001:718:2::1 tracert 2001:718:2::1 ping -6 gw
Pokud nedokáže resolvnout GW, tak zkusíme, jestli se dostaneme na DNS servery:
ping 2001:718:2::214 ping 2001:718:2::218 tracert 2001:718:2::214 tracert 2001:718:2::218
A potom už cokoliv ze světa:
tracert -6 www.kame.net ping -6 www.kame.net
V GNU/Linux:
Tam je to to samé, jen je potřeba striktně používat 6-ové verze příkazů:
traceroute6 ping6
Správci serverů
Ve většině případů stačí přidat (Debian GNU/Linux) pár řádků do /etc/network/interfaces
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 147.32.127.252 netmask 255.255.255.192 gateway 147.32.127.254 iface eth0 inet6 static address 2001:718:2:0::252 netmask 64 gateway 2001:718:2::1
A pak upravit ještě /etc/hosts (třeba takto)
127.0.0.1 localhost.localdomain localhost 147.32.127.252 localnewstest.sh.cvut.cz localnewstest 2001:718:2:0::252 localnewstest.sh.cvut.cz localnewstest # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts
Adresy
Z důvodu jednoduchosti se rozhodlo (viz konference admins - https://lists.sh.cvut.cz/cgi-bin/mailman/private/admins/2008-August/002197.html), že IPv6 adresy serverů (resp. jejich interface-ID) se budou tvořit následovně:
- Vezme se dekadický zápis posledního oktetu z IPv4 adresy příslušného serveru a jeho BCD kód se použije jako interface-ID.
Lidově řečeno: vezmete poslední část z IPv4 adresy (= za poslední tečkou), a tu doplníte sem:
- Pro VLAN 6 (rozsah 147.32.127.192/26) – 2001:718:2:0::<sem doplnit>
- Pro VLAN 7 (rozsah 147.32.30.128/25) – 2001:718:2:1::<sem doplnit>
Viz třeba service1 – 147.32.127.214 (2001:718:2::214)
Pozn.: u vlan6 můžete samozřejmě tu 0 vynechat (dle pravidel pro psaní IPv6 adres);-)
Problémy
Při problémech v GNU/Linux doporučuji zkontrolovat, zda jsou nainstalované následující balíčky:
bind9-host - Verze programu 'host' dodávaná s BINDem 9.X iputils-arping - Tool to send ICMP echo requests to an ARP address iputils-ping - Nástroj pro testování dosažitelnosti počítače na síti iputils-tracepath = Tools to trace the network path to a remote host
Podivné IPv6 adresy začínající 2002
Tyhle adresy se vám na rozhraní objeví proto, že někdo (obvykle nic netušíc) má na MS Windows zapnuté „Sdílení připojení k Internetu“ a díky tomu zároveň nabízí tunelované 6to4 adresy. IPv4 adresu takového nešťastníka zjistíte převodem osmi znaků následujících po 2002 z šestnáckové soustavy. Například 2002:9320:7201:… => 0x93=147, 0x20=32, 0x72=114, 0x01=01. Pro převod lze použít i skriptík: [1] Přijdete-li za majitelem této IPv4 adresy, objevíte obvykle Windows Vista, nebo Windows XP media center s nic netušícím majitelem.
Nejjednodušší cesta, jak problém opravit, je spustit příkazový řádek jako administrátor (Vista: Programy->Příslušenství->Příkazový řádek, pravým tlačítkem a „Spustit jako Administrátor“) a zadat:
netsh int ipv6 6to4 set rout disable
Problém se tím vyřeší okamžitě, nicméně přidělené adresy zůstanou v platnosti, dokud nevyprší jejich doba platnosti, nebo je ručně neodstraníte.
Pokud výše uvedený postup nefunguje, můžete zkusit (neověřeno)
netsh int ipv6 show int
Zapamatujte si index rozhraní, které míří do sítě SH (4 nebo více)
netsh int ipv6 set int <index rozhraní> disabled disabled
Tím se na daném rozhraní zakáže přeposílní paketů a ohlašování směrovaného rozsahu.
Poznámka: Program netsh je možné spustit i interaktivně, obsahuje vestavěnou nápovědu.
IPv6 na Windows XP
Na Windows XP není IPv6 defaultně podporována. Je třeba následujícím postupem nejprve podporu nainstalovat:
- start - spustit:
ipv6 install:
Od této doby je podpora IPv6 nainstalována.
Odkazy
- Původní Bobkův web o IPv6 – obsahuje některé důležité informace zatím nezapracované do wiki jako např. rozdělení adresních prostorů