O trabalho de roteamento de múltiplos caminhos de custo igual do IPv6 no Linux Kernels?

2

O objetivo final é obter o balanceamento de carga do ipv6 udp por pacote, com vários servidores com o mesmo / 128 conjunto na interface do lo. Para começar, apenas tentando fazê-lo funcionar com rotas estáticas, comece a explorar o BGP com Quagga ou algum pacote semelhante. Isso tem que ser feito em um ambiente 100% virtual.

Da minha pesquisa, parece que as notas de lançamento dizem que foram adicionadas ao redor do Linux Kernel 3.6. Mas não consegui configurar uma demonstração bem-sucedida dessa funcionalidade.

Usando o comando ip, devo adicionar várias rotas à mesma sub-rede IPv6 com pesos iguais. Por exemplo: ip -6 route add badd:badd:badd:1::1/128 nexthop via badd:badd:badd:2::1 nexthop via badd:badd:badd:2::2

Meu servidor está conectado ao badd: badd: badd: 2 :: / 64 e pode alcançar os dois badd: badd: badd: 2 :: 1 e badd: badd: badd: 2 :: 2. Os outros dois servidores têm badd: badd: badd: 1 :: 1/128 na interface lo. O que eu vejo acontece toda vez que os pacotes são roteados apenas pela última entrada na tabela de rotas. Se eu duplicar essa configuração com o IPv4, vejo pacotes encaminharem através de ambas as entradas na tabela, trocando todos os outros pacotes.

Eu tentei com vários kernels 3.10, 4.4, 4.6, mas recebi o mesmo resultado em cada um. Estou fazendo algo errado ou ainda não é suportado? Obrigado!

    
por NeedISayMore4 15.08.2016 / 19:16

1 resposta

0

Você pode tentar duas coisas:

  1. Configure uma interface diferente para cada um dos nexthops, para que seu comando ip mude para: ip -6 route add badd:badd:badd:1::1/128 nexthop via badd:badd:badd:2::1 dev eth0 ... dev eth1
  2. Tente os Endereços Anycast do Roteador de Sub-rede: Link , que você pode desativar no roteador com ip -6 route del badd:badd:badd:2:: table local
por 14.05.2017 / 11:37