ignorar anúncios do roteador ipv6 para endereços estáticos com interfaces ligadas

3

Preciso atribuir endereços IPv6 estáticos (não usar endereços configurados automaticamente e ignorar propagandas de roteadores). Isso pode ser feito da seguinte maneira para uma interface padrão como eth0

iface eth0 inet6 static
  address myprefix:mysubnet::myip
  gateway myprefix:mysubnet::mygatewayip
 netmask 64
 pre-up /sbin/sysctl -q -w net.ipv6.conf.$IFACE.autoconf=0
 pre-up /sbin/sysctl -q -w net.ipv6.conf.$IFACE.accept_ra=0

No entanto, como isso pode ser feito para interfaces ligadas? usar a interface "all" não funciona.

O sistema é Ubuntu 10.04, 2.6.24-24-server. (12,04 parece ser o mesmo).

Se alguém usar o comando sysctl acima para o bond0, a rede trava na inicialização, porque / proc / sys / net / ipv6 / conf / bond0 ainda não existe e não pode ser gravado.

Uma vez que o sistema inicializou / proc / sys / net / ipv6 / conf / bond0 existe, então uma solução após a inicialização é adicionar o seguinte em /etc/rc.local:

 /sbin/sysctl -q -w net.ipv6.conf.bond0.autoconf=0
 /sbin/sysctl -q -w net.ipv6.conf.bond0.accept_ra=0
 /etc/init.d/networking restart

e isso tem o efeito desejado, o endereço autoconfig v6 desaparece. Parece um pouco de truque, existem soluções melhores?

boran
fonte

Respostas:

0

Você tentou

iface bond0 inet6 static
    address myprefix:mysubnet::myip
    gateway myprefix:mysubnet::mygatewayip
    netmask 64

    post-up /sbin/sysctl -q -w net.ipv6.conf.bond0.autoconf=0
    post-up /sbin/sysctl -q -w net.ipv6.conf.bond0.accept_ra=0

Se isso não funcionar, eu provavelmente tentaria com um script em /etc/network/if-up.d/

andrekeller
fonte