Vários roteadores IPv6 na mesma rede

1

Eu tenho dois ISPs para minha rede doméstica. Eles estão conectados a dois roteadores separados. Se eu executar o radvd e o dhcpd em ambos os roteadores ao mesmo tempo, não receberei conectividade IPv6. Minha conectividade IPv6 só funciona se apenas um dos roteadores estiver executando o radvd e o dhcpd. Por que esse é o caso?

Por outro lado, para o IPv4, executo o dhcpd em ambos os roteadores, e os outros computadores da rede selecionam oportunisticamente as configurações de IP e gateway com base em qual roteador respondeu primeiro.

    
por Fufu Fang 17.09.2018 / 15:27

1 resposta

0

IPv4

O motivo pelo qual o IPv4 se comporta da maneira como você observou é que ele não era originalmente destinado a suportar mais de um endereço IP em uma interface. Portanto, o cliente DHCP apenas aguardará o primeiro servidor DHCP enviar uma oferta e o cliente presumirá que esse é o único servidor DHCP.

IPv6

No entanto, o IPv6 pretende suportar muitos endereços numa interface, pelo que a máquina pode aceitar anúncios de roteadores de vários roteadores e atribuir vários endereços IP à interface.

No entanto, a menos que você comece a usar configurações sofisticadas, como roteamento de políticas, você terá uma tabela de roteamento que considera apenas o endereço de destino para as decisões de roteamento e terá apenas uma rota padrão apontando para um dos dois roteadores.

Portanto, você pode esperar que os pacotes sejam roteados para o mesmo dos dois roteadores, independentemente de qual endereço de origem o cliente esteja usando. A escolha do endereço de origem considerará vários fatores, incluindo se o endereço de origem será um daqueles atribuídos à interface pela qual o pacote será encaminhado. Isso, no entanto, não ajuda aqui, já que o cliente usará a mesma interface para alcançar os dois roteadores.

Assim, é possível que a máquina cliente acabe escolhendo um endereço IP de origem no intervalo atribuído por um roteador, mas enviará os pacotes ao outro roteador. Isso teria funcionado se não fosse por filtros de pacotes no caminho. Mesmo que você consiga encontrar uma solução para esses filtros de pacotes, ainda assim não é uma configuração ideal, já que você não teria uma configuração redundante quando o tráfego de saída passa por um roteador e o tráfego de entrada passa pelo outro.

Não há informações suficientes em sua pergunta para dizer com certeza que é por isso que ele falha para você. No entanto, dada a informação que você forneceu, parece a explicação mais provável.

Solução simples

A curto prazo, a solução mais simples que posso sugerir para configurar essa configuração e redundância é configurar um dos roteadores como somente IPv4 e o outro como somente IPv6.

Os clientes que implementam o RFC 6555 farão o failover automaticamente entre o IPv4 e o IPv6, portanto, com o IPv4 e o IPv6 passando por diferentes roteadores, haverá failover entre esses dois roteadores.

Isso funcionará para alcançar serviços que são dual stack. Você pode obter o mesmo failover para serviços somente IPv4 usando DNS64 + NAT64. Se o seu ISP não fornecer NAT64 para você, você poderá configurar o NAT64 no roteador escolhido para a conectividade IPv6.

Solução a longo prazo

Em um longo prazo, você supostamente deseja redundância mesmo ao acessar serviços somente IPv6. A melhor maneira de conseguir isso é se a máquina cliente escolher automaticamente entre os dois roteadores. Isso significa que uma lógica semelhante à RFC 6555 precisa escolher entre duas conexões IPv6.

Eu não vi software suportando isso hoje. Algumas partes podem ser feitas com o roteamento de políticas, mas isso significa que você precisa substituir as tabelas de roteamento produzidas pela configuração automática em cada máquina cliente. Uma solução mais simples e um pouco pior é apenas configurar o roteamento de políticas nos roteadores ao custo de ter o tráfego de saída sendo enviado do cliente para o roteador errado e, em seguida, fazer um salto extra entre os dois roteadores.

Mas, para obter o benefício completo, você precisa de um software que faça tudo isso:

  • Ao receber anúncios de roteadores de dois roteadores, configure o roteamento de políticas (ou equivalente) de forma que consulte o endereço IP de origem para decidir qual dos dois roteadores usar como gateway para a rota padrão.
  • Quando os aplicativos fazem pesquisas de DNS, enviam a solicitação para dois recursores DNS (um de cada anúncio de roteador) e garantem que o IP de origem de cada solicitação DNS seja do mesmo anúncio de roteador que o IP de destino.
  • Ao receber uma resposta de DNS vinculada ao mesmo IP local, a resposta foi enviada e tentou se conectar a um dos endereços na resposta.
  • Use a lógica equivalente do RFC 6555 para escolher entre duas conexões abertas com diferentes pares de endereços IPv6 de origem e destino.
por 17.09.2018 / 20:29