IPv6

De spelers

Net zoals bij IPv4 zijn er verschillende betrokkenen in gans het IPv6 gebeuren.
Aan de top staat het IANA die regelt alle afspraken in verband met de IPv6 adressering. Zoals alle RFC’s die daarmee verband houden bijvoorbeeld RFC3315 die alle overeenkomsten en voorschriften bundelt over DHCPv6 of ook de regels in verband met speciale IPv6 adressen.
De volgende spelers zijn de organisaties die effectief bepaalde blokken IPv6 adressen toewijzen aan de providers. Die zijn georganiseerd per regio, Noord Amerika, Zuid Amerika, Europa enz.. Voor Europa is dat bijvoorbeeld Ripe NCC die de toekenning doet.
De volgende speler is de provider. Die vraagt bij de regio organisatie een of meerdere blokken adressen aan. Kijken we in de Ripe database dan zien we dat Telenet verschillende blokken heeft aangevraagd en daar vermoedelijk ook een jaarlijkse bijdrage voor betaald.
De volgende in het rijtje is de klant van de provider, of beter de router van die klant. Al kan die klant ook een single host zijn.
En uiteindelijk de host, die per definitie elk toestel is, die geen router is, die een IP adres nodig heeft. Kan een smartphone, PC, Laptop, Printer, Ipcamera of een slim device zoals een frigo of lamp die via het interne netwerk bereikbaar is.

Opbouw van het IPv6 adres

In tegenstelling tot een IPv4 adres dat uit 32 bits bestond heeft een IPv6 adres 128 bits lengte.
De laatste 64 bits zijn het privé gedeelte. Afhankelijk van het toegepaste systeem kan dit manueel ingevuld worden of door DHCPv6 toegewezen worden of opgebouwd worden aan de hand van het macadres van de host of door een ander algoritme aangemaakt worden. Dus hier heeft de gebruiker (host) de vrije hand.
De eerste 64 bits of de prefix. Daar spelen 3 factoren mee en alleen bij de laatste factor kan de gebruiker iets bepalen.
De eerste factor is de provider. Zoals eerder gezegd koopt de provider een blok IPv6 adressen of eerder een aantal vaste bits van het adres. We nemen als voorbeeld Telenet dat het blok 2001:db8::/32 koopt. Dit is fictief want het is een speciaal gereserveerd adres voor documentatie doeleinden. Dit is binair: 0010 0000 0000 0001 0000 1101 1011 1000
Dit kan Telenet niet wijzigen tenzij voor een ander blok dat ze aangekocht hebben. Voor klanten met een fixed IP adres wijzigt dit niet meer. Er schieten dus nog 32 bits over van de 64. Telenet wijst aan zijn klanten een prefix/56 toe wat wil zeggen dat de klant de laatste 8 bits zelf kan bepalen.
Telenet bepaalt nu hoe die resterende 24 bits er gaan uitzien. Dit gebeurt meestal door DHCPv6 op basis van de DUID (Dhcp Unique IDentifier) van de router. Dit kan (fictief) bijvoorbeeld 1111:1100 zijn. Automatisch wordt daar de netwerk ID 00 achteraan geplakt. Binair wordt dat 0001 0001 0001 0001 0001 0001 0000 0000.
De prefix ziet er dan zo uit:
2001:db8:1111:1100::
In binaire vorm:
0010 0000 0000 0001 0000 1101 1011 1000 0001 0001 0001 0001 0001 0001 0000 0000
In dit geval is 2001:db8 het provider ID, 1111:11 de identificatie van de router (klant) en de laatste 00 het netwerk ID. En dan wordt er het lokaal IP adres achter geplakt.
Om het iets aanschouwelijker te maken:
Provider: Telenet (eerste 32 bits) gekocht bij Ripe (kan ook meer bits zijn)
Klant: router: (volgende 24 bits) meestal bepaald op basis van de DUID ( kan ook meer of minder bits zijn)
afdeling: netwerkID ( 8 bits) Kan ook 4 bits zijn als de provider een prefix/60 voorziet voor zijn klanten.
Gebruiker: host (64 bits)
Totaal: 128 bits
In het voorbeeld kan Telenet dus 2^24 of 16 777 216 adressen toekennen en per adres kan de klant 2^8 of 256 aparte netwerken maken met in elk netwerk 2^64 IPadressen.

De praktijk

Indien een PC niet op een router is aangesloten dan kent die zichzelf een linklocal adres toe. Gekenmerkt door het volgende uitzicht:
f080::1234:1234:1234:1234 , voor deze laatste 64 bit adres gaat die ook automatisch kijken of er buren zijn en genereert dan een ander adres dan de buren. Vergelijkbaar met de APIPA in IPv4.
Is er wel een router aanwezig dan kan dit adres op 3 manieren aangemaakt worden.
1. Manueel: U geeft zelf een 64 bitaddres in, de prefix en netwerkID en ook de default gateway.
2. SLAAC: Een protocol waarbij de host zichzelf voorziet van een adres met de minimale gegevens voorzien door de router, Prefix, netwerkID, defaultgateway. Zie hiervoor RFC4862
3. DHCPv6: Via dit protocol gaat de host een adres vragen aan de DHCPv6 server van de router, die aan pool aan adressen heeft, en verder de nodige gegevens ter beschikking stelt zoals Prefix enz. De router op zich heeft de prefix ook bekomen via DHCPv6 PD (Prefix Delegation).
Vervolgens wordt dit adres bij wijze van spreken bekend gemaakt op het net.

Het verloop van een verbinding

Dit verloopt vrijwel identiek als bij IPv4.
Je maakt verbinding met een webpagina (ook een IPadres ergens op het net), nu meestal via HTTPS (poort 443). Daarmee maak je een gaatje in de firewall van de router via poort 443 zodat data over en weer kan gaan.
Omgekeerd als iemand een verbinding maakt naar uw IPadres, ziet die aan de hand van het adres via welke provider het bij u terecht moet komen. Maar hier treedt dan de werking in van uw router. Als u de poort (bvb 443 voor een https) niet hebt opengezet naar een bepaalde host, binnen een bepaald netwerk dan stuurt uw router de boodschap terug “toegang geweigerd”. Indien de poort wel open staat zal de host antwoorden en de verbinding aanvaarden.

Enkele bronnen…

https://www.ibm.com/support/knowledgecenter/en/STCMML8/com.ibm.storage.ts3500.doc/opg_3584_IPv4_IPv6_prefix_subnet_mask.html

https://apps.db.ripe.net/db-web-ui/query?bflag=false&dflag=false&rflag=true&searchtext=Telenet&source=RIPE&types=inet6num

https://en.wikipedia.org/wiki/DHCPv6

https://www.iana.org/assignments/iana-ipv6-special-registry/iana-ipv6-special-registry.xhtml

https://fr.forum.proximus.be/archives-2010-2017-40/ipv6-support-configuration-proximus-explications-aux-collaborateurs-proximus-42259

https://docs.oracle.com/cd/E19253-01/816-4554/clientid/index.html

https://www.convertworld.com/nl/talstelsel/hexadecimaal.htmlhttps://blog.zivaro.com/need-know-link-local-ipv6-addresses

https://blog.zivaro.com/need-know-link-local-ipv6-addresses

Comments are closed.