Si faccia attenzione al fatto che il supporto per i tunnel 6to4 non è presente sui kernel vanilla della serie 2.2.x (si veda Controllo del sistema/kernel per maggiori informazioni). Si noti anche che la lunghezza del prefisso per un indirizzo 6to4 è 16 poiché da un punto di vista della rete, tutti gli host abilitati 6to4 sono sullo stesso livello 2.
Prima di tutto si deve calcolare il proprio prefisso 6to4, usando il proprio indirizzo locale IPv4 instradabile (pubblico) (se l'host non ha questo indirizzo IPv4 pubblico, in casi speciali è possibile fare il NAT sui gateway di confine):
Assumendo che il proprio indirizzo IPv4 sia
1.2.3.4 |
il prefisso 6to4 generato sarà
2002:0102:0304:: |
I gateway 6to4 locali dovrebbero sempre avere il suffisso "::1", perciò il proprio indirizzo locale 6to4 sarà
2002:0102:0304::1 |
Si usi per esempio il seguente comando per la generazione automatica:
ipv4="1.2.3.4"; printf "2002:%02x%02x:%02x%02x::1" `echo $ipv4 | tr "." " "` |
Attualmente ci sono due modi per configurare un tunneling 6to4.
Questo è attualmente il modo raccomandato (deve essere specificato un TTL poiché il valore di default è 0).
Creare un nuovo dispositivo tunnel
# /sbin/ip tunnel add tun6to4 mode sit ttl <ttldefault> remote any local <localipv4address> |
Attivare l'interfaccia
# /sbin/ip link set dev tun6to4 up |
Aggiungere un indirizzo locale 6to4 all'interfaccia (nota: è importante la lunghezza 16 del prefisso!)
# /sbin/ip -6 addr add <local6to4address>/16 dev tun6to4 |
Aggiungere un instradamento (di default) alla rete IPv6 globale utilizzando gli indirizzi anycast IPv4 all-6to4-routers
# /sbin/ip -6 route add 2000::/3 via ::192.88.99.1 dev tun6to4 metric 1 |
È stato segnalato che alcune versioni di "ip" (per es. SuSE Linux 9.0) non supportano come gateway indirizzi IPv6 compatibili IPv4, in questo caso deve essere usato il relativo indirizzo IPv6:
# /sbin/ip -6 route add 2000::/3 via 2002:c058:6301::1 dev tun6to4 metric 1 |
Questo è disapprovato poiché l'uso del dispositivo tunnel generico sit0 non permette di specificare il filtraggio per dispositivo.
Attivare l'interfaccia generica tunnel sit0
# /sbin/ifconfig sit0 up |
Aggiungere l'indirizzo locale 6to4 all'interfaccia
# /sbin/ifconfig sit0 add <local6to4address>/16 |
Aggiungere l'instradamento (di default) alla rete IPv6 globale utilizzando l'indirizzo IPv4 anycast all-6to4-relays
# /sbin/route -A inet6 add 2000::/3 gw ::192.88.99.1 dev sit0 |
Rimuovere tutti gli instradamenti attraverso questo dispositivo tunnel dedicato
# /sbin/ip -6 route flush dev tun6to4 |
Disabilitare l'interfaccia
# /sbin/ip link set dev tun6to4 down |
Rimuovere il dispositivo tunnel creato
# /sbin/ip tunnel del tun6to4 |
Rimuovere l'instradamento (di default) attraverso l'interfaccia del tunnel 6to4
# /sbin/route -A inet6 del 2000::/3 gw ::192.88.99.1 dev sit0 |
Rimuovere l'indirizzo locale 6to4 dall'interfaccia
# /sbin/ifconfig sit0 del <local6to4address>/16 |
Disabilitare il dispositivo tunnel generico (si faccia attenzione a questo, potrebbe essere ancora in uso...)
# /sbin/ifconfig sit0 down |