O protokole IPv6 sa začalo uvažovať na začiatku 90. rokov minulého storočia, ako o nástupcovi stávajúceho protokolu IPv4. Bolo jasné, že pri aktuálnej rýchlosti prideľovania adries nebude v blízkej dobe adresný priestor dostačujúci. Krátkodobé riešenia v podobe Classless Inter-domain Routing (CIDR) a Network Address Translation (NAT) nestačili. Špecifikácia protokolu IPv6 sa tak objavila v RFC 1883 na konci roka 1995 (v roku 1998 nová špecifikácia RFC 2460) - na plné nasadenie sa čaká dodnes.
Primárnym cieľom nového protokolu bolo zvačšenie adresného priestoru. Z pôvodnej velkosti adresy 32b narástla na 128b. Do špecifikácie protokolu sa však dostali aj dalšie zaujímavé zmeny:
V porovnaní s protokolom IPv4 prešla veľkými zmenami. Hlavička bola
minimalizovaná na najnutnejšie prvky a bola jej určená pevná d.žka na 40B
(IPv4 mala dlžku 20B). Napriek tomu, že sa adresy zväčšili 4x, hlavička narástla
len dvojnásobne. Všetky dopl.ujúce a nepovinné možnosti boli presunuté
do rozširujúcich hlavičiek, ktoré sú umiestnené lineárne za základnou hlavičkou.
Obrázok prevzatý z IPv6.cz.
Základná špecifikácia adries je popísaná v RFC 4291. Existujú tri typy adries:
Každé rozhranie može mať pridelených niekoľko adries rôznych typov.
IP adresy sa zapisujú pomocou štvoric šestnástkových číslic oddelených dvojbodkou.
Plná IPv6 adresa: abcd:03d4:0000:0000:965c:ab32:ac31:abcd
Možnosti skrátenia zápisu:
Vznikne z linkovej adresy rozhrania vložením konštanty FFFE. Pri IPv6 EUI64 sa navyše otáča význam siedmeho najvyššieho bitu.
Nulová hodnota označuje lokálne jednoznačný identifikátor.
MAC: 00-EC-38-E3-65-A5
IPv6 identifikátor rozhrania: 2ec:38ff:fee3:65a5
Takto vytvorené identifikátory sú však jednoducho sledovateľné v sieti. Preto boli v RFC 4941 zavedené identifikátory,
ktoré zachovávajú súkromie užívatelov. Zariadenie tak využíva viacero identifikátorov - trvalý EUI64 a krátkodobé náhodne
generované. Trvalý používajú ostatné stroje pri kontaktovaní zariadenia, a krátkodobý používa stroj sám pri nadväzovaní
spojenia.
Základnou myšlienkou bezstavovej konfigurácie je, že klient sa dozvie všetky informácie potrebné ku konfigurácii z Router Advertisment (RA). K získaným prefixom, ktoré sieť používa, si doplní identifikátor rozhrania a vytvorí si vlastnú IPv6 adresu. V oznámeniach smerovača však chýbali adresy DNS serverov. Snaha o doplnenie RA o adresy rekurzívnych dns serverov sa dostala do podoby štandardu až v roku 2010 (RFC 6106). Podpora je zatiaľ len pre linux/unix v radvd.
Podobná DHCP(v4). Podporuje dva režimy - bezstavový a stavový DHCPv6. Bezstavový doplňuje bezstavovú konfiguráciu SLAAC. Ak RA nastaví príznak O - other, pri konfigurácii siete je SLAAC doplnený o bezstavové DHCPv6 z ktorého si klient doplní informácie. Ak je použitý príznak M - managed, nastavenie prebieha podobne ako u DHCPv4. Nič však klientovi nebráni v tom aby si nastavil IP adresu aj pomocou SLAAC. DHCPv6 nepredáva adresu pred default gateway.
Vo výsledku ani jeden z prístupov k autokonfigurácii zatiaľ nedokáže existovať samostatne.
Smerovanie aj DNS je v porovnaní s IPv4 prakticky rovnaké. Okrem manuálneho
vytvárania smerovacích tabuliek je možné využit aj niektorý z protokolov napr.
RIPng, OSPFv3, BGP4+. Pri smerovaní používame bu. ip -6
alebo route -A inet6
.
Pre IPv6 adresy sa vytvára AAAA záznam. Reverzný záznam sa zapisuje po jednotlivých
šestnástkových čísliciach oddelených bodkov (na konci doplnené o ip6.arpa).
U reverzného záznamu nie je možné skracovanie a vynechávanie 0.
hostname AAAA 2001:db8::1428:57ab
b.a.7.5.8.2.4.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa PTR hostname
Bezpečnosť sa poskytuje na úrovni IP - IPsec. Poslednou špecifikáciou, ktorá sa venuje
bezpečnosti je RFC 4301: Security Architecture for the Internet Protocol vydané koncom
roku 2005. Základ bezpečnostných služieb spočíva na dvoch rozširujúcich hlavičkách AH
(Authentication Header) a ESP (Encapsulating Security Payload). Prvá hlavička je určená
k autentizácii - je nepovinná. Hlavička ESP je povinná a dokáže zastúpiť funkciu AH.
Bezpečnostné hlavičky môžeme používať v dvoch režimoch:
Protokoly IPv4 a IPv6 nie sú navrhnuté ako kompatibilné. Je jasné, že prechod na protokol IPv6 neprebehne počas krátkej doby a preto bolo nutné vyriešit koexistenciu oboch protkolov. Prechodové mechanizmy možeme rozdelit do troch skupín - dualstack, tunelovacie a prekladové mechanizmy.
Systém umožnuje chod aplikácií využívajúcich IPv4 aj IPv6 protokol súčasne. Využíva IPv4 namapované IPv6 adresy. Pracuje sa v IPv6 priestore. Ak chce aplikácia použit IPv4 využije špeciálne adresy ::ffff:IPv4 adresa.
Ide o preklad IPv6 adries na jednu alebo viac IPv4 adries (privátna sieť používa IPv6). Preklad adries rieši mechanizmus NAT64, doplnený o DNS64, ktorý "podvrhne" klientovi AAAA záznam serveru ktorý nebeží na IPv6. Následne NAT64 preloží IPv6 na IPv4.
Nastavenie klienta podporuje väčšina operačných systémov. V Linuxe je možné nastaviť
IPv6 pomocou ifconfig.
ifconfig eth0 inet6 add 2001:0db8:0:f101::1/64
Ak chceme zariadenie využívať ako smerovač musíme nastaviť démona RADVD (/etc/radvd.conf).
interface eth0 {
#zapnutie RA, časový interval v sekundách
AdvSendAdvert on;
MinRtrAdvInterval 5;
MaxRtrAdvInterval 20;
# konkrétne parametry pre prefix
prefix 2001:0bbb:111:1::/64 {
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr on;
};
RDNSS ip [ip] [ip] {
#AdvRdnssLifetime seconds|infinity
#FlushRDNSS on|off
};
};
viz. man radvd.conf