Con l’esaurimento dello spazio IPv4, IPv6 non è più una curiosità accademica ma un requisito operativo. Un indirizzo IPv6 è lungo 128 bit, rappresentato come otto gruppi (hextet) di 4 cifre esadecimali separati da due punti, per un totale di 32 caratteri esadecimali. Comprendere formato, abbreviazione e tipologie è centrale nell’esame CCNA.

Formato e regole di abbreviazione

Un indirizzo completo come 2001:0db8:0000:0000:0000:ff00:0042:8329 può essere accorciato con due regole:

  • Regola 1 – zeri iniziali: in ogni hextet si omettono gli zeri a sinistra. 00ffff, 004242, 00000.
  • Regola 2 – doppio due punti (::): una sequenza contigua di hextet a zero si sostituisce con ::, una sola volta per indirizzo. Usarlo due volte renderebbe ambiguo il numero di zeri da ripristinare.

L’indirizzo diventa quindi 2001:db8::ff00:42:8329. Per espandere, si sostituisce :: con tanti hextet 0000 quanti servono per tornare a otto gruppi, poi si reintegrano gli zeri iniziali.

Tipi di indirizzo e prefissi chiave

Tipo Prefisso Scopo
Global Unicast (GUA) 2000::/3 Instradabile su Internet (range 2000–3FFF)
Link-Local (LLA) FE80::/10 Comunicazione sul singolo link, mai instradata
Unique Local (ULA) FC00::/7 (in pratica FD00::/8) Privato interno, non instradato su Internet
Multicast FF00::/8 Uno-a-molti; sostituisce il broadcast
Anycast (usa spazio unicast) Consegnato al nodo più vicino tra più host
Loopback ::1/128 Equivalente a 127.0.0.1
Unspecified ::/128 Sorgente non ancora assegnata

In IPv6 non esiste il broadcast: il suo ruolo è coperto dal multicast. Indirizzi notevoli: all-nodes FF02::1, all-routers FF02::2, solicited-node FF02::1:FFxx:xxxx (usato da NDP). Ogni interfaccia genera automaticamente un link-local all’attivazione di IPv6: è indispensabile per NDP e come next-hop nei protocolli di routing.

EUI-64 e SLAAC

Un indirizzo GUA/ULA si compone di prefisso (di norma /64) + Interface ID (64 bit). L’Interface ID può essere formato con EUI-64 a partire dal MAC a 48 bit:

  1. si divide il MAC in due metà e si inserisce FFFE al centro;
  2. si inverte il settimo bit (U/L) del primo byte.

Esempio: MAC 00:1A:2B:3C:4D:5E → Interface ID 021A:2BFF:FE3C:4D5E (il primo byte 00 diventa 02).

Con SLAAC (Stateless Address Autoconfiguration) l’host apprende prefisso e lunghezza dal messaggio Router Advertisement (RA) e costruisce da sé l’Interface ID (via EUI-64 o valore casuale per privacy). SLAAC non fornisce l’indirizzo del DNS di default: per quello serve o l’opzione RDNSS nell’RA o un DHCPv6 stateless.

Statico, SLAAC e DHCPv6 a confronto

  • Statico: ipv6 address 2001:db8:0:1::1/64 sull’interfaccia; controllo totale, ideale per router e server.
  • SLAAC: l’host si autoconfigura dagli RA; nessun server tiene traccia delle assegnazioni (stateless).
  • DHCPv6 stateful: un server assegna indirizzo e opzioni tenendone traccia, analogamente a DHCPv4.

I flag nell’RA governano il comportamento del client: A (Autonomous → usa SLAAC), M (Managed → indirizzo da DHCPv6 stateful), O (Other → altre opzioni, es. DNS, da DHCPv6 stateless).

NDP al posto di ARP

NDP (Neighbor Discovery Protocol), basato su ICMPv6, sostituisce ARP e altre funzioni:

  • NS/NA (Neighbor Solicitation/Advertisement): risoluzione L3→L2 (il ruolo di ARP) e verifica di raggiungibilità; usa l’indirizzo solicited-node multicast invece del broadcast.
  • RS/RA (Router Solicitation/Advertisement): scoperta dei router e dei prefissi per SLAAC.
  • DAD (Duplicate Address Detection): verifica che un indirizzo non sia già in uso prima di adottarlo.

Non esiste più il broadcast ARP: la richiesta viene inviata solo agli host che condividono gli ultimi 24 bit dell’indirizzo, riducendo il traffico.

Trappole tipiche d’esame

  • Prefisso da riconoscere → tipo: un indirizzo che inizia con FE80 è link-local (FE80::/10), non global; se inizia con FF è multicast; 2000::/3 copre le GUA (2000–3FFF).
  • Doppio :: in un indirizzo → invalido: il compattamento con :: è ammesso una sola volta; qualsiasi indirizzo con due :: va scartato come errato.
  • SLAAC e DNS → serve DHCPv6: se lo scenario chiede l’indirizzo del DNS e usa solo SLAAC, la risposta corretta è DHCPv6 (stateless, flag O), perché SLAAC da solo non lo distribuisce.
  • Bit U/L in EUI-64 → primo byte cambia: ricordati di invertire il settimo bit; un MAC che inizia con 00 produce un Interface ID che inizia con 02.
  • Manca la connettività locale ma il link-local c’è → normale: l’assenza di un GUA non impedisce NDP e routing; il link-local è auto-generato e sufficiente come next-hop, quindi non è di per sé un guasto.