Como desabilitar o IPv6 permanentemente?

41

Como podemos desativar todo o sistema IPv6 via comandos de terminal?

Li a edição /etc/modprobe.d/aliases e substituindo:

alias net-pf-10 ipv6

com:

alias net-pf-10 off
alias ipv6 off

É seguro aplicar e desativar permanentemente o ipv6 nas reinicializações?

    
por Tinfoilhats 18.06.2013 / 01:55

5 respostas

54

Eu desabilitei o IPv6 com sucesso uma vez colocando as seguintes linhas em /etc/sysctl.conf:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
    
por Eric Carvalho 18.06.2013 / 02:01
41

Se o seu PC não carregar /etc/sysctl.conf no momento da inicialização (que é o caso para mim), será necessário desativar o IPv6 do grub. O kernel do Linux tem uma opção de inicialização chamada "ipv6.disable = 1" que desativa o IPv6 desde a inicialização.

Para editar as opções de inicialização, edite "/ etc / default / grub" com qualquer editor de texto como usuário root:

sudo nano /etc/default/grub

Encontre a linha que contém "GRUB_CMDLINE_LINUX_DEFAULT":

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Adicione "ipv6.disable = 1" à opção de inicialização e salve seu arquivo grub:

GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"

Por fim, atualize o grub:

sudo update-grub
    
por NullNoname 27.08.2013 / 05:36
4

A resposta de Carvalho, incluindo o comentário sobre ter que executar sudo sysctl -P , me ajudou mais.

No entanto, no meu caso, pelo menos:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.<mydevice>.disable_ipv6 = 1

e parece que a segunda linha era necessária.

Talvez isso tenha a ver com o fato de que estou usando o TP-Link Archer T2U, para o qual precisei criar um driver personalizado a partir do código-fonte. Minha suposição é que, como resultado, <mydevice> não conta como um dos " all ". Portanto, em poucas palavras, se você tiver adicionado um driver de rede (personalizado) personalizado, o net.ipv6.conf.all.disable_ipv6 = 1 poderá não ser suficiente para desabilitar a rede IPv6.

Tenho que admitir, porém, que eu não tentei a linha | net.ipv6.conf.default.disable_ipv6 = 1

    
por polynomial_donut 10.09.2015 / 01:19
4

Veja como verificar se o ipv6 está ativado no seu computador

test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"

Se você vir

Running kernel is IPv6 ready

está ativado.

Se você não vir saída, não é.

Para desativar o ipv6, se as outras respostas nesta página não funcionarem para você, blacklist ipv6 em conjunto. Para fazer isso, use o seguinte comando:

echo 'blacklist ipv6' | sudo tee -a '/etc/modprobe.d/blacklist.local' >/dev/null 

Além disso, isso pode ajudar também:

echo 'install ipv6 /bin/true' | sudo tee -a '/etc/modprobe.d/blacklist.local' >/dev/null

Reinicialize para que as alterações entrem em vigor. Para verificar se está ativado após a inicialização, execute este comando novamente:

test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"

Não deve haver saída.

Clique aqui para obter informações sobre como desabilitar o IPV6 na inicialização.

    
por mchid 18.07.2014 / 15:18
2

Se você está usando uma versão moderna (estou no 16.04 LTS) do Ubuntu, então você pode usar essa solução:

Crie /etc/sysctl.d/60-ipv6-disable.conf contendo o seguinte texto:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

Executar service procps start

    
por user10550 19.09.2017 / 16:10