La configurazione automatica può essere disabilitata temporaneamente per eth1 con:
sudo sysctl -w net.ipv6.conf.eth1.autoconf=0
sudo sysctl -w net.ipv6.conf.eth1.accept_ra=0
o per tutte le interfacce con:
sudo sysctl -w net.ipv6.conf.all.autoconf=0
sudo sysctl -w net.ipv6.conf.all.accept_ra=0
La riattivazione funziona utilizzando 1 invece di 0 nella chiamata.
La disabilitazione permanente può essere eseguita con una voce in /etc/sysctl.conf
.Su Debian Etch (probabilmente anche su versioni più recenti), senza impostare accept_ra
, il sistema si configurerà automaticamente utilizzando l'indirizzo locale del collegamento (fe80..
)
Come menzionato di seguito da Gart, la configurazione automatica dell'indirizzo e il rilevamento del router saranno disabilitati se l'host stesso è un router e accept_ra
non è 2
, ovvero
net.ipv6.conf.<iface|all|default>.forwarding=1
e
net.ipv6.conf.<iface|all|default>.accept_ra=0
o net.ipv6.conf.<iface|all|default>.accept_ra=1
.
dove iface
è la tua interfaccia
net.ipv6.conf.all.accept_ra=0 sopra non dovrebbe essere fatto, in quanto le RA sono necessarie per l'indicazione di on-link e off-link per il prefisso (come da RFC5942), così come la configurazione automatica di una serie di altri parametri, come MTU, timeout Neighbor Discovery ecc.
Se vuoi disabilitare l'autoconfigurazione, imposta autoconf sysctl su off come sopra, o disattiva A (bit di autoconfigurazione) in Prefix Information Option (PIO) nella RA.
Il sysctl
soluzione non ha funzionato per noi su Ubuntu 18.04 Bionic. L'abbiamo risolto con:
Modifica /etc/netplan/01-netcfg.yaml
, configura:
network:
...
ethernets:
eth0:
...
dhcp6: no
accept-ra: no
Potrebbe essere necessario utilizzare il nome dell'interfaccia invece di eth0
.Dopo aver salvato il file eseguire:
netplan apply
o reboot
Se hai già ricevuto un IP IPv6 dall'autoconfigurazione e vuoi rimuoverlo senza riavviare, puoi eseguire:
ip -6 addr del 1111:2222:1:0:aaaa:bbbb:cccc:dddd/64 dev eth0
Ovviamente devi sostituire l'IP e il dispositivo in questo comando.