sexta-feira, 28 de maio de 2010

BGP - Atributo Weight


1        Atributo Weight

O atributo weight é um atributo proprietário da Cisco System que influencia localmente a preferência de uma rota para ser instalada na tabela de roteamento do roteador. Ou seja, o critério de seleção de rota baseado no weight é restrito ao roteador e não influencia o meio externo.
O weight pode possuir um valor de 0 à 65535. Caminhos para as rotas originadas localmente tem o peso de 32768 por default e rotas aprendidas tem o peso de 0.
Quanto maior o peso da rota para o mesmo destino, melhor é considerada aquela rota.
O weight pode ser configurado tanto na configuração do vizinho BGP quanto por route-map.

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).
         No R3, na conexão BGP com o R4, o atributo “weigth” deverá ter o valor 100;
         No R4, na conexão BGP com o R2, o atributo “weight” deverá ter o valor 100.

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 weight altera a preferencia das redes divulgadas pelo vizinho que teve o weight modificado. Quanto maior, melhor. Para alterar o weight das rotas do vizinho, usa-se o comando “neightbor weight
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

Documentação:
Observe que, caso o atributo weight não fosse aslterado, o caminho preferencial para a o IP 1.1.1.1 (loopback divulgada pelo R1 no BGP) seria via o link entre o R3 e R1. O atributo weight prioriza a rota aprendida pelo R2, que normalmente seria a pior rota devido ao AS Path.

2.6           Comandos Importantes de Verificação

R3#sh 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    100    100 2 1 i
*                   13.13.13.1               0             0 1 i

R3#sh ip bgp summary
BGP router identifier 3.3.3.3, local AS number 34
BGP table version is 3, main routing table version 3
1 network entries using 113 bytes of memory
2 path entries using 96 bytes of memory
3/1 BGP path/bestpath attribute entries using 348 bytes of memory
2 BGP AS-PATH entries using 48 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP using 605 total bytes of memory
BGP activity 2/1 prefixes, 4/2 paths, scan interval 60 secs

Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
13.13.13.1      4     1      98      99        3    0    0 00:02:10        1
34.34.34.4      4    34     102     105        3    0    0 00:02:25        1

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
 neighbor 34.34.34.4 weight 100
!

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 weight 100
 neighbor 34.34.34.3 remote-as 34
!

Nenhum comentário: