Como acionar a solicitação do roteador IPv6 na porta do escravo da ponte que entra no estado RUNNING?

2

Eu tenho um pequeno sistema Linux que executa uma ponte br0 entre suas interfaces de rede com fio eth0 e sem fio (modo AP) wlan0 .

Para br0 , habilitei a autoconfiguração do IPv6 (sem estado); isso é realmente tratado por dhcpcd . Observe que dhcpcd está configurado para fazer autoconfiguração stateless , sem DHCPv6 com estado em qualquer lugar para ser visto.

Como meu sistema é uma espécie de ferramenta de diagnóstico para IPv6, eu o alterno regularmente entre diferentes redes IPv6 (sub-redes): puxe o cabo no switch, conecte-o a outra porta.

O problema com essa configuração agora é: eth0 é uma interface escrava para a ponte br0 . Quando eu conecto o cabo em eth0 (e o switch), isso agora não aciona nenhuma solicitação de roteador IPv6 . A razão parece ser que br0 nunca vê nenhuma transição para ou de RUNNING com a exceção quando é inicializada inicialmente. Reiniciar br0 não é uma opção.

Como posso configurar br0 ou eth0 para iniciar as solicitações de roteador IPv6 quando eth0 entra no estado RUNNING, ou seja, quando eu conecto um cabo Ethernet (em ambas termina, claro)?

    
por TheDiveO 26.07.2017 / 20:57

1 resposta

1

A única "solução", ou melhor, hack, que encontrei até agora é ativar o SLAAC na interface de rede da porta eth0 bridge, usando /etc/network/interfaces . Para isso, adicione:

iface eth0 inet6 auto

Como isso usa /etc/network/interface , ele irá configurar o kernel do Linux. Observe que estou não usando dhcpcd aqui e, portanto, dhcpcd precisa ser informado para manter os dedos fora de eth0 ; isso é necessário para interfaces de rede de porta de ponte de qualquer maneira. Então, /etc/dhcpcd.conf tem que conter:

denyinterfaces eth0

Nesta configuração, o kernel do Linux emitirá solicitações de roteador RS automaticamente quando eth0 estiver online ("carrier"). E isso é o que é necessário. Os anúncios de roteador RA resultantes são (também) multicast, assim também configurando automaticamente a interface de ponte br0 como pretendido. Que eth0 também seja autoconfigurado é apenas um subproduto.

    
por 02.08.2017 / 22:16