IPv6

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

IPv6 (internetový protokol verze 6) je v informatice označení nastupujícího protokolu pro komunikaci v současném Internetu (resp. v počítačových sítích, které Internet vytvářejí). IPv6 nahrazuje dosluhující protokol IPv4. Přináší zejména masivní rozšíření adresního prostoru (tj. možnost přidělit všem zařízením jejich vlastní IPv6 adresu) a zdokonalení schopnosti přenášet vysokorychlostně data.

Pro používání IPv6 není ze strany uživatele v moderních operačních systémech nutná žádná speciální příprava (tj. Windows Vista a novější, aktuální distribuce Linuxu atp.). V takovém případě je však nutné, aby správce lokální sítě (LAN) provedl příslušná nastavení aktivních prvků (routery) a aby IPv6 podporoval též poskytovatel internetového připojení (WAN síť). Existuje též možnost, kdy může uživatel navzdory nepřipravenosti sítě LAN a WAN přesto IPv6 používat (tzv. 6to4).[1][2] Vinou vadných aplikací však může při aktivaci IPv6 dojít k nedostupnosti některých služeb.[3]

Motivace a charakteristika[editovat | editovat zdroj]

Starší protokol IPv4 poskytuje omezený adresní prostor – teoreticky 232 adres (cca 4×109 = 4 miliardy adres), prakticky však mnohem méně, protože adresy jsou sdružovány kvůli snadnějšímu směrování do podsítí (viz maska sítě). Protokol IPv4 též nevyhovuje současnému nárůstu přenosových rychlostí (zejména kvůli přenosu multimediálních dat – videokonference, internetová televize, telefonování po internetu atd.).

Související informace naleznete také v článku IPv4.

IPv6 nahrazuje formát IP datagramů, které jsou zodpovědné za vlastní přenos dat. Díky vrstevnaté struktuře rodiny protokolů TCP/IP, které Internet používá, bude nahrazena pouze síťová přenosová vrstva – tj. IP datagramy. Všechny vyšší protokoly mohou zůstat nedotčeny (UDP, TCP a tedy i jejich nadstavby HTTP, FTP atd.). K navazujícím nutným změnám dojde tedy pouze v omezeném souboru protokolů (např. DHCP, ICMP apod.).

Související informace naleznete také v článcích Referenční model ISO/OSI a TCP/IP.

Hlavní změna, kterou přináší IPv6, je daleko větší adresní prostor, což umožňuje větší pružnost při přidělování adres. Je odstraněna potřeba použití překladu síťových adres (NAT), která byla zavedena kvůli vyčerpání adresního prostoru IPv4. Zjednodušuje otázku přidělování adres a přečíslování při změně poskytovatele připojení. Při návrhu IPv6 však nebylo záměrem přiřadit stálou adresu každému člověku či počítači (část adresy se při změně poskytovatele připojení změní).

Běžně jsou uváděny příklady ukazující, jak absurdně velký je adresní prostor IPv6. Obsahuje celkem 2128 (zhruba 3.4×1038) adres, což odpovídá počtu 5×1028 adres pro každého ze 7 miliard dnes žijících lidí. Nebo také 252 adres pro každou hvězdu ve známém vesmíru (milionkrát více adres pro každou hvězdu, než umožňoval protokol IPv4 pro naši planetu). Případně srovnání s počtem atomů ve známém vesmíru (1078 až 10100).[4]

Vysoký počet adres umožňuje hierarchické uspořádání, což zjednodušuje směrování a přečíslování. Pro protokol IPv4 byly vyvinuty mnohdy složité techniky CIDR pro co nejlepší využití omezeného adresního prostoru. Přečíslování při změně poskytovatele připojení může být velmi obtížné, jak je diskutováno v RFC 2071 a RFC 2072. Nicméně, s IPv6 se přečíslování stává téměř automatickým, jelikož identifikace hostů jsou odebrány z identifikátoru poskytovatele připojení. Existují oddělené adresní prostory pro poskytovatele připojení a pro klienty - ty jsou „nedostatečné“ v bitech adresního prostoru, ale velmi efektivní pro provozní záležitosti, jako například změna poskytovatele připojení.

Vznik IPv6[editovat | editovat zdroj]

Počátkem devadesátých let 20. století se stalo zřejmé, že technologie CIDR, zavedená o deset let dříve, nestačí k odvrácení vyčerpání adresního prostoru IPv4. Bylo nutné dále upravit protokol IPv4.[5] Počátkem roku 1992 bylo uváděno do oběhu několik nabízených systémů. Koncem roku 1992 pak komise IETF přišla s požadavkem (RFC 1550) ustavení pracovních skupin pro definici a vytvoření „IP nové generace“ (IPng).[5][6]

IPng bylo převzato IETF 25. července 1994 spolu se vznikem několika IPng pracovních skupin[5]. Do roku 1996 bylo vydáno několik dokumentů RFC definujících IPv6, počínaje RFC 2460. (Mimochodem, IPv5 nebylo předchůdcem IPv6, ale experimentální streamovací protokol, který měl podporovat přenos zvuku a videa.)

Předpokládá se, že protokol IPv4 bude v dohledné budoucnosti i nadále podporován. Uzly (klienti nebo servery) podporující pouze IPv4 nebudou schopny přímé komunikace s IPv6 uzly. Budou muset využít prostředníka, viz Mechanismy přechodu níže.

Vlastnosti a odlišnosti od IPv4[editovat | editovat zdroj]

IPv6 je ve velkém rozsahu konzervativním rozšířením IPv4. Většina přenosových a aplikačních vrstev protokolů vyžaduje malé nebo žádné změny pro funkčnost s IPv6. Výjimkami jsou protokoly aplikací zahrnující adresy síťové vrstvy (jako např. FTP či NTP v3). Nicméně aplikace vyžadují obvykle malé změny a novou kompilaci, aby pracovaly s IPv6.

Větší adresní prostor[editovat | editovat zdroj]

V současnosti hlavním důvodem pro převzetí IPv6 je větší adresní prostor: adresy v IPv6 jsou 128 bitů dlouhé, oproti 32 bitům u IPv4. Díky většímu adresnímu prostoru odpadá potenciální vyčerpání adresního prostoru IPv4, bez potřeby překladu síťových adres a jiných postupů porušujících přirozenost internetových přenosů jako komunikace mezi dvěma koncovými body. Překlad síťových adres může být ve výjimečných případech stále zapotřebí, ovšem návrháři Internetu vědí, že bude v IPv6 obtížně realizovatelný, proto se snaží překladu síťových adres vyhnout, kdykoliv je to možné. Také se zjednodušuje správa středních až velkých sítí, díky nepotřebnosti složitých schémat podsítí. Tvorba podsítí se v ideálním případě změní v logické rozdělení IP sítě pro optimální přístup a směrování. Nevýhoda výměnou za rozšířený adresní prostor je jisté zvýšení režijních přenosů oproti IPv4, což může nepříznivě ovlivnit oblasti s omezenou šířkou přenosového pásma (lze využít komprese hlavičky paketů ke zmírnění tohoto problému). Také zapamatování adresy IPv6 může být pro člověka velmi obtížné až nemožné, kvůli její délce. Je proto nutné využívat DNS.

Bezstavová autokonfigurace adres (SLAAC)[editovat | editovat zdroj]

Host v IPv6 může být konfigurován automaticky, pokud je připojen na směrovanou IPv6 síť, za použití zpráv směrem k ICMP v6 serveru. Při prvním připojení k síti host vyšle 'router solicitation' multicast žádost o konfigurační parametry na místní linku. Odpovídajícím způsobem nastavený ICMPv6 směrovač odpoví na tuto žádost paketem 'router advertisement', který obsahuje konfigurační parametry síťové vrstvy.[7] Pokud není IPv6 autokonfigurace použitelná, host může využít stavové konfigurace (DHCPv6) nebo být nastaven ručně či jiným způsobem.[8]

Multicast[editovat | editovat zdroj]

Multicast je součástí základní specifikace IPv6 na rozdíl od IPv4, kde byl zaveden později. IPv6 nepoužívá broadcast na místní linku, stejného výsledku je možno dosáhnout pomocí multicastu skupině all-hosts (ff02::1). Většina prostředí nicméně v současné době nemá infrastrukturu sítě připravenou směrovat multicast. Multicast v jednotlivé podsíti bude fungovat, ale globální nemusí.

Adresy místní linky[editovat | editovat zdroj]

Rozhraní IPv6 má kromě globálních adres často využívaných aplikacemi také adresy místní linky. Ty jsou vždy k dispozici a nikdy se nemění, což zjednodušuje vývoj konfiguračních a směrovacích protokolů.

Jumbogramy[editovat | editovat zdroj]

Protokol IPv4 má omezenou velikost paketu na 64 KiB. Naproti tomu IPv6, pokud je použit u komunikace hostů a komunikační cesty umožňující MTU (maximální velikost transportní jednotky) větší než 65576 oktetů (65536 + 40 na hlavičku), disponuje volitelně podporu pro pakety přes tento limit. Ty se označují jako jumbogramy a jejich velikost může být až 4 GiB. Použití jumbogramů může snížit režii a tak zvýšit průchodnost přenosové trasy.

Bezpečnost v síťové vrstvě[editovat | editovat zdroj]

Protokol pro IP vrstvu šifrování a autentizaci IPsec je integrální součástí souboru protokolů IPv6, na rozdíl od IPv4, kde je přítomen volitelně (obvykle ale implementován). V současnosti však IPsec není využíván, vyjma zabezpečení spojení mezi směrovači BGP.

Mobilita[editovat | editovat zdroj]

Na rozdíl od IPv4, Mobilní IPv6 (MIPv6) překonává trojstranné směrování, a je proto stejně efektivní jako IPv6. Tato výhoda je víceméně hypotetická, jelikož v současné době nejsou v provozu ani MIPv4, ani MIPv6.

Nepřítomnost kontrolního součtu[editovat | editovat zdroj]

Paket protokolu IPv4 nese pole s kontrolním součtem celé hlavičky. Jelikož se hodnoty některých polí hlavičky při cestě mezi jednotlivými směrovači změní (např. TTL), musí se uvedený kontrolní součet v každém směrovači vždy přepočítat. V dnešních sítích se však chyby vyskytují velmi vzácně a pokud ano, jsou odhaleny protokoly linkové vrstvy (Ethernet). Z tohoto důvodu nemá IPv6 uvedenou kontrolu implementovánu. V případě, že hlavička je poškozena, nejhorší možný případ je zaslání paketu nesprávnému hostu.

Stav provozního nasazení[editovat | editovat zdroj]

Jako výsledek pracovní skupiny IETF s názvem „IPv6 Deployment WG“ vedené Jimem Boundem bylo v červenci 1999 ustaveno IPv6 fórum.[9] V listopadu 2007 představují IPv6 účty mizivé procento aktivních adres ve veřejně přístupném internetu, kde stále převládá IPv4. Kromě zřetelných výjimek bezstavové autokonfigurace, pružnějšího adresování a bezpečného nalezení souseda (SEND), mnoho z možností bylo přeneseno do IPv4, ať už více či méně elegantním způsobem. Proto je nasazení IPv6 z největší části motivováno vyčerpáním adresního prostoru IPv4, které bylo zpomaleno představením technologie CIDR a rozsáhlému využití překladu síťových adres.

Vyčerpání IPv4[editovat | editovat zdroj]

Na nejvyšší úrovni byl adresní prostor IPv4 vyčerpán 3.2.2011,[10] kdy mezinárodní organizace IANA rozdělila poslední bloky adres regionálním správcům (EvropaRIPE, AfrikaAFRINIC, Asie, PacifikAPNIC, Severní AmerikaARIN, Latinská AmerikaLACNIC). V držení regionálních správců zůstávají volné IP adresy, jejichž vyčerpání se očekává zhruba v květnu 2011.[11]

Předchozí odhady doby než dojde k vyčerpání adresního prostoru IPv4 se velmi široce rozcházely. Paul Wilson (ředitel APNIC) v roce 2003 uvedl, že na základě současného tempa nasazení bude dostupný prostor dostatečný do roku 2023.[12] V září 2005 zpráva publikovaná Cisco Systems uvádí vyčerpání fondu dostupných adres pouze ve čtyřech až pěti letech.[13] V listopadu 2007 předpovídala denně aktualizovaná zpráva vyčerpání IANA fondu nepřiřazených adres na květen 2010.

Vládní pobídky[editovat | editovat zdroj]

Mnoho vlád zavádí požadavek na podporu IPv6 v novém vybavení. Například vláda USA určila nasazení IPv6 na páteřních sítích všech federálních agentur do roku 2008[14] a zakoupila /16 blok o 281 bilionech síťových adres pro počáteční nasazení.[15][16][17] Čínská lidová republika má pětiletý plán pro nasazení IPv6 sítě s názvem „China Next Generation Internet“ (Čínský Internet příští generace).

Současné nasazení[editovat | editovat zdroj]

IPv6 fórum, založené v únoru 1999 komisí IETF, pro celosvětovou koordinaci nasazení, vytvořilo dosud přes 45 státních IPv6 fór a IPv6 pracovních skupin.[18] Dne 20. července 2003 sdružení ICANN oznámilo, že hlavní internetové DNS servery byly upraveny pro podporu obou verzí IP protokolu. Dne 8. června 2012 proběhl Světový den IPv6, jehož smyslem bylo otestovat a propagovat veřejné nasazení protokolu IPv6. Na počátku roku 2014 používalo protokol IPv6 přibližně 3% uživatelů Google.

Adresování[editovat | editovat zdroj]

128bitová délka[editovat | editovat zdroj]

Hlavní změnou oproti IPv4 je délka síťové adresy. Adresy IPv6 jsou 128 bitů dlouhé (jak je určeno RFC 4291), zatímco IPv4 adresy mají 32 bitů. Zatímco IPv4 obsahuje zhruba 4 miliardy adres, IPv6 má dostatek prostoru pro 3.4×1038 unikátních adres. Adresy IPv6 se typicky skládají ze dvou logických částí: 64bitového (pod)síťového prefixu a 64bitové části hosta, buď automaticky vytvářené na základě MAC adresy rozhraní nebo přiřazené následně. Jelikož globálně unikátní MAC adresa umožňuje vystopovat uživatelské vybavení - a tedy uživatele - IPv6 adresy se mění s časem. RFC 3041 byla vyvinuta s cílem snížit šanci trvalého svázání identity uživatele a IPv6 adresy, což obnovuje některé z možností anonymity existující u IPv4. RFC 3041 popisuje mechanismus na jehož základě náhodné na čase závislé bity mohou být využity k identifikaci okruhu rozhraní, nahrazujíc tak neměnné a sledovatelné MAC adresy.

Notace[editovat | editovat zdroj]

IPv6 adresy s obvykle zapisují jako osm skupin čtyř hexadecimálních číslic. Například 2001:0db8:85a3:08d3:1319:8a2e:0370:7334 je platná adresa IPv6. Pokud je jedna nebo více ze čtyřčlenných po sobě následujících skupin 0000, nuly mohou být vynechány a nahrazeny dvěma dvojtečkami (::). Např. 2001:0db8:0000:0000:0000:0000:1428:57ab lze tedy nahradit 2001:0db8::1428:57ab. Libovolný počet po sobě následujících skupin 0000 může být nahrazen dvěma dvojtečkami, pokud se v adrese toto nahrazení vyskytuje pouze jednou. Předcházející nuly ve skupině mohou být vynechány (jako v ::1 pro místní smyčku). Adresy níže jsou tedy platné a rovnocenné:

2001:0db8:0000:0000:0000:0000:1428:57ab
2001:0db8:0000:0000:0000::1428:57ab
2001:0db8:0:0:0:0:1428:57ab
2001:0db8:0:0::1428:57ab
2001:0db8::1428:57ab
2001:db8::1428:57ab

Více než jedna zkracující skupina dvou dvojteček je neplatná, jelikož by mohla učinit adresu nejednoznačnou, např. v 2001:0000:0000:FFD3:0000:0000:0000:57ab, zkráceno na 2001::FFD3::57ab může znamenat 2001:0000:0000:0000:0000:FFD3:0000:57ab nebo 2001:0000:FFD3:0000:0000:0000:0000:57ab či obdobnou permutaci.

Posloupnost čtyř bajtů na konci IPv6 adresy může být také uvedena v desítkové soustavě za použití tečky jako oddělovače. Tato notace je často využívána v kompatibilních adresách (viz níže). Schéma je výhodné při vypořádávání se se smíšeným prostředím IPv4 a IPv6 adres. Obecná notace má formu x:x:x:x:x:x:d.d.d.d, kde x zastupují šest vyšších řádů hexadecimálně a d odpovídají desítkovým číslům osmibitové části nižšího řádu adresy, stejně jako u IPv4. Například ::ffff:12.34.56.78 je totožné s ::ffff:0c22:384e a 0:0:0:0:0:ffff:0c22:384e. Používání této notace není schváleno a není podporováno řadou aplikací. Další informace lze nalézt v RFC 4291 - „Architektura adresování IPv6“.

Skutečné IPv6 adresy v URL[editovat | editovat zdroj]

V URL je adresa IPv6 uzavřena v závorkách. Například:

http://[2001:0db8:85a3:08d3:1319:8a2e:0370:7344]/

Tato notace umožňuje analýzu URL bez záměny IPv6 adresy a čísla portu:

https://[2001:0db8:85a3:08d3:1319:8a2e:0370:7344]:443/

Další informace lze nalézt v RFC 2732 - „Formát skutečných IPv6 adres v URL“ a RFC 3986 - „URI: Obecný syntax“.

Notace sítě[editovat | editovat zdroj]

Sítě IPv6 jsou popisovány za pomoci notace CIDR. IPv6 síť (či podsíť) je skupina blízkých IPv6 adres, jejíž velikost musí být mocninou čísla dvě. Počáteční bity adresy, stejné pro všechny hosty dané sítě, se nazývají prefixem sítě. Síť je označena první adresou v síti a lomítkem oddělenou délkou prefixu v bitech (desítkově). Například 2001:0db8:1234::/48 označuje síť s adresami od 2001:0db8:1234:0000:0000:0000:0000:0000 do 2001:0db8:1234:ffff:ffff:ffff:ffff:ffff. Protože jednotlivý host může být chápán jako síť s délkou prefixu 128 bitů, někdy se adresy hostů zapisují s /128 na konci.

Druhy IPv6 adres[editovat | editovat zdroj]

Adresy IPv6 se dělí do tří kategorií[19]:

  • unicast adresy
  • multicast adresy
  • anycast adresy

Unicast adresa reprezentuje jednotlivé síťové rozhraní. Paket zaslaný na unicast adresu je doručen konkrétnímu počítači. Následující typy adres jsou IPv6 unicast adresy:

  • globální unicast adresy
  • adresy místní linky
  • adresy místní stránky
  • unikátní lokální IPv6 unicast adresy
  • speciální adresy

Multicast adresy jsou používány k definování množiny rozhraní obvykle patřících různým uzlům, nikoli pouze jednomu. Paket zaslaný na multicast adresu je protokolem doručen všem rozhraním určeným touto adresou. Multicast adresy mají prefix FF00::/8 a jejich druhý oktet určuje dosah adresy, tzn. rozsah v jakém je multicast adresa zviditelněna. Běžně využívány jsou rozsahy místní linky (0x2), místní stránky (0x5) a globální (0xE). Anycast adresy jsou také přiřazeny více než jednomu rozhraní, patřící rozdílným uzlům. Nicméně paket vyslaný na anycast adresu je obvykle doručen pouze jednomu z členských rozhraní, typicky „nejbližšímu“ vzhledem k představě směrovacího protokolu o vzdálenosti. Anycast adresy nemohou být snadno identifikovány, mají strukturu běžné unicast adresy a liší se pouze zaváděním do směrovacího protokolu na více místech v síti.

Speciální adresy[editovat | editovat zdroj]

Existuje množství adres které mají speciální význam v IPv6:

Místní linka
  • ::/128 — adresa samých nul je nespecifikovaná adresa a je používána pouze v software.
  • ::1/128 — adresa místní smyčky je adresa pro localhost. Pokud aplikace vyšle paket na tuto adresu, IPv6 paket je vrácen zpět na téhož hosta (odpovídá 127.0.0.1 v IPv4).
  • fe80::/10 — prefix místní linky udává platnost adresy pouze v místní fyzické lince. Analogické autokonfigurační IPv4 adrese 169.254.0.0/16.
Místní stránka
  • fc00::/7 — unikátní lokální adresy (ULA) jsou směrovatelné pouze v množině spolupracujících stránek. Tyto byly definovány v RFC 4193 jako náhrada za adresy lokální stránky (viz níže). Adresy zahrnují 40 bitové pseudonáhodné číslo minimalizující nebezpečí konfliktu při sloučení stránek či úniku paketů.
IPv4
  • ::ffff:0:0/96 — tento prefix se používá pro IPv4 mapované adresy (viz Mechanismy přechodu níže).
  • 2002::/16 — pro adresování tunelu IPv6 v IPv4.
Multicast
  • ff00::/8 — použití pro multicast adresy [20], jak je uvedeno v RFC 4291 - „Architektura adresování v IP verze 6“.
Užito v příkladech, neschváleno, či zastaralé
  • ::/96 — nulový prefix se používal pro IPv4 kompatibilní adresy. Nyní zastaralý.
  • 2001:db8::/32 — použito v dokumentaci. Kdekoliv je dán příklad IPv6 adresy, měl by mít tento prefix.
  • fec0::/10 — prefix místní stránky udává platnost adresy pouze uvnitř místní organizace. Použití bylo v září 2004 odmítnuto dle RFC 3879 a systémy nesmí podporovat tento speciální typ adres.

V protokolu IPv6 nejsou vymezeny žádné rozsahy adres pro broadcast — aplikace používají multicast ke skupině all-hosts. IANA udržuje oficiální seznam IPv6 adresního prostoru. Přiřazení globálních unicastů lze nalézt na stránkách konkrétních regionálních registrátorů, nebo na stránkách GRH DFP.

Zónové rejstříky

Určitý problém představují adresy lokální linky pro systémy s více než jedním rozhraním. Jelikož každé rozhraní může být připojeno k jiné síti a všechny adresy se zdají být na stejné podsíti, objevuje se nejednoznačnost neřešitelná směrovacími tabulkami. Například host A má dvě rozhraní a těmto rozhraním jsou při aktivaci automaticky přiřazeny adresy místní linky (dle RFC 2462): fe80::1/64 a fe80::2/64. Pouze jedno z rozhraní je připojeno do stejné fyzické sítě jako host B s adresou fe80::3/64. V případě že host A se pokusí o spojení s fe80::3, jak určí rozhraní které má použít?

Řešení, definované v RFC 4007, je dodatkem k unikátnímu zónovému rejstříku místního rozhraní v textové podobě ve tvaru <adresa>%<id_zóny>, například http://[fe80::1122:33ff:fe11:2233%eth0]:80/. Toto ovšem může vyvolat další problémy kvůli kolizi s procentovým kódováním použitým v URI[1].

  • Implementace IPv6 v Microsoft Windows používá číselnou identifikaci zóny: fe80::3%1
  • BSD aplikace typicky použijí jméno rozhraní jako identifikátor zóny: fe80::3%pcn0
  • Linuxové aplikace také použijí jméno rozhraní jako identifikátor zóny: fe80::3%eth0

Poměrně málo aplikací schopných IPv6 rozumí syntaxi identifikátorů zóny (s důležitou výjimkou v OpenSSH), čímž se pro ně adresy místní linky stávají nepoužitelnými, pokud místní linky využije více než jedno rozhraní.

IPv6 paket[editovat | editovat zdroj]

Paket IPv6 se skládá ze dvou hlavních částí: hlavičky a těla. Hlavička se nachází v prvních 40 oktetech (320 bitů) paketu a obsahuje:

  • verzi — 4 bity, verze 6
  • dopravní třídu — 8 bitů na prioritu paketu. Úroveň priority se dělí na rozsahy: kde zdroj podporuje kontrolu přetížení a bez podpory kontroly přetížení.
  • Pojmenování toku — 20 bitů pro správu QoS. Původně určeno pro speciální obsluhu aplikací reálného času, nyní se nepoužívá.
  • Délka těla — 16 bitů pro délku těla paketu. Při vynulování se nastaví „jumbo“ tělo (skok za skokem)
  • Následující hlavička — 8 bitů, určuje další vnořený protokol. Hodnoty se shodují s hodnotami definovanými pro IPv4.
  • Zdrojová a cílová adresa — 128 bitů na každou adresu.
  • Hop limit — 8 bitů, číselně definuje počet povolených přechodů síťovými prvky. Každý přechod znamená snížení čísla o 1.

Tělo paketu může být 64KiB velké ve standardním režimu nebo větší s volbou „jumbo“ těla. Fragmentace je v IPv6 ošetřena pouze na straně odesílatele. Směrovače paket nikdy nefragmentují. Je očekáváno že host sám zjistí velikost MTU. Pole Protocol z IPv4 je nahrazeno položkou Next header (Následující hlavička). Tato položka obvykle určuje protokol přenosové vrstvy použitý tělem paketu. Nicméně, za přítomnosti rozšiřujících položek položka následující hlavička označuje přítomnost zvláštní hlavičky Options. Vložení této hlavičky pro přenos voleb je analogické AH a ESP v protokolu IPsec pro obě verze IPv4 a IPv6.

DNS a IPv6[editovat | editovat zdroj]

V systému DNS jsou IPv6 adresy zastoupeny AAAA záznamy (tzv. „quad-A“ záznamy) pro dopředné vyhledávání. Reverzní vyhledávání se odehrávají pod ip6.arpa (dříve ip6.int), kde je adresní prostor přenesen na tzv. hranice nibble. Toto schéma, jednoduše přenesené ze známého A záznamu a schémat in-addr.arpa, je definováno v RFC 3596.

AAAA schéma bylo jedno ze dvou nabízených v době vývoje architektury IPv6. Druhý návrh, vytvořený pro usnadnění přečíslování sítě, by měl A6 záznamy pro dopředné vyhledávání a množství jiných inovací jako např. bit-string pojmenování a DNAME záznamy. Je popisován v experimentálním RFC 2874 a odkazovaných dokumentech (s diskuzí kladů a záporů obou schémat v RFC 3364).

Pole záznamu AAAA
NAME Doménové jméno
TYPE AAAA (28)
CLASS Internet (1)
TTL Lhůta platnosti záznamu v sekundách
RDLENGTH Délka pole RDATA
RDATA Řetězcová forma adresy IPv6 jak uvedeno v RFC 3513

RFC 3484 udává jak mají aplikace vybrat IPv6 nebo IPv4 adresu k použití, včetně adresy získané z DNS.

RFC o IPv6 a DNS[editovat | editovat zdroj]

  • Rozšíření DNS pro podporu IP verze 6 — RFC 1886
  • Rozšíření DNS pro podporu agregací a přečíslování adres IPv6 — RFC 2874
  • Kompromisy v DNS podpoře pro IPv6 — RFC 3364
  • Výchozí výběr adres pro IPv6 — RFC 3484
  • Architektura adresování IPv6 — RFC 3513
  • Rozšíření DNS pro podporu IPv6 (nahrazuje 1886 a 3152) — RFC 3596

Mechanismy přechodu[editovat | editovat zdroj]

Před kompletním nahrazením IPv6 za IPv4, což se pravděpodobně nestane v dohledné budoucnosti, je zapotřebí množství tzv. mechanismů přechodu, umožňující IPv6 hostům využívat IPv4 služby a izolovaným IPv6 hostům a sítím dosáhnout IPv6 Internet přes infrastrukturu IPv4.[21] obsahuje přehled přechodových mechanismů zmíněných níže.

Duální implementace[editovat | editovat zdroj]

Jelikož IPv6 je konzervativním rozšířením IPv4, je poměrně snadné vytvořit síťovou implementaci podporující obě verze IP, sdílející většinu kódu. Taková se nazývá duální implementace a host používající tuto implementaci se nazývá dual stack host. Tento přístup je popsán v RFC 4213. Většina současných implementací IPv6 používá duální implementaci. Některé z dřívějších experimentálních implementací používaly nezávislé IPv6 a IPv4. Nejsou známy žádné implementace pouze pro IPv6.

Tunelování[editovat | editovat zdroj]

Aby mohl dosáhnout IPv6 Internetu, izolovaný host musí být schopen použít existující IPv4 infrastrukturu pro přenos IPv6 paketů. Toho je dosaženo použitím techniky někdy nesprávně označované jako tunelování, které používá zapouzdření IPv6 paketů do IPv4, v důsledku použití IPv4 jako linkové vrstvy pro IPv6. Pakety IPv6 mohou být přímo zapouzdřeny do IPv4 paketů použitím protokolu číslo 41. Také mohou být zapouzdřeny do UDP paketů, například pro překonání směrovače nebo NAT zařízení blokující přenos protokolu 41. Samozřejmě mohou také využít obecného schématu zapouzdření, jako např. AYIYA nebo GRE.

Automatické tunelování[editovat | editovat zdroj]

Automatické tunelování se vztahuje k technice automatického určení koncových bodů tunelu pomocí směrovací infrastruktury. Doporučený způsob automatického tunelování je tunelování 6to4, využívající zapouzdření protokolem 41. Koncové body tunelu jsou určeny za pomoci známé IPv4 anycast adresy na vzdálené straně a vnoření IPv4 adresy do IPv6 adresy na místní straně. 6to4 je v současnosti široce nasazováno. Jiný mechanismus automatického tunelování je ISATAP. Tento protokol považuje IPv4 síť za virtuální místní IPv6 linku s mapováním každé IPv4 adresy na adresu místní linky IPv6. Teredo je technika automatického tunelování používající UDP zapouzdření a uvádí se jako schopné překonat vícenásobný NAT. V současné době není Teredo příliš nasazováno, nicméně experimentální verze Tereda je instalována ve Windows XP SP2 implementaci IPv6. Ve Windows Vista jsou IPv6, 6to4 a Teredo přítomny a standardně povoleny.

Spravované tunelování[editovat | editovat zdroj]

Spravované tunelování je technika kde koncové body tunelu jsou výslovně uvedeny. Ať už lidským operátorem nebo automatickou službou známou jako zprostředkovatel tunelu. Spravované tunelování je obvykle více deterministické a snadněji odladitelné než automatické tunelování, proto je doporučeno pro velké dobře spravované sítě. Spravované tunelování používá protokol 41 v položce Protocol IPv4 paketu. Tato metoda je také známa pod názvem 6in4.

Použití proxy a překlad[editovat | editovat zdroj]

Pokud IPv6 host potřebuje přistupovat k IPv4 službě, jako je například web server, je potřeba některá z metod překladu. Jedna z funkčních metod je použití duální implementace proxy v aplikační vrstvě, například webová proxy. Byly také nabídnuty techniky podobné NAT pro překlad na nižších vrstvách bez ohledu na aplikaci. Většina byla shledána příliš nespolehlivými v praxi, kvůli široké škále funkcionalit vyžadovaných běžnými protokoly aplikační vrstvy, a mnohdy jsou považovány za zastaralé.

Hlavní milníky v dostupnosti IPv6[editovat | editovat zdroj]

Rok Ohlášení a dostupnost
1996 Linux získává podporu IPv6 v jádře vývojové verze 2.1.8.[22]
1997 Koncem roku 1997 operační systém IBM AIX 4.3 podporuje IPv6 jako první z komerčních platforem.[23][24]
1998 Microsoft Research[25] poprvé uvolnil experimentální IPv6 zásobník. Tato verze nebyla určena pro nasazení v produkčním prostředí.
2000 Podpora IPv6 v produkční kvalitě se stala dostupnou od počátku do poloviny roku 2000 ve FreeBSD, OpenBSD a NetBSD díky KAME projektu.[26]
Sun Solaris podporuje IPv6 od verze 8 v únoru 2000.[27]
2002 Microsoft Windows NT 4.0 a Windows 2000 SP1 disponují omezenou podporou IPv6 pro výzkum a experimenty od roku 2002.
Microsoft Windows XP (2001) měly podporu IPv6 pro testovací účely. Ve Windows XP SP1 (2002) a Windows Server 2003 je IPv6 zahrnuto jako kmenový síťový protokol použitelný pro komerční nasazení.[28]
IBM z/OS podporoval IPv6 od verze 1.4, dostupné od září 2002.[29]
2003 Apple Mac OS X v10.3 "Panther" (2003) podporuje IPv6.[30]
V červenci, ICANN oznamuje viditelnost IPv6 AAAA záznamů pro doménu nejvyššího řádu zemí Japonsko (.jp) a Koreu (.kr) na kořenových DNS serverech pod sériovým číslem 2004072000. IPv6 záznamy pro Francii (.fr) byly přidány o něco později. Tím se IPv6 stává funkční ve veřejném smyslu.
2007 Microsoft Windows Vista (2007) nativně podporují IPv6.[28]
Apple AirPort Extreme 802.11n základová stanice je v základním nastavení IPv6 brána. Používá ¨6to4¨ tunelování a volitelně může směrovat skrz ručně nastavený IPv4 tunel.[31]
2008 4. února 2008 organizace IANA přidává AAAA záznamy IPv6 adres čtyř kořenových serverů.[32] Díky tomuto přechodu je pro dva internetové hosty možné komunikovat kompletně bez použití IPv4.

Kritika[editovat | editovat zdroj]

Přestože IPv6 bylo uvítáno jako budoucnost internetu a očekává se, že vyřeší mnoho problémů, zazněla také kritika tohoto protokolu. Jednou z námitek je extrémní velikost adresního prostoru. S více než bilionem adres na čtvereční centimetr povrchu planety, 128 bitové adresy byly označeny jako neúměrně velké. Tato námitka je běžná, nicméně nezohledňuje fakt, že IETF nikdy neměla v úmyslu přiřadit statické adresy každému z možných míst. Délka je zvolena s ohledem na agregaci směrování, autokonfigurace adres a jiné záležitosti působící problémy v IPv4. Zpracování takto dlouhých adres může vyžadovat více času a může zvýšit cenu směrovačů. (Administrátoři serverů, kteří dříve vyžadovali po uživatelích zapamatování si IP adres, namísto platby za jméno domény, nemusí mít možnost toto nadále vyžadovat, jelikož není snadné zapamatovat si delší IPv6 adresu. Přesto není nijak zdokumentováno, že by cena doménového jména představovala zásadní problém.)

Německý výzkumník a nezávislý bezpečnostní konzultant Marc Heuse pak v roce 2012 upozornil na to, že protokol IPv6 je zranitelný díky funkci router advertisement, kdy útočník může předstírat, že je router a vysílat falešné packety. [33]

Odkazy[editovat | editovat zdroj]

Reference[editovat | editovat zdroj]

  1. http://www.nic.cz/6to4/ – IPv6 internet pomocí technologie 6to4
  2. http://www.nic.cz/it10/ – Konference Internet a Technologie 10
  3. http://ubuntuforums.org/showthread.php?t=87798 – How-To: Disable IPV6 to speed up Internet.
  4. http://www.vesmir.cz/clanek/ohlednuti-za-dvacatym-stoletim – Ohlédnutí za dvacátým stoletím
  5. a b c RFC 1750
  6. Historie IPng
  7. IPv6 bezstavová autokonfigurace adres, RFC 2462, prosinec 1998
  8. Přečíslování směrovačů pro IPv6, RFC 2894, M. Crawford, srpen 2000
  9. http://www.ipv6forum.org – IPv6 fórum
  10. http://www.cnews.cz/adresy-ipv4-dosly-zachovejte-paniku
  11. http://www.potaroo.net/tools/ipv4/ Zpráva o adresách IPv4
  12. Exekutiva: Žádný nedostatek síťových adres: John Lui, CNETAsia
  13. Pragmatická zpráva o úbytku IPv4 síťových adres: Tony Hain, Cisco Systems
  14. Nařízení Office of Management Budget ze srpna 2005
  15. Alokace IPv6 adres ministerstva obrany USA
  16. Kousnutý IPv6 (oprava první zprávy)
  17. Poskytnutí nástrojů pro sdílení informací: Síťové podnikové služby (Vedoucí Ředitelství pro informační politiku ministerstva obrany)
  18. IPv6 pracovní skupiny
  19. RFC 2373 - 'Architektura adresování IPv6'
  20. Adresy IPv6 multicastů
  21. Přechodové mechanismy IPv6 / Porovnání tunelování
  22. projekt vývoje IPv6 pro Linux
  23. Podpora IPv6 obsažená v AIX 3.3
  24. To je AIX 4.3.
  25. Internetový protokol verze 6 (staré vydání IPv6 Microsoft Research)
  26. Projekt KAME
  27. Změny v Sun Solaris 8 oproti Solaris 7
  28. a b Hlavní IPv6 stránka Microsoftu
  29. http://www-03.ibm.com/servers/eserver/zseries/announce/zos_r4/
  30. Mac OS X 10.3 používá IPv6
  31. Technická specifikace Apple AirPort Extreme.
  32. IPv6: přichází na kořenový server ve vaší blízkosti
  33. IPv6 není bezpečný a nasazujte ho s rozmyslem, varuje expert

Literatura[editovat | editovat zdroj]

Hlavní specifikace[editovat | editovat zdroj]

  • RFC 2460: Internet Protocol, Version 6 (IPv6) Specification (obsoletes RFC 1883)
  • RFC 2461/RFC 4311: Neighbor Discovery for IP Version 6 (IPv6) (4311 updates)
  • RFC 2462: IPv6 Stateless Address Autoconfiguration
  • RFC 4443: Internet Control Message Protocol (ICMPv6) for the IPv6 Specification (obsoletes RFC 2463)
  • RFC 2464: Transmission of IPv6 Packets over Ethernet Networks
  • RFC 4291: Internet Protocol Version 6 (IPv6) Addressing Architecture (obsoletes RFC 3513)
  • RFC 3041: MAC address use replacement option
  • RFC 3587: An IPv6 Aggregatable Global Unicast Address Format

Bezstavová autokonfigurace[editovat | editovat zdroj]

  • RFC 2461: Neighbor Discovery for IP Version 6 (IPv6)
  • RFC 2462: IPv6 Stateless Address Autoconfiguration

Programování[editovat | editovat zdroj]

  • RFC 3493: Basic Socket Interface Extensions for IPv6 (překonává RFC 2553)
  • RFC 3542: Advanced Sockets Application Program Interface (API) for IPv6 (překonává RFC 2292)
  • RFC 4038: Application Aspects of IPv6 Transition
  • RFC 3484: Default Address Selection for Internet Protocol version 6 (IPv6)

Knihy[editovat | editovat zdroj]

Existuje množství knih s tématem IPv6:

Externí odkazy[editovat | editovat zdroj]

Zainteresované pracovní skupiny IETF[editovat | editovat zdroj]

  • (anglicky) ipv6 IP Version 6 (uzavřena)
  • (anglicky) multi6 Site Multihoming in IPv6
  • (anglicky) shim6 Site Multihoming by IPv6 Intermediation
  • (anglicky) v6ops IPv6 Operations
  • (anglicky) 6bone IPv6 Backbone (uzavřena)
  • (anglicky) ipng IP Next Generation (uzavřena)
  • (anglicky) ipv6mib IPv6 MIB (uzavřena)