sexta-feira, 28 de maio de 2010

BGP - Atributo Local Preference


1        Atributo Local Preference

O atributo Local Preference do BGP é um indicador para o AS ao qual o roteador pretence sobre qual a preferencia daquela rota. Esse atributo, quando configurado em uma rota por um roteador, é passado para todos os roteadores pertencentes ao mesmo AS, ou seja, é um atributo conhecido e não transitável para outro AS (well-known discritionary).
Todos os roteadores do AS recebem a informação de Local Preference em todas as rotas e usam esse valor como critério de seleção da melhor rota para o mesmo destino. O maior valor de Local Preference é o escolhido como melhor rota para aquele destino.
O valor padrão de todas as rotas é 100 e pode ser modificado por route-map, configuração de vizinhança ou modificar o padrão de todas as rotas do roteador.
O Local Preference é utilizado no caso do weight for empatado para o mesmo destino.
 

2        Cenário

2.1           Objetivo

Quatro roteadores (R1, R2, R3 e R4) são conectados fisicamente R1-R2-R3-R4-R1 e devem ser configurados com roteamento BGP seguindo os criterios abaixo:
          Todos os roteadores possuem como IGP o OSPF na área 0 divulgando suas interfaces;
         O router-ID é o endereço IP das loopbacks;
         O R1 pertence ao AS 1 e faz conexão EBGP com o R2 (AS 2) e com o R3 (AS 34) e deverá divulgar a sua loopback no BGP;
         O R3 e o R4 pertencem ao AS 34 e fazem IBGP entre eles;
         O R2 pertence ao AS 2 e faz EBGP com o R4 (AS 34);
         O tráfefo originado no AS 34 deverá ser encaminhado para o IP 1.1.1.1 via o AS 2 usando Local Preference.

2.2           Topologia

Figure-01:              Topologia

2.3           IOS utilizados

         R1, R2, R3 e R4 – c7200-js-mz.123-7.T.bin

2.4           Configuração dos Roteadores

Em todos os roteadores, antes de configurar o roteamento BGP, deve-se configurar um IGP, ou seja, um roteamento interno para que os roteadores possam conhecer o endereço IP para fechar a conexão BGP e também para que a rota seja divulgada na tabela de roteamento BGP. Esse IGP pode ser OSPF, ISIS, estático, etc.
O processo de ativação do OSPF é feito pelo comando “router ospf ” onde o “processo” é um numero do processo OSPF. Para adicionar interfaces usa-se o comando “network
área ”. Para o roteador fazer vizinhança OSPF é necessário que a rede da interface esteja no comando “network” e a interface não esteja configurada como “passive-interface”.
Voltando ao BGP, agora que os roteadores conhecem os endreços IPs de seus vizinhos pelo IGP, configura-se o BGP em todos os roteadores pelo comando “router bgp ” onde o “AS” é o Autonomous System do provedor. Dentro da configuração de BGP adiciona-se os vizinhos estaticamente com o comando “neighbor remote-as ”, onde se o “as_vizinho” for igual ao AS do roteador a conexão é IBGP, se for diferente será EBGP.
Adiciona-se o IP da interface loopback como Router-ID pelo comando “router-id ”. Para divulgar rede no BGP é necessário que a rede exista na tabela de roteamento interna e, ou adicionar o comando “network mask ” ou redistribuir rotas para o BGP com o comando “redistribute”.
A configuração de local preference altera a preferencia das redes divulgadas pelo vizinho que teve o Local Preference modificado para dentro de todo o AS, pois é divulgado para os vizinhos internos. Quanto maior, melhor. Para alterar o Local Preference das rotas do vizinho, usa-se o comando “neightbor local preference ”.
As configurações de BGP atualmente podem ser feitas dentro da família de endereçamento IPv4, ou seja, dentro da configuração de roteamento entra-se no “address-family ipv4” e configuram-se as vizinhanças, router-reflector, community, route-map, etc.

2.5           Observações e Bugs

Observe que, caso o atributo Local Preference não fosse alterado, o caminho preferencial para a o IP 1.1.1.1 (loopback divulgada pelo R1 no BGP) seria via o link entre o R3 x R1. O atributo Local Preference prioriza a rota aprendida pelo R2 e divulga essa prioridade para dentro do AS 34, caminho esse que normalmente seria a pior rota devido ao AS Path.
Documentação:

2.6           Comandos Importantes de Verificação

R3#show ip bgp
BGP table version is 3, local router ID is 3.3.3.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*>i1.1.1.1/32       24.24.24.2               0    200      0 2 1 i
*                   13.13.13.1               0             0 1 i

3        Configuração

3.1           R1

router ospf 1
 network 12.12.12.1 0.0.0.0 area 0
 network 13.13.13.1 0.0.0.0 area 0
!
router bgp 1
 bgp router-id 1.1.1.1
 network 1.1.1.1 mask 255.255.255.255
 neighbor 12.12.12.2 remote-as 2
 neighbor 13.13.13.3 remote-as 34
!

3.2           R2

!
router ospf 1
 network 12.12.12.2 0.0.0.0 area 0
 network 24.24.24.2 0.0.0.0 area 0
!
router bgp 2
 bgp router-id 2.2.2.2
 bgp log-neighbor-changes
 neighbor 12.12.12.1 remote-as 1
 neighbor 24.24.24.4 remote-as 34
!

3.3           R3

!
router ospf 1
 network 13.13.13.3 0.0.0.0 area 0
 network 34.34.34.3 0.0.0.0 area 0
!
router bgp 34
 bgp router-id 3.3.3.3
 neighbor 13.13.13.1 remote-as 1
 neighbor 34.34.34.4 remote-as 34
!

3.4           R4

!
router ospf 1
 network 24.24.24.4 0.0.0.0 area 0
 network 34.34.34.4 0.0.0.0 area 0
!
router bgp 34
 bgp router-id 4.4.4.4
 neighbor 24.24.24.2 remote-as 2
 neighbor 24.24.24.2 local preference 200
 neighbor 34.34.34.3 remote-as 34
!c

Nenhum comentário: