IPv6

IPv4 versus IPv6

De traditionele IP adressen heten IPv4 adressen, deze bestaan uit 4 bytes, 32 bits, gescheiden door een punt. Met dit systeem zijn maximaal 4.294.967.296 (2^32) devices te adresseren, hiervan zitten er 588.514.304 in gereserveerde reeksen dus er zijn 3.706.452.992 devices een op internet bekend publiek adres te geven.
Gereserveerde reeksen zijn:
 0.0.0.0/8        Current network (only valid as source address)  RFC 6890
 10.0.0.0/8       Private network                                 RFC 1918
 100.64.0.0/10    Shared Address Space                            RFC 6598
 127.0.0.0/8      Loopback                                        RFC 6890
 169.254.0.0/16   Link-local                                      RFC 3927
 172.16.0.0/12    Private network                                 RFC 1918
 192.0.0.0/24     IETF Protocol Assignments                       RFC 6890
 192.0.2.0/24     TEST-NET-1, documentation and examples          RFC 5737
 192.88.99.0/24   IPv6 to IPv4 relay (includes 2002::/16)         RFC 3068
 192.168.0.0/16   Private network                                 RFC 1918
 198.18.0.0/15    Network benchmark tests                         RFC 2544
 198.51.100.0/24  TEST-NET-2, documentation and examples          RFC 5737
 203.0.113.0/24   TEST-NET-3, documentation and examples          RFC 5737
 224.0.0.0/4      IP multicast (former Class D network)           RFC 5771
 240.0.0.0/4      Reserved (former Class E network)               RFC 1700
 255.255.255.255  Broadcast                                       RFC 919
Al lang geleden kreeg men in de gaten dat er een einde zat aan die reeks IPv4 adressen. Ieder huis heeft een internet verbinding met een eigen IP adres, bedrijven hebben meer adressen nodig tbv devices die vanaf internet bereikbaar moeten zijn.
In 1998 kwam men met IPv6 dat 128 bits kent. Het adres bestaat uit 8 groepen gescheiden door dubbele punten.
Elke groep bestaat uit 4 hexadecimale digits (bijvoorbeeld 2af0). Hiermee zijn 3.4×10^38 adressen te maken maar ook hier zijn gereserveerde reeksen die niet op internet te gebruiken zijn.

Bij IPv6 is het niet de bedoeling met variabele subnetmasks te werken, een vlan wordt geacht masker /64 te hebben wat neerkomt op 1,844674407 x 10^19 (18.446.744.070.000.000.000) adressen per vlan. De bedoeling is dat een site (bedrijf) een /48 masker heeft dus er passen 65535 vlans in een site.
Echter van dat idee wordt al afgestapt want het is onzin om een internet aansluiting thuis een /48 reeks te geven met 1,20892582 x 10^24 (1.208.925.820.000.000.000.000.000) devices. Hetzelfde geldt voor een point-to-point verbinding tussen twee routers, een /64 is dan wat overdreven.
Zelfs voor een gewoon vlan is een /64 wel erg veel, het is ondoenlijk om een subnet te scannen haast (dat is een voordeel) maar er gaan erg veel adressen verloren. Het idee is dan er is genoeg voor alles en iedereen maar als je er maar hard genoeg mee gooit is alles een keer op.

Adressen en schrijfwijze

Laten we even een fictief IPv6 adres nemen zoals hieronder. Het /48 Masker geeft een site reeks aan dat betekent dat de eerste drie groepen de site is.
Een provider reeks is /32 dus de eerste twee groepen, dat betekent dat een provider 65535 sites in die reeks heeft.
Als er in een adres meer nullen zitten dan mogen die als 1 nul geschreven worden, als er dubbele punten in zitten dan wordt dat afgekort met ::
aaaa:bbbb:cccc:dddd:1111:2222:3333:4444/32  --> aaaa:cccc is de provider reeks
aaaa:bbbb:cccc:dddd:1111:2222:3333:4444/48  --> aaaa:bbbb:cccc is het netwerk van de site
aaaa:bbbb:cccc:dddd:1111:2222:3333:4444/64  --> aaaa:bbbb:cccc:dddd is het subnet van 1 vlan, 
                                                1111:2222:3333:4444 is de ruimte voor de hosts
aaaa:bbbb:cccc:0000:0000:0000:0000:beef     --> aaaa:bbbb:cccc::beef
aaaa:bbbb:cccc:0:0:0:0:3e00                 --> aaaa:bbbb:cccc::3e

Stateless auto configuration

IPv6 is gebouwd dat het altijd werkt. Iedereen host geeft al zijn interfaces automatisch een link-local adres, dit kan niet gerouteerd worden.
Een link local adres begint met fe80, het wordt gebruikt voor dhcp en autoconfiguratie. Het adres wordt random gegenereerd, en gecontroleerd of het al bestaat.
IPv6 kent geen broadcasts dus de host zal via multicast en zijn link-local adres een verzoek doen voor een Router Advertisement (RA). Een Router (Of een machine die zich als router voordoet !!) zal een RA terug sturen met een of meerdere IP adressen.
Wat meer adressen betreft, het is mogelijk om op een intern netwerk adresreeksen te gebruien die niet op internet gerouteerd worden en alleen de servers die via internet benaderd moeten worden een extra publiek adres geven. Maar het hele netwerk voorzien van publieke reeksen is ook een optie. Het risico om per ongeluk zaken open te zetten vanaf internet is dan wel groter dan met IP4 omdat dan ook een NAT transatie op de firewall nodig is.
Een router kan trouwens ook een dhcp request via een dhcp server een adres opvragen ipv deze zelf uit te delen. Bij een organisatie is het beter beheersbaar als adressen via DNS en DHCP beheerd zijn.


Website door Wouter Barendsen, 2005-2024