Como desativar a autoconfiguração no IPv6 no Linux?

20

Como posso desabilitar permanentemente a autoconfiguração de IPv6 no Linux? Quando tento excluir manualmente um endereço de uma interface com:

ip -6 addr del 2001:0db8:85a3:0000:0000:8a2e:0370:7334/64 dev eth1

Ele reaparecerá alguns segundos depois, eu quero que ele desapareça permanentemente, mas sem desabilitar o IPv6.

    
por Grumbel 31.08.2009 / 23:11

4 respostas

20

A configuração automática pode ser desativada temporária para eth1 com:

sudo sysctl -w net.ipv6.conf.eth1.autoconf=0 e sudo sysctl -w net.ipv6.conf.eth1.accept_ra=0

ou para todas as interfaces com:

sudo sysctl -w net.ipv6.conf.all.autoconf=0 e sudo sysctl -w net.ipv6.conf.all.accept_ra=0

A reativação funciona usando 1 em vez de 0 na chamada.

Desativá-lo permanentemente pode ser feito com uma entrada para /etc/sysctl.conf . No Debian Etch (provavelmente no mais recente também), sem definir o accept_ra , o sistema irá se autoconfigurar usando o endereço local do Link ( fe80.. )

Como o Gart mencionou abaixo, a configuração automática do endereço e a descoberta do roteador serão desativadas se o próprio host for um roteador e accept_ra não for 2 , ou seja,

net.ipv6.conf.<iface|all|default>.forwarding=1

e

net.ipv6.conf.<iface|all|default>.accept_ra=0 ou net.ipv6.conf.<iface|all|default>.accept_ra=1 .

onde iface é sua interface

    
por 31.08.2009 / 23:40
4

net.ipv6.conf.all.accept_ra = 0 acima não deve ser feito, pois os RAs são necessários para a indicação de link no pré-link e off-link (conforme RFC5942), assim como a configuração automatizada de um prefixo número de outros parâmetros, como MTU, tempos limite de descoberta do vizinho, etc.

Se você quiser desabilitar a configuração automática, defina o sysctl do autoconf como acima, ou desative o A (bit de configuração automática) na opção de informação de prefixo (PIO) no RA.

    
por 22.08.2013 / 14:06
3
sudo sysctl -w net.ipv6.conf.all.autoconf=0

Isso não funcionou para mim no Debian Wheezy. Depois de examinar o /etc/sysctl.conf eu precisei usar

sudo sysctl -w net.ipv6.conf.default.autoconf=0
    
por 07.01.2015 / 10:38
2

A solução sysctl não funcionou para nós no Ubuntu 18.04 Bionic. Nós resolvemos isso por:

Editando /etc/netplan/01-netcfg.yaml , configure:

network:
  ...
  ethernets:
    eth0:
      ...
      dhcp6: no
      accept-ra: no

Talvez seja necessário usar o nome da interface em vez de eth0 . Depois de salvar o arquivo, execute:

netplan apply ou reboot

Se você já recebeu um IP IPv6 da autoconfiguração e deseja removê-lo sem reinicializar, pode executar:

ip -6 addr del 1111:2222:1:0:aaaa:bbbb:cccc:dddd/64 dev eth0 

É claro que você precisa substituir o IP e o dispositivo neste comando.

    
por 24.05.2018 / 11:28