IPv6

Z wiki.siliconhill.cz
Přejít na: navigace, hledání

Síť na Strahově podporuje moderní protokol IPv6. Protokol je podporován pouze na nové infrastruktuře (vyšší patra, gigabitové porty). Na staré infrastruktuře (100 Mbps porty a Wi-Fi) není IPv6 podporováno.

Co je to IPv6 a k čemu je to dobré? http://cs.wikipedia.org/wiki/IPv6

Obsah

Test IPv6 konektivity

Abyste otestovali nastavení svého počítače, zkuste otevřít ve svém prohlížeči některé z následujících stránek:

Nastavení počítače pro IPv6

Počítač musí podporovat nejen IPv6, ale také stavovou konfiguraci IPv6 pomocí protokolu DHCPv6. To už není taková samozřejmost, zejména u mobilních platforem. Pro rychlou informaci se může hodit tabulka podpory IPv6 v operačních systémech na Wikipedii.

Systémy bez podpory DHCPv6 mohou IPv6 využívat, musí ale adresu nastavovat ručně. Stačí nastavit pouze IPv6 adresu, adresa brány by se měla sama určit z ohlášení směrovačů, která jsou v síti přítomna (adresa brány pro statickou konfiguraci je vždy <prefix>::1).

Windows Vista a vyšší

Není třeba žádné speciální nastavení.

Windows XP

Tato verze Windows protokol IPv6 podporuje pouze experimentálně, proto je jeho podpora v základním nastavení vypnuta. Nechcete-li používat IPv6, nemusíte nic řešit. Chcete-li však IPv6 plně využívat, je třeba nejprve podporu IPv6 nainstalovat:

ipv6 install

Nicméně i v tom případě Windows XP nepodporují DHCPv6 klienta, takže je třeba nastavit IPv6 adresu ručně.


Mac OS X

Není třeba žádné speciální nastavení.

Linux

Ne všechny linuxové distribuce obsahují DHCPv6 klienta. Modernější distribuce by ale neměly mít problém a vždy je možné použít statickou konfiguraci.

Ve většině rozšířených distribucí je pro správu připojení k síti použit nástroj Network Manager. Ten má ale s IPv6 (zejména se stavovým DHCPv6) problém a pro správné nastavení IPv6 adresy v síti SH je potřeba tento nástroj vypnout, nebo IPv6 adresu nastavit manuálně. Pro automatickou konfiguraci IPv6 adresy lze použít například program dhclient s přepínačem -6.

Pokročilá témata

Struktura IPv6 adresy

Viz také IP rozsahy.

2001:0718:0002:00xx::aaa
^^^^^^^^^                prefix přidělený CESNETu 2001:718::/32
          ^^^^           prefix přidělený síti ČVUT 2001:718:2::/48
               ^^        prefix přidělený síti SH   2001:718:2::/56
                 ^^      číslo podsítě v rámci sítě SH (identifikace VLAN)
                     ^^^ poslední trojčíslí z IPv4 adresy


Bezstavová autokonfigurace

Bezstavová konfigurace je založena na tom, že router pravidelně posílá do sítě informace o dostupném připojení: prefix dané sítě a výchozí bránu (tedy svojí adresu). A to je v podstatě všechno, co počítač potřebuje vědět k tomu, aby si sám "nakonfiguroval" připojení – pro komunikaci po IP síti (platí jak pro IPv4, tak pro IPv6) totiž potřebuje znát pouze svoji adresu a adresu nejbližšího routeru. A v případě IPv6 si svojí IP6 vygeneruje sám: vezme prefix sítě (64 b), a ten doplní zprava identifikátorem rozhraní (64 b). To může být teoreticky libovolné (hlavně, když bude unikátní v rámci podsítě a bude mít určitý formát), přičemž bezstavová autokonfigurace používá jeden z následujících způsobů: vygenerování z MAC (vloží doprostřed FF:FE a invertuje 2. bit v nejvýznamnějším oktetu), nebo vytváří identifikátory náhodně (pokud je zapnuta podpora RFC3041 Privacy Extensions) a testuje, zda již nejsou obsazeny jiným strojem.

Problém bezestavové autokonfigurace je, že síť nemůže nijak vynutit konkrétní adresu pro konkrétního klienta, což stěžuje mimo jiné dohledávání bezpečnostních incidentů. Proto je v síti SH v ohlášení směrovače vypnutý příznak bezestavové konfigurace, takže klientům není povoleno generovat si svévolně adresy.

DHCPv6

Protokol DHCPv6 je obdobou protokolu DHCP ze světa IPv4. Liší se jen v několika detailech:

  • Nepřiděluje výchozí bránu − k tomu v IPv6 slouží ohlášení směrovače
  • Umožňuje kromě adresy přidělit také celý prefix pro síť za routerem
  • Identifikuje klienty primárně podle DUID + IAID namísto MAC adresy
  • Existuje i v bezestavové variantě, kdy nepřiděluje ani IPv6 adresy, ale jen další informace (DNS server, proxy servery, atd)

Manuální konfigurace

Manuální konfiguraci používejte pouze, máte-li k tomu vážný důvod.

Společné parametry pro konfiguraci

  • IPv6 adresa se vytvoří z prefixu podsítě (ta část až po :: z veřejné IP rozsahy).
  • Adresa výchozí brány je vždy adresa se stejným prefixem, ale identifikátorem rozhraní ::1
  • Délka prefixu podsítě je vždy 64 bitů
  • Adresy DNS serverů:
    • 2001:718:2:0::214
    • 2001:718:2:0::218
    • 2001:718:1:1::2

Windows Vista a vyšší

Pokud chceme změnit nastavení IPv6 pro konkrétní připojení (v našem příkladu je pojmenováno pro snažší manipulaci jako LAN), je třeba se nejdříve proklikat až k tomu správnému dialogovému oknu.

Začneme tím, že si přes Control Panel -> Network and Sharing Center otevřeme okno zobrazující stav daného připojení:

LAN Status


Poté klikneme na Properties, a otevře se nám:

LAN Properties


Poté vybereme protokol Internet Protocol verze 6 (TCP/IPv6) a zvolíme Properties (nebo jenom dvojklik). Otevře se okno se základním nastavením IPv6 (obdobné tomu pro IPv4). Pokud chceme, aby se používaly automatické konfigurační mechanizmy, vybíráme volby Obtain ... automatically (v české verzi to bude něco na způsob Získat ... automaticky) – přičemž pro DNS platí, že pokud vybereme manuální nastavení IP6, tak už musíme manuálně vyplnit i DNS servery.

V případě, že chceme nastavit IP6 ručně zvolíme Use the following IPv6 address, a vyplníme následující údaje (v našem příkladu jsme zvolili adresu z 1. rozsahu bloku 4 – viz IP rozsahy):

IPv6 Properties


V konkrétním případě pak budou IP6 počítače a IP6 brány záviset na tom, v kterém rozsahu se daný počítač nachází, ale ostatní údaje (délka prefixu podsítě (64) a DNS servery) budou pro SH vždy stejné.

A samozřejmě nezapomenout potvrdit pomocí tlačítka OK (včetně okna LAN Properties).

Windows XP

Na Windows XP a Windows 2003 Server není pro konfiguraci IPv6 k dispozici GUI, takže je třeba vše řešit prostřednictvím příkazového řádku:

netsh interface ipv6 set address <název nebo index rozhraní> <IPv6 adresa>
netsh interface ipv6 set route ::/0 <název nebo index rozhraní> <IPv6 adresa výchozí brány> metric=0

První příkaz nastaví danou adresu na příslušné rozhraní, druhý nastaví výchozí IPv6 bránu. Parametr metric=0 je tam pro jistotu, aby zadaný záznam ve směrovací tabulce měl přednost před ostatními záznamy (například získanými autokonfigurací).

Název rozhraní obvykle bývá (pokud si ho uživatel explicitně nepřejmenuje) něco ve stylu Local Area Connection <číslo> (příp. v české verzi Připojení k místní síti<číslo>). V takovém případě (tj. pokud obsahuje mezery) je třeba použít uvozovky: "Local Area Connection <číslo>" (aby to pochopil jako 1 parametr).

Druhá (jednodušší) možnost je použít index příslušného rozhraní. Ten se zjistí z výpisu rozhraní pomocí následujícího příkazu:

netsh interface ipv6 show interface

Linux

Konfigurace IPv6 na linuxu je obdobná s konfigurací IPv4. Je možno použít buď zavržený tradiční příkaz ifconfig, nebo moderní příkaz ip z balíku iproute2

Vypsat všechny IPv6 adresy můžeme příkazem

ip -6 addr show

Nastavit IPv6 adresu lze příkazem

ip -6 addr add dev <název rozhraní> <IPv6 adresa>/64

Nastavit směrování lze pomocí

ip -6 route add default via <Adresa výchozí brány> metric 0

Testování

Pro testování konektivity je možné používat standardní nástroje zjišťování dostupnosti a trasování. Na Windows jde o nástroje ping a tracert, na Linuxu pak ping6 a traceroute6

DNS

Obsah odpovědi od DNS serveru není závislý na protokolu, kterým byl dotaz položen. To znamená, že pro funkčnost IPv6 není nutné pokládat dotazy DNS serveru přes IPv6 protokol.

IPv6 na serverech SH

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 identifikátory rozhraní) 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);-)

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 Správce“) 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.

Odkazy

Weby o IPv6

  1. http://www.nebezi.cz/
  2. IPv6.cz – CESNETí web o IPv6 (wiki)
  3. http://ipv6-test.com/

Ostatní

  1. Cool IPv6 Stuff
  2. The Day The Routers Died... – trochu odlehčený pohled na problematiku nasazování IPv6 do praxe (na motivy písně American Pie);-)
Jmenné prostory

Varianty
Akce