Melhor Multihoming Corporativo

33

Gostaria de obter algumas opiniões sobre maneiras de melhorar o design de um provedor duplo e roteador duplo BGP. Cada provedor fornece uma sub-rede pública / 24. Vou me referir aos roteadores, circuitos, sub-redes, grupos HSRP e provedores como A e B, respectivamente. A largura de banda em cada circuito é adequada para toda a carga.

Design atual

O design atual tenta obter simetria por fornecedor. Em um estado estacionário, a lógica de roteamento pretendida é que o tráfego de / para a sub-rede A transita apenas no circuito A e o tráfego de / para a sub-rede B transita apenas no circuito B. Os circuitos retornariam um ao outro em um estado com falha.

Os provedores anunciam apenas a rota padrão. O roteamento de saída envolve uma combinação de PBR e HSRP. Os roteadores não têm roteamento entre eles: sem iBGP, sem OSPF, sem roteamento estático. Em vez disso, existem dois grupos HSRP que rastreiam a rota padrão. O roteador A é primário para o grupo HSRP A e o roteador B é primário para o grupo HSRP B. Os dispositivos a jusante têm uma rota padrão apontando para o grupo HSRP A e PBR, que direciona o tráfego originado da sub-rede B para o grupo B. do HSRP. comunidades. A sub-rede A é anexada e comunicada no circuito B e a sub-rede B é anexada e transmitida no circuito A.

Vejo muito espaço para melhorias nesse design. A falta de conhecimento da topologia da Internet combinada com a afinidade do circuito elimina completamente a melhor seleção de caminho. Existem preocupações sobre a designação de camada dos fornecedores e o design foi racionalizado como fornecendo 'desempenho aceitável' e mais simples de solucionar problemas. Na verdade, o design não poderia ser mais simples. Eu demonstrei que a transição de um AS extra adiciona 6 saltos e 63ms (+ 421%) ao RTT. Eu preferiria não me contentar com aceitável.

Better Design

O design melhor fornece aos roteadores o máximo de conhecimento possível da topologia da Internet. O melhor algoritmo de caminho é deixado para determinar a lógica de roteamento de entrada e saída. Os circuitos recuariam um ao outro em um estado com falha.

Os fornecedores anunciam a exibição completa. Os roteadores executam o iBGP e o OSPF. O HSRP é eliminado. O roteamento de saída seria o melhor caminho puramente baseado em destino e o roteamento de entrada seria deixado com o melhor algoritmo de caminho e caprichos do provedor de transporte.

Agora que eu digito, parece mais simples. No mínimo, foram necessárias menos palavras para explicar. Existem preocupações com a assimetria, mas já vi muita assimetria no design atual. Eu acho que eles provavelmente são igualmente propensos a assimetria e isso realmente não me preocupa. Nunca vimos problemas como resultado. Atualmente, ele é relegado para o domínio ifs: "E se 'tivéssemos que solucionar alguma coisa?"

Estou longe da base aqui ou bati na unha na cabeça? Como outras pessoas resolveram esse problema? O que o Google faria?

Dennis Olvany
fonte
Grandes detalhes e explicações. Bem vinda!
Pandom
Tradicionalmente, "Eu gostaria de obter algumas opiniões sobre meu projeto" perguntas não são realmente grandes questões SE ... Mas isso pode ser discutido na meta
Aaron

Respostas:

16

Sim, você acertou a unha na cabeça.

Você terá assimetria no design aprimorado, mas a assimetria é um fato da vida na Internet, e não há realmente nenhuma boa razão para esperar o roteamento simétrico de / para o tráfego. Shoot, todo o conceito de roteamento de pacotes é que pacotes separados são roteados independentemente um do outro e podem seguir caminhos diferentes, mesmo pacotes indo na mesma direção.

Pessoalmente, eu detesto PBR. É uma daquelas tecnologias que, quando eu decido que é a melhor solução para o problema, paro e dou um passo para trás para ver se realmente entendo a natureza real do problema, até mesmo para descobrir qual é o problema comercial a ser resolvido. é. Quando faço isso, quase sempre acho que há uma maneira de resolver o problema sem usar uma tecnologia como essa.

Ter rotas de Internet completas em seus roteadores levará algum tempo para se acostumar, mas depois que você se acostumar, é realmente muito fácil de entender e solucionar problemas. Certamente, há menos "partes móveis" de diferentes protocolos com que se preocupar.

Você não deseja ter rotas completas de Internet no seu banco de dados OSPF, portanto, desejará anunciar um padrão via OSPF no interior da sua rede (ou talvez padrão estático ... pessoalmente, eu prefiro o padrão no OSPF). Isso direcionará o tráfego para os roteadores da Internet que falam BGP, que podem tomar a decisão mais bem informada de ter todas as rotas da Internet.

Isso dará a você um "melhor caminho baseado no destino". Ainda haverá casos em que o tráfego fará coisas que você não espera muito, então você deve se familiarizar com o processo de seleção de rotas BGP.

Jeff McAdams
fonte
Obrigado Jeff. Eu concordo com a sua disposição na PBR. Eu já o vi implementado de maneiras assustadoras. Rasguei mais PBR das redes do que gostaria de lembrar. Certa vez, gerenciei um ambiente em camadas em que o PBR foi implantado como um mecanismo de roteamento virtual com um mapa de rota exclusivo por SVI (100's). O PBR também continha cláusulas de permissão / não definido, que resultaram na troca de processos. Em cópia impressa, eram 60 páginas de configuração. Escusado será dizer que eu peguei a bola de demolição; substituiu-o por VRF.
Dennis Olvany
6

Oferecer uma abordagem diferente das demais já apresentadas, que podem ou não ser melhores do que as idéias existentes, mas principalmente através de algumas idéias extras por aí;

Eu diria que dois passos fáceis que você pode seguir para melhorar sua situação atual são os seguintes;

Etapa 1 ;

Obtenha tabelas BGP completas de ambos os provedores - Agora, você terá um roteamento de saída mais otimizado, pois fará o roteamento através do provedor de trânsito com o menor caminho AS para o seu destino. Como você disse, você pode remover o HSRP e anunciar facilmente uma rota padrão no OSPF e executar o iBGP entre seus dois roteadores de borda.

Etapa 2 ;

Configure AS prepends e comunidades etc. nos seus dois roteadores de borda para controlar o tráfego de saída granularmente conforme necessário. Portanto, o ISP B pode ter uma rota melhor para alguma sub-rede, mas você pode comprar mais trânsito do ISP A e, ao invés disso, quando via eles, e assim por diante.


Supondo que os dois / 24s que você mencionou como sendo um espaço de endereço independente do PI, os anuncie através dos dois provedores ou que ambos concordem em anunciar o mesmo espaço de endereço IP para você, agora você pode anunciar os dois prefixos para os ISPs dos dois roteadores sem prepends ou comunidades e também obtenha um melhor roteamento de entrada (é claro, a menos que você tenha alguns CDRs que precise adotar ou similares, nesse caso, poderá ajustar conforme necessário).

jwbensley
fonte
Obrigado, Javano. Acho que concordamos que as políticas de roteamento de entrada e saída são prejudiciais. Eu quero muito acabar com a PBR, o anexo e as comunidades!
Dennis Olvany
3

Comece simples e adicione complexidade somente quando necessário. Gostaria de perguntar se há necessidade de executar o OSPF nos seus roteadores de borda da Internet. Inicialize o PBR no meio-fio e use apenas na sua rede interna.

  1. Faça rotas completas na Internet se o seu roteador tiver memória, mas faça a filtragem! Atire qualquer coisa gt a / 24.
  2. Pegue uma rota padrão de A e B.
  3. É necessário executar o iBGP para permitir que seus roteadores tomem as decisões de melhor caminho, considerando todos os prefixos recebidos de A e B.
  4. Se você planeja usar os pontos A e B / 24s com os dois provedores, poderá influenciar melhor o tráfego de entrada acrescentando A / 24 na rede de B e vice-versa. Ambos / 24s devem ser anunciados! Verifique com o ISP suas comunidades para definir os prefixos para você.
  5. Use dois grupos HSRP diferentes para o tráfego de saída do firewall; você pode configurar o ECLB para compartilhar os dois roteadores. Equilíbrio de carga de custo igual .

Tudo isso pode ser simplificado se você estiver usando apenas um / 24 anunciado para A e B.

Mais tarde, examine mais complexidade para obter melhor engenharia e proteção de tráfego:

  1. Familiarize-se com as comunidades de A e B, pois você pode preferir usar mapas de rotas pares para definir o localpref para determinar quais rotas usam A vs. B.
  2. Defina uma rota padrão estática flutuante nos dois roteadores como um backup de emergência para todo o resto, caso o seu BGP exploda.

    ip route 0.0.0.0 0.0.0.0 a.b.c.d 254
    
  3. Procure maneiras mais complexas de publicidade para controlar sua política de entrada, como metade do seu espaço IP passando por A e a outra metade por B. Para um dado / 24, você pode anunciar o / 24 para A e B, mas dividi-lo em dois / 25 e anuncie os inferiores / 25 a A e os superiores / 25 a B.

  4. Use a reconfiguração suave para poder ajustar suas políticas e redefinir suavemente a sessão do BGP, para não prejudicar seus prefixos do outro lado se você redefinir (ou limpar) completamente a sessão. Alterações na política exigem uma redefinição.

generalnetworkerror
fonte
1

Então, o que eu entendo desde o início é que você realmente não precisa tomar decisões baseadas em caminhos AS para alcançar sub-redes externas e o único objetivo de homing duplo para dois ISPs é comprar redundância para acessar a Internet. Se for esse o caso, você realmente não precisa executar o BGP. Você pode simplesmente aceitar as mesmas rotas padrão que você já está recebendo do seu provedor de serviços. Agora, para o lado local da rede, execute uma única área OSPF nos roteadores que se conectam ao ISP na interface voltada para a sua LAN (não inclua a interface ISP no processo) e dependendo de quão simples o design precisa ser você pode adicionar roteadores em diferentes áreas e resumir as sub-redes nos limites da rede, mas para duas sub-redes acho que o tamanho do banco de dados OSPF ou o número de inundações LSA não é uma grande preocupação,

Em cada roteador OSPF que se conecta ao ISP, redistribua as rotas padrão aprendidas no OSPF usando uma instrução "origem de informações padrão".

Algumas vantagens:

  1. Com esse design, ao expandir a rede, você pode habilitar o BGP com os provedores de serviços e apenas aceitar a rota padrão sem tocar em nada nos dispositivos downstream. Até você verificar se está recebendo uma rota padrão do BGP, você é bom.

  2. Sempre que você precisar rotear o tráfego de um ISP para manutenção, basta remover a "informação padrão originada" abaixo do processo OSPF nesse roteador e prosseguir com a manutenção. Nada mais é necessário.

E eu concordo com a resposta anterior em que o roteamento simétrico é superestimado, prefiro a escalabilidade e a facilidade de manutenção.

Vinny
fonte
Se eu entendo os planos da @ user161, o objetivo é uma seleção de caminho de saída mais inteligente. Como você consegue isso em sua solução baseada em OSPF?
Paul Gear
Obrigado, Vinny. O failover do tráfego outobund não é um problema, mas eu não precisaria do BGP para receber o failover? Se apenas usuários acessarem o PAT na Internet, isso pode ser possível, mas esse é um ambiente de hospedagem na web.
Dennis Olvany
@ user161: Absolutamente, se precisarmos de um failover de entrada para suas sub-redes originadas, você precisará executar o BGP. Verifique com os seus ISPs se eles suportam a capacidade ORF para o peering do BGP, para que você possa anunciar sub-redes originadas localmente via BGP com um filtro de entrada nos roteadores de borda apenas para aceitar uma rota padrão e / ou selecionar algumas sub-redes dos roteadores ISP. Se o ISP não suporta ORF, então há realmente nenhuma melhores escolhas do que comprar um roteador com mais suco ..
Vinny
1

Se a tabela BGP completa é demais para você, acho que você poderia considerar apenas receber uma parte. Talvez o provedor A e B anunciem uma rota padrão e suas rotas AS locais. Você precisaria executar o iBGP internamente. Dessa forma, você teria a rota mais curta para qualquer coisa diretamente conectada aos provedores e a seguiria para rotas AS a jusante.

Kelly McDowell
fonte
Obrigado, Kelly. O melhor design executaria o iBGP. Uma atualização de hardware está solicitando a revisão da arquitetura; portanto, não estou muito preocupado com o fato de os roteadores poderem lidar com isso. A equipe de vendas diz que a transição do IOS para o JUNOS é um processo complicado. Não tenho tanta certeza de que concordo até agora.
Dennis Olvany
Eu não sei se diria que é uma calçada ... é assustador aprender, não apenas a nova sintaxe, mas o novo conceito de sintaxe. O que vou dizer, porém, é que acredito que vale a pena. O JunOS deixará sua cabeça coçando por um tempo, mas em algum momento, ele clicará e tudo começará a fazer sentido. Você ainda terá que procurar informações, é claro (conhecer a sintaxe de um idioma não é o mesmo que conhecer o vocabulário), mas em geral isso fará sentido.
Jeff McAdams