Disabilitare IPv6

Da Guide@Debianizzati.Org.
Versione del 3 dic 2015 alle 12:03 di HAL 9000 (discussione | contributi) (aggiunti box di avvertenze, vedere la pagina di discussione)
Vai alla navigazione Vai alla ricerca
Edit-clear-history.png Attenzione. Questa guida è da considerarsi abbandonata, per via del tempo trascorso dall'ultima verifica.

Potrà essere resa obsoleta, previa segnalazione sul forum, se nessuno si propone per l'adozione.


Debian-swirl.png Versioni Compatibili

Debian 6 "squeeze"
Debian 7 "wheezy"
Debian 8 "jessie"
Warning.png ATTENZIONE
Alcuni programmi potrebbero smettere di funzionare, se comunicano con un demone locale tramite l'interfaccia di loopback e non sono predisposti per utilizzare IPv4 invece di IPv6.


Come disabilitare IPv6 su Debian

La versione IPv6 del protocollo IP è supportata di default da Debian.
Però quando IPv6 è attivo, ma la nostra linea fornisce solo connettività IPv4, si rischiano fastidiosi rallentamenti connettendosi a host che hanno sia un indirizzo IPv6 che un indirizzo IPv4 (es ftp.it.debian.org). Questo succede perché la connessione IPv4 inizia solo dopo che è andata in timeout la connessione IPv6.

Info.png Gestori di rete
In caso siano presenti gestori di rete, potrebbe essere necessario disabilitare la gestione di IPv6, lasciandola al kernel. Per esempio con Network Manager è necessario specificare esplicitamente di ignorare IPv6, in aggiunta alle configurazioni contenute in questa guida.


Fino al kernel 2.6.28

Per disabilitare la versione 6 del protocollo IP si agisca modificando il file /etc/modprobe.d/aliases, cercando la riga:

# alias net-pf-10 ipv6

modificandola con:

# alias net-pf-10 ipv6
alias net-pf-10 off
alias ipv6 off

Mettere poi in blacklist il modulo IPv6 aggiungendo, in fondo al file /etc/modprobe.d/blacklist, la riga:

blacklist ipv6

Dal kernel 2.6.28 in poi

Con i kernel 2.6.28 o superiori le precedenti istruzioni non sono più sufficienti, in quanto il modulo IPv6 è stato inserito direttamente nel kernel.

Grub

Per disabilitare il modulo è necessario, in fase di avvio, passare al kernel l'opzione ipv6.disable=1.
Le operazioni da compiere sono diverse a seconda che si stia utilizzando Grub1 o il più nuovo Grub2:

  • Per Grub1 editare il file /boot/grub/menu.lst cercando la riga:
# defoptions=

aggiungendoci il parametro, come nell'esempio:

# defoptions=ipv6.disable=1 quiet
  • Per Grub2 editare il file /etc/default/grub cercando la riga:
GRUB_CMDLINE_LINUX

e modificandola in:

GRUB_CMDLINE_LINUX="ipv6.disable=1"

In entrambi i casi è necessario aggiornare il menù di Grub per applicare le modifiche, lanciando il comando:

# update-grub

Sysctl

È possibile disabilitare IPv6 anche agendo attraverso un file di configurazione personalizzato di sysctl.
Creare il file /etc/sysctl.d/noipv6.conf con il seguente contenuto:

net.ipv6.conf.all.disable_ipv6=1

Per completare l'operazione si riavvii la macchina. Se non si intende riavviare subito la macchina (magari perché è un server), è possibile disabilitare temporaneamente l'IPv6 come segue:

# ifconfig <interface> del <ipv6 address>

I parametri <interface> e <ipv6 address> possono essere ricavati con il comando:

# ifconfig -a

Per evitare eventuali messaggi di warning all'avvio del sistema editare il file /etc/sysctl.d/bindv6only.conf, commentando la riga:

# net.ipv6.bindv6only=1




Guida scritta da: Ferdybassi Swirl-auth40.png Debianized 40%
Estesa da:
matt
Verificata da:
HAL 9000 13:18, 22 mag 2015 (CEST)

Verificare ed estendere la guida | Cos'è una guida Debianized