Il post descrive la procedura per disabilitare IPv6 su CentOS/RHEL 7. Esistono 2 modi per farlo:
1. Disabilita IPv6 nel modulo del kernel (richiede il riavvio)
2. Disabilita IPv6 utilizzando le impostazioni sysctl (non è richiesto il riavvio)
Per verificare se IPv6 è abilitato o meno, eseguire :
# ifconfig -a | grep inet6 inet6 fe80::211:aff:fe6a:9de4 prefixlen 64 scopeid 0x20 inet6 ::1 prefixlen 128 scopeid 0x10[host]
1. Disabilita IPv6 nel modulo del kernel (richiede il riavvio)
1. Modifica /etc/default/grub e aggiungi ipv6.disable=1 nella riga GRUB_CMDLINE_LINUX, ad esempio:
# cat /etc/default/grub GRUB_TIMEOUT=5 GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="ipv6.disable=1 crashkernel=auto rhgb quiet" GRUB_DISABLE_RECOVERY="true"
2. Rigenera un file di configurazione di GRUB e sovrascrivi quello esistente:
# grub2-mkconfig -o /boot/grub2/grub.cfg
3. Riavvia il sistema e verifica che non sia presente alcuna riga "inet6" nell'output del comando "ip addr show".
# shutdown -r now
# ip addr show | grep net6
2. Disabilita IPv6 utilizzando le impostazioni sysctl (non è richiesto il riavvio)
1. Aggiungi le righe sottostanti in /etc/sysctl.conf:
net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1NOTA:per disabilitare IPv6 su una singola interfaccia, aggiungi le righe seguenti a /etc/sysctl.conf :
net.ipv6.conf.[interface].disable_ipv6 =1 ### inserisci il nome dell'interfaccia qui [interfaccia]
net.ipv6.conf.default.disable_ipv6 =1
2. Per rendere effettive le impostazioni, eseguire :
# sysctl -pNOTA :assicurati che il file /etc/ssh/sshd_config contenga la riga AddressFamily inet per evitare di interrompere SSH Xforwarding se si utilizza il metodo sysctl
3. Aggiungi la riga AddressFamily a sshd_config :
# vi /etc/ssh/sshd_config .... AddressFamily inet ....
Riavvia sshd per rendere effettive le modifiche :
# systemctl restart sshdCentOS / RHEL 6:come disabilitare IPv6