Ho sempre più frequente la richiesta da parte di conoscenti ed amici di spiegare la procedura per disattivare il protocollo IpV6 sulle proprie macchine. I motivi sono i più disparati, da spamassassin che fa i capricci con spamd perché vede il protocollo attivo ma non configurato, a programmi che proprio non gestiscono il protocollo. Allora per non stare a rispiegare ogni volta come fare creo questo post così almeno chiunque potrà leggerlo e provvedere in proprio.
Fondamentalmente questa è la procedura per le macchine Debian e tutte le sue derivate, tra le più note: Ubuntu, LinuxMint etc etc.
Ci sono due modi, io di solito consiglio la prima, perché la più pulita.
Primo Metodo
Editiamo il file di configurazione di default di grub con il nostro editor abituale:
sudo vi /etc/default/grub
e cerchiamo la variabile GRUB_CMDLINE_LINUX. Di solito questa variabile è settata a zero in questo modo GRUB_CMDLINE_LINUX=’’ Modifichiamo il contenuto di questa variabile in questo modo: GRUB_CMDLINE_LINUX=’ipv6.disable=1’. Se la variabile dovesse contenere altre info non facciamo che accodare ipv6.disable=1 al contenuto già esistente dividendolo dal contento precedente con uno spazio. Salviamo il file e non scordiamoci di eseguire
sudo update-grub2
per rendere effettiva la modifica. Al prossimo riavvio il protocollo IpV6 non sarà più operativo.
Secondo Metodo
Questo secondo metodo è utile se serve disabilitare il protocollo IpV6 senza la necessità di dover riavviare il server.
Editiamo il file /etc/sysctl.conf con il nostro editor preferito:
sudo vi /etc/sysctl.conf
e, se non presenti, aggiungiamo queste righe in fondo al file:
# IPv6 disabled
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Nel caso le variabili fossero già presenti con un valore assegnato a zero modifichiamo affinché abbiano tute e tre valore 1
Salvate il file ed uscite. A questo punto per rendere effettiva la modifica senza riavviare il server date il seguente comando:
sudo sysctl -p
Per essere certi che la modifica sia andata a buon fine eseguite un comando ifconfig e verificate che non sia presente nessuna definizione inet6 e/o indirizzo nel formato IpV6.
Qui potete vedere un esempio di definizione con IpV6 attivo:
eth0 Link encap:Ethernet HWaddr 00:1c:c0:f8:79:ee
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::21c:c0ff:fef8:79ee/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Qui stessa definizione ma dopo aver eseguito il secondo metodo:
eth0 Link encap:Ethernet HWaddr 08:00:27:5f:28:8b
inet addr:192.168.1.3 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1346 errors:0 dropped:0 overruns:0 frame:0
TX packets:965 errors:0 dropped:0 overruns:0 carrier:0
Come potete vedere nel secondo ifconfig è sparita la definizione di inet6 ed il reativo indirizzo IpV6
Buon lavoro.
JC
Quest’opera è distribuita con Licenza Creative Commons Attribuzione – Non commerciale – Condividi allo stesso modo 4.0 Internazionale.