Influenciando rotas de saída na configuração multi-homed do BGP

1

Eu tenho uma configuração de rede multi-homed. Estou usando um Cisco 7200 para fazer propaganda BGP para o provedor A e B. Para cada provedor, eu tenho um / 24 separado que estou usando. Eu sou AS prepending para influenciar o bloco A para o provedor A e bloquear B para o provedor B. Isso funciona bem. Se um dos fornecedores falhar, o failover funcionará bem.

No entanto, também quero influenciar o tráfego do OUTBOUND a fluir para cada provedor da mesma maneira. Ou seja, como o tráfego vem no meu roteador, quero associar sua saída ao provedor com base no endereço IP de origem. Como é, cada provedor anuncia para mim apenas uma rota padrão.

Acredito que posso usar a política de roteamento para conseguir isso, mas não quero codificar os endereços IP na política, pois eles podem mudar dinamicamente.

Então, quais são minhas opções para influenciar o roteamento de saída?

    
por ctennis 16.08.2009 / 14:47

4 respostas

4

Pelo que entendi você quer o tráfego que vem do ProviderA para voltar ao ProviderA e o tráfego que vem do ProviderB para voltar ao ProviderB.

Eu realmente não entendo "não quero codificar os endereços IP", pois um / 24 não será dinâmico. Então eu faria um mapa de rotas baseado no endereço de origem. Não é 100% bom porque você pode ter recebido tráfego de ProviderA IPs do link ProviderB, mesmo com o AS prepending, e você enviará de volta o tráfego para ProviderA em vez de ProviderB, mas estará Ok a maior parte do tempo.

access-list 101 permit ip PROVIDER_A_SUBNET 0.0.0.255 any
access-list 102 permit ip PROVIDER_B_SUBNET 0.0.0.255 any

route-map SOURCE_ROUTING permit 10
match ip address 101
set ip next-hop PROVIDER_A_ROUTER

route-map SOURCE_ROUTING permit 20
match ip address 102
set ip next-hop PROVIDER_B_ROUTER

Em seguida, aplique policy route-map SOURCE_ROUTING na interface que recebe dados que precisam sair.

    
por 16.08.2009 / 15:11
2

O caminho do tráfego de saída entre pares imediatos discretos é normalmente manipulado usando preferência local e pode ser aplicado seletivamente às rotas recebidas por meio do vizinho, ASN ou prefixo.

No entanto, se você estiver recebendo apenas uma rota padrão de cada provedor, suas opções serão muito limitadas. Existe uma razão pela qual você não está operando sem nenhum padrão, como a capacidade do roteador?

    
por 16.08.2009 / 14:57
0

O Radius parece ter conseguido o que você gostaria de trabalhar. Outra opção é o Cisco Performance Routing (PfR) . O PfR é uma solução muito mais complicada, mas permite que você faça escolhas de qual provedor usar com base nas métricas com IP SLAs IP SLA da Cisco e pode outros fatores. Algo para se olhar no futuro, se os mapas de rotas e outros controles BGP padrão não forem suficientes.

    
por 16.08.2009 / 18:00
0

A melhor maneira de fazer isso seria apenas balancear a carga do tráfego de saída. Embora você possa fazer como sugerido e definir o próximo salto específico para o provedor, se um dos links ficar inativo, o tráfego de saída desse provedor será interrompido, pois o próximo salto será difícil.

Então, o que você faria é marcar o pref local para ambos os provedores da mesma forma.

router bgp xxxx
 neighbor <provider A peer IP> route-map DEFAULT-ROUTE-ONLY in
 neighbor <provider B peer IP> route-map DEFAULT-ROUTE-ONLY in
 ! just an example
ip prefix-list DEFAULT-ONLY seq 10 permit 0.0.0.0/0
! match only the default route, don't allow anything else
route-map DEFAULT-ROUTE-ONLY
 match ip address prefix-list DEFAULT-ONLY
 set local-preference 150
! this sets the local pref for the default routes the same and load balances outbound

Não é tão difícil ter o tráfego de saída do Provedor A saindo do link do Provedor B, já que o tráfego da Internet não tem problemas com vários caminhos. Além disso, você tem a vantagem do failover automático.

    
por 14.09.2011 / 00:03