Apostila-completa Curso Bgp Design v3dot0

of 555 /555

Click here to load reader

Embed Size (px)

Transcript of Apostila-completa Curso Bgp Design v3dot0

  • BGP Design com Roteadores Cisco

    Instrutor: Rinaldo Vaz Analista de Redes Responsvel tcnico pelo AS 28135

    Verso do material: 3.0ltima publicao: 26/3/2013

    1.0 Esse material foi utilizado no curso de Florianpolis nos dias 4,5,6,7 e 8 de maro de 2013 Prximo curso: Joo Pessoa-PB dias 13,14,15,16 e 17 de maio de 2013

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    2

    Viso Geral sobre BGP

    Verso do material: 3.0ltima publicao: 26/3/2013

    1.0

    1. Viso geral sobre BGP

    1.1 Introduo 1.2 Requisitos para se tornar um sistema autnomo 1.3 Preenchendo o formulrio do Registro.br 1.4 Quando utilizar IGP e EGP 1.5 Atributos BGP 1.6 Entendendo o processo de escolha de rotas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    3

    1.1 Introduo

    Diferenas entre FIB e RIB:Fowarding Information Base (FIB)

    Quando um router recebe 2 rotas diferentes para o mesmo prefixo os critrios de escolha de rota so analisados. A rota que foi considerada melhor de acordo com os critrios BGP fica na FIB.(caso no haja uma rota de melhor metrica esttica ou recebida por outro protocolo de roteamento)

    Router Information Base (RIB) As rotas que no foram consideradas melhores ficaro

    guardadas na RIB e sero utilizadas caso a rota principal fique indisponvel.

    O BGP jamais anuncia uma prefixo que no esteja na FIB!

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    4

    1.1 Introduo

    Distncias administrativas:Outro ponto importante a distncia administrativa, caso 2

    prefixos sejam idnticos, o router analisa essa distncia, a menor sempre "ganha". Caso sejam iguais, os critrios particulares do protocolo de roteamento correspondente sero analisados:

    Directamente Conectada 0Esttica 1eBGP 20EIGRP (Interno) 90IGRP 100OSPF 110ISIS 115RIP 120EGP 140EIGRP (Externo) 170iBGP 200BGP Local 200Desconhecido 255

    Padro Cisco*Router discovery 55RIP 100RIPng 100PIM 105DVMRP 110Aggregate 130OSPF AS external routes 150IS-IS Level 1 external route 160IS-IS Level 2 external route 165BGP 170MSDP 175

    Directly connected network 0System routes 4Static and Static LSPs 5RSVP-signaled LSPs 7LDP-signaled LSPs 9OSPF internal route 10IS-IS Level 1 internal route 15IS-IS Level 2 internal route 18Redirects 30Kernel 40SNMP 50

    Padro Juniper*

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    5

    1.1 Introduo

    A verso corrente do BGP a verso 4, especificada na RFC 1771

    o protocolo responsvel por fazer a internet funcionar da maneira que

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    6

    1.1 Introduo

    Algumas Caractersticas:1. um protocolo do tipo vetor de caminho2. As tabelas completas de roteamento so trocadas

    entre os dois routers no incio da sesso3. Atualizaes adicionais so enviadas imediatamente

    atravs de mensagens de update *4. Utiliza por padro a porta TCP 179

    *Quando uma nova rota instalada o router avisa imediatamente para seus outros peers BGP, porm h possibilidade de estabelecer um tempo mnimo (Minimum Route Advertisement Interval ou MRAI) entre cada rodzio de atualizaes, forando-o a segurar alguns updates e envia-los de uma s vez em um intervalo pre-definido. Por exemplo:

    neighbor {ip-address | peer-group-name} advertisement-interval seconds Fonte:http://www.cisco.com/en/US/docs/ios/iproute_bgp/command/reference/irg_bgp3.html

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    7

    1.1 Introduo

    Mensagens BGP: Open (abertura) - a primeira mensagem enviada por um router que

    deseja estabelecer uma sesso com outro, esse por sua vez tambm envia uma mensagem open. Aps recebidas e checadas*, cada router envia a primeira mensagem de keep alive e a sesso estabelecida.

    *Mensagens de OPEN contm vrias informaes sobre o remetente como verso do BGP configurada, nmero do AS, routerID, valores de timers configurados entre outros

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    8

    1.1 Introduo

    Mensagens BGP: Update (atualizao) - dentro dessas mensagens que vo informaes

    sobre cada prefixo que est sendo anunciado, uma mensagem de update tambm pode conter informaes sobre redes que ficaram indisponveis e devem ser removidas

    Fonte da imagem: http://www.potaroo.net/ispcol/2005-03/fig1.png

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    9

    1.1 Introduo

    Mensagens BGP: Notificao (notification message) enviada quando uma condio de

    erro detectada; elas so usadas para encerrar uma sesso ativa e informar a quaisquer roteadores conectados do porque do encerramento da sesso.

    Sempre que um router envia uma mensagem do tipo notification esse finaliza imediatamente a sesso BGP correspondente

    Ex: Ao receber uma mensagem de open com o nmero de AS diferente do que foi configurado localmente, o router responde imediatamente com uma mensagem de notification

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    10

    1.1 Introduo

    Mensagens BGP: Keep-alive (ainda estou aqui) - De tempo em tempo cada router envia

    uma mensagem de keep-alive para que o vizinho saiba que h conectividade IP. Caso o keep-alive atrase, o router comea a contagem de hold-time e, se nesse perodo no for recebido nenhum keep-alive, a sesso finalizada. Tanto o tempo de keep-alive como o de hold-time podem ser configurados para mais ou menos tempo de acordo com o tipo de link.

    Os valores padro so 60 segundos de intervalo para keepalive e 180 segundo de tolerncia (hold time) que podem ser alterados com o seguinte comando:

    !

    router bgp 65001

    neighbor 192.168.2.1 timers 20 60

    ! Com esse comando, o tempos de keepalive e hold time ficariam setados

    em 20 e 60 segundos respectivamente

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    11

    Requisitos para se tornar um Sistema Autnomo

    1.2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    12

    1.2 - Requisitos para se tornar um sistema autnomo

    Uma organizao justifica a designao de um ASN quando apresenta uma das seguintes necessidades:

    Multi Provedor: Quando a organizao est conectada a dois ou mais provedores de transito Internet distintos e independentes e necessita, portanto, fazer uso de protocolos de roteamento dinmico

    Poltica nica de roteamento: Quando a organizao possui uma poltica de roteamento que distinta daquela aplicada pelo(s) provedor(es) de transito Internet.

    Mais informaes em:

    http://registro.br/provedor/numeracao/regras.html

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    13

    Preenchendo o Formulrio do registro.br

    1.3

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    14

    1.3 - Preenchendo o Formulrio do registro.br

    H um formulrio simples que pode ser baixadono seguinte endereo:

    http://registro.br/provedor/numeracao/pedido-form.txt

    Em caso de dvidas h um arquivo contento informaes de ajuda:

    http://registro.br/provedor/numeracao/pedido-ajuda.txt

    Informaes completas em:http://registro.br/provedor/numeracao/faq.html

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    15

    Quando utilizar

    IGP e EGP

    1.4

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    16

    1.4 - Quando utilizar IGP e EGP

    O BGP foi desenvolvido para troca de rotas entre Sistemas Autnomos distintos

    No h nenhum motivo para um provedor de servios utilizar BGP se esse no possuir um ASN.

    A finalidade do BGP permitir que os IPs do Sistema Autnomo apaream na internet.

    Tecnicamente nada impede de utilizar BGP com apenas uma operadora, porm um requisito para obter um ASN:

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    17

    1.4 - Quando utilizar IGP e EGP

    Caso um dos clientes do provedor tambm seja um Sistema Autnomo indispensvel a utilizao do BGP com o cliente e operadorasde trnsito.

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    18

    Atributos BGP

    1.5

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    19

    1.5 - Atributos BGP

    Conhecidos obrigatrios (Well-known mandatory): Alm de obrigatrio em todas as implementaes, precisam estar em todas as mensagens de update trocadas entre os roteadores via BGP.

    Conhecidos discricionrios (Well-known discretionary): Semelhantes aos obrigatrios, porm no precisam estar contidos em todas as mensagens de update. Todas as implementaes precisam suporta-los

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    20

    1.5 - Atributos BGP

    Opcional transitivo (Optional transitive): No precisam ser implementados por todos os fabricantes, e quando sim, podem ser propagados para outros neighbors atravs de mensagens de update.

    Opcional no-transitivo (Optional non-transitive): Semelhantes aos citados acima, porm, um router nunca propaga esses atributos para outro neighbor.

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    21

    1.5 - Atributos BGP

    Uma boa descrio pode ser encontrada no livro: CCNP BSCI - Official Exam Certification Guide, 4th edition de Brent Steward:

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    22

    Entendendo o Processo de

    Escolha de Rotas

    1.6

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    23

    1.6 - Entendendo o processo de escolha de rotas

    Em primeiro lugar, o BGP apenas analisa os atributos para "desempatar" duas ou mais rotas para o MESMO PREFIXO.

    Caso haja um prefixo mais especfico esse sempre ser preferido independentemente dos seus atributos "mais favorveis".

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    24

    1.6 - Entendendo o processo de escolha de rotas

    Como o BGP escolhe uma rota: Sempre que houverem duas ou mais opes de rota para prefixos iguais (mesma mscara de sub-rede) e

    ambas tiverem sido recebidas via BGP, o protocolo vai escolher a melhor rota de acordo com a ordem:

    1. Rota com maior valor de WEIGHT (Cisco, Quagga, RouterOS, OpenBGPD)

    2. Rota com maior valor de LOCAL_PREF

    3. Rota originada localmente (bgp network)

    4. Rota com o menor AS_PATH.

    5. Rota com menor tipo de origem. IGP (i) < EGP (e) < INCOMPLETE (?)

    6. Rota com menor mtrica multi-exit discriminator (MED).

    7. Escolhe a rota recebida por (eBGP) em relao a uma (iBGP).

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    25

    1.6 - Entendendo o processo de escolha de rotas

    Como o BGP escolhe uma rota:8. Rota com a menor mtrica IGP para o nexthop BGP

    Ex: O next-hop aprendido via OSPF vai vencer um next-hop aprendido via ISIS

    9. Rota externa mais antiga

    10. Rota recebida de um router com menor Router ID

    11. Rota com o menor tamanho de cluster list. (Ambientes com Route Reflector apenas)

    12. Rota com o menor endereo de neighbor A anlise segue para o prximo critrio apenas quando h

    empate no critrio atual, assim, o tamanho do AS PATH s ser analisado caso o valor de weight e local preference sejam os mesmos para as duas rotas.

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    26

    PERGUNTAS?PERGUNTAS?

    1.6

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    27

    2.0Primeiros Passospara Aparecer na Internet2. Primeiros Passos para Aparecer na Internet 2.1-Configurando BGP com apenas um link 2.2-Analisando as rotas recebidas 2.3-Configurando BGP com 2 links 2.4-Utilizando um Looking Glass 2.5-Fail-Over automtico 2.6-Escolhendo o melhor link 2.7-Balanceamento de links 2.8-Implementando alta disponibilidade com VRRP 2.9-BGP Timers

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    28

    Configurando BGP com apenas um link

    2.1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    29

    2.1-Configurando BGP com apenas um link Antes de comear, vamos entender o cenrio no ponto de

    vista geral, onde cada aluno dono de um AS:CENARIO 1-1

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    30

    2.1-Configurando BGP com apenas um link Nesse LAB, cada aluno possui um Cisco 3660 com uma

    placa serial modelo NM-4T conectado ao AS 100 na interface s1/1 e uma fast ethernet conectada ao switch da sala do curso.

    O X deve ser entendido como o AS do aluno (1 at 24).

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    31

    2.1-Configurando BGP com apenas um link

    O router de cada grupo responde pelo IP X.128.0.254/9 (onde X o nmero do grupo).

    Para acess-lo, configurem nos seus laptops um IP dentro dessa mesma rede preferencialmente .1 e gateway padro X.128.0.254.

    Verifiquem a conectividade IP e em caso positivo abram uma sesso telnet com esse equipamento:[email protected]# telnet X.128.0.254

    Trying X.128.0.254...

    Connected to X.128.0.254.

    Escape character is '^]'.

    User Access Verification

    Password: A senha de acesso 123

    Para quem usa windows pode usar o Putty......http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    32

    Estamos agora no modo usurio:GX-R1>

    Para iniciar as configuraes precisaremos inicialmente entrar no modo privilegiado, e ser exigida uma outra senha:

    G1-R1>enable

    Password: gXr1GX-R1#

    E em seguida no modo de configurao global:GX-R1#terminal monitor

    GX-R1#configure terminal

    Enter configuration commands, one per line. End with CNTL/Z.

    GX-R1(config)#

    2.1-Configurando BGP com apenas um link

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    33

    O primeiro passo na configurao BGP adicionar um neighbor (peer):

    2.1-Configurando BGP com apenas um link

    GX-R1(config)# router bgp XGX-R1(config-router)# neighbor 100.X.1.1 remote-as 100GX-R1(config-router)# neighbor 100.X.1.1 description eBGP com as 100

    !--- Se digitar errado e o sistema aceitar o comando,!--- digite o mesmo comando com no antes.!--- Ex: neighbor 100.x.1.1 remote-as 101!--- no neighbor 100.x.1.1 remote-as 101!--- no neighbor 100.x.1.1 (remove tudo)

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    34

    Verificando o status da sesso BGP recm-criada:

    2.1-Configurando BGP com apenas um link

    LAB 1-1-1

    GX-R1#sh ip bgp summary Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.1.1 4 100 7 4 4 0 0 00:00:02 2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    35

    2.1-Configurando BGP com apenas um link

    router> configurerouter# set routing-options autonomous-system Xrouter# set protocols bgp group AS100 type externalrouter# set protocols bgp group AS100 export Internorouter# set protocols bgp group AS100 peer-as 100router# set protocols bgp group AS100 neighbor 100.X.1.1

    [[email protected]] > /routing bgp instance[[email protected]] /routing bgp instance> set default as=X/routing bgp peer[[email protected]] /routing bgp peer> add name=AS100 remote-address=100.X.1.1 remote-as=100

    LAB 1-1-1

    Como realizar a mesma configuao no JunOS e RouterOS

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    36

    Verificando os anncios que recebo da minha operadora:

    GX-R1#show ip bgp neighbors 100.X.1.1 routes Network Next Hop Metric LocPrf Weight Path...

    *> 100.0.0.0 100.X.1.1 0 100 i

    *> 123.123.123.0/24 100.X.1.1 0 100 111 55 123 i

    Posteriormente veremos na prtica a diferena entre os comandos com received-routes e apenas routes no final.

    2.1-Configurando BGP com apenas um link

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    37

    Agora todos tentam ping para 123.123.123.1 a partir do seu router:Sucesso??

    Agora um Traceroute!

    Em seguida ping para 123.123.123.1 a partir do seu laptopSucesso??

    Agora um Traceroute!

    Que problema pode estar havendo?

    2.1-Configurando BGP com apenas um link

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    38

    Esse ponto merece uma pausa para analisar algo importante no Troubleshooting.

    Ao executar um traceroute um host verifica a sua tabela de roteamento, caso no haja ocorrncias os pacotes do traceroute so encaminhados pela rota padro, no sendo nada especificado no comando, o IP de origem sempre o mesmo da interface conectada ao next-hop.

    Em nosso LAB qual o next-hop para 123.123.123.1 ?Provavelmente 100.X.1.1, qual IP o router vai utilizar como origem?

    2.1-Configurando BGP com apenas um link

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    39

    O IP de origem 100.X.1.2 que por sua vez est dentro de uma rede conhecida pelo looking glass (123.123.123.1).

    J o laptop no consegue alcanar o destino porque o seu IP de origem X.128.0.1, rede que no conhecida pelo looking glass j que ainda no anunciamos nada.

    No se trata ento de o laptop no conseguir alcanar 123.123.123.1, na verdade os pings disparados pelo laptop chegam ao seu destino, porm o destino no sabe para quem responder.

    2.1-Configurando BGP com apenas um link

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    40

    O segundo passo anunciar o classe A (bloco /8) do seu grupo:

    2.1-Configurando BGP com apenas um link

    GX-R1(config)# router bgp X!--- entra no nodo de configurao BGPGX-R1(config-router)#network X.0.0.0 mask 255.0.0.0!--- adiciona a rede x.0.0.0 para ser anunciada a partir desse routerGX-R1(config-router) auto-summary!--- permite que o BGP anuncie x.0.0.0/8 bastando com que haja qualquer!--- IP/rotaFIB dentro das redes declaradas em networksGX-R1(config-router)#end!--- volta ao modo privilegiadoGX-R1# clear ip bgp 100.X.1.1!--- reinicia a sesso BGP ==> OPCIONAL

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    41

    Auto-Summary:

    2.1-Configurando BGP com apenas um link

    Quando habilitamos o auto-summary, o BGP vai sumarizar na classe padro (classe A, B ou C) os prefixos declarados em network ou redistribute

    Algumas literaturas afirmam que o auto-summary no funciona com prefixos anunciados via comando network. possvel que isso ocorra em verses mais antigas do IOS, porm como podemos ver nesse LAB (IOS 12.4), temos um IP /32 em uma interface loopback, que por sua vez sumarizado e redistribudo como uma classe A

    importante lembrar que esse tipo de sumarizao ocorre apenas para classes PADRO, e muito dificilmente ser utilizado em produtividade.

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    42

    Agora verifico os anncios que estou fazendo para o AS 100:

    GX-R1#sh ip bgp neighbors 100.X.1.1 advertised-routes BGP table version is 15, local router ID is 100.X.1.2

    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal

    Origin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path

    *> X.0.0.0 0.0.0.0 0 32768 i

    Caso aparea algo parecido com isso, vamos testar novamente a conectividade IP com o looking glass a partir do laptop.

    2.1-Configurando BGP com apenas um link

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    43

    Sintam-se vontade para entrar no looking glass e executar testes de PING e TRACEROUTE!

    2.1-Configurando BGP com apenas um link

    LAB 1-1-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    44

    PERGUNTAS?PERGUNTAS?

    2.1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    45

    Analisando as rotas recebidas

    2.2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    46

    2.2-Analisando as rotas recebidas

    Vamos detalhar melhor as rotas recebidas:GX-R1>sh ip bgp summary

    ...

    Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.1.1 4 100 112 83 22 0 0 01:06:03 3

    Esse comando mostra todas as sesses BGP configuradas ativas e no ativas.

    Nesse laboratrio apenas uma sesso est configurada. Vamos entender o que cada campo significa...

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    47

    Entendendo os campos do summary:

    Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.1.1 4 100 112 83 22 0 0 01:06:03 3

    Neighbor = 100.X.1.1 Esse o IP do router remoto (configurado em router BGP X).

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    48

    Entendendo os campos do summary:

    Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.1.1 4 100 112 83 22 0 0 01:06:03 3

    V = 4 Verso do BGP utilizada nessa sesso.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    49

    Entendendo os campos do summary:

    Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.1.1 4 100 112 83 22 0 0 01:06:03 3

    AS = 100 AS do neighbor remoto (configurado em neighbor 100.X.1.1

    remote-as X).

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    50

    Entendendo os campos do summary:

    Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.1.1 4 100 112 83 22 0 0 01:06:03 3

    MsgRcvd = 112 MsgSent = 83 Quantidade total de mensagens BGP recebidas e enviadas

    incluindo keepalives e updates.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    51

    Entendendo os campos do summary:

    Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.1.1 4 100 112 83 22 0 0 01:06:03 3

    TblVer = 22 Verso atual da tabela de rotas BGP, sempre que uma nova rota

    inserida ou removida o TblVer incrementado.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    52

    Entendendo os campos do summary:

    Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.1.1 4 100 112 83 22 0 0 01:06:03 3

    InQ = 0 OutQ = 0 Updates na fila de entrada e de sada.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    53

    Entendendo os campos do summary:

    Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.1.1 4 100 112 83 22 0 0 01:06:03 3

    Up/Down = 01:06:03 Contador das horas minutos e segundos desde de que a sesso

    foi estabelecida ou que a sesso ficou down, aps 24 horas o contador muda para 1d00h00m (dias/horas/minutos) aps uma semana 01w0d00h (semanas/dias/horas).

    Antes de uma sesso estabelecer ao menos uma vez o contador fica em never.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    54

    Entendendo os campos do summary:

    Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.1.1 4 100 112 83 22 0 0 01:06:03 3

    State/PfxRcd = 3 Esse campo merece uma ateno especial pois ser o mais

    frequentemente observado. Indica o estado da conexo BGP. Nesse caso est contando 3 prefixos, mas existem 5

    estados possveis, IDLE, CONECT, ACTIVE, OPENSENT, OPENCONFIRM e ESTABLISHED, iremos entender melhor cada um desses estados nos prximos slides.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    55

    Entendendo os campos do summary:State/PfxRcd

    IDLE

    o estado em que a sesso fica quando interrompida por uma mensagem de notificao ou interveno do administrador, esse estado, quando se prolonga por muito tempo, aponta algum possvel problema de conectividade IP ou ainda que o BGP no foi configurado corretamente do lado remoto.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    56

    Entendendo os campos do summary:State/PfxRcd

    ACTIVE ACTIVE: O BGP tenta estabelecer comunicao com um peer inicializando uma conexo

    TCP. Caso esta seja bem sucedida, passa-se ao estado OPENSENT. Se esta tentativa no for bem sucedida, pelo motivo de expirao do tempo, por exemplo, o estado passa para CONNECT. Em cada interrupo pelo sistema ou pelo administrador, volta ao estado IDLE. Geralmente as transies entre o estado de CONNECT e ACTIVE refletem problemas no nvel TCP.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    57

    Entendendo os campos do summary:State/PfxRcd

    CONNECT Neste estado o BGP aguarda pela conexo TCP, com destino na porta 179. Quando a

    conexo estiver estabelecida, ou seja, com o recebimento da mensagem de OPEN, passa-se ao estado de OPENSENT. Se a conexo nvel de transporte no for bem sucedida, o estado vai para ACTIVE. No caso do tempo de espera ter sido ultrapassado, o estado volta para CONNECT. Em qualquer outro evento o estado retorna para IDLE.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    58

    Entendendo os campos do summary:State/PfxRcd

    OPEN SENT OPENSENT: Neste estado o BGP aguarda pela mensagem de OPEN e faz uma checagem de

    seu contedo. Caso seja encontrado algum erro como nmero de AS incoerente ao esperado ou a prpria verso do BGP, envia-se uma mensagem tipo NOTIFICATION e volta ao estado de IDLE. Caso no ocorram erros na checagem, inicia-se o envio de mensagens KEEPALIVE. Em seguida, acerta-se o tempo de Hold Time, sendo optado o menor tempo entre os dois peers. Depois deste acerto, compara-se o nmero AS local e o nmero AS enviado pelo peer, com o intuito de detectar se uma conexo iBGP (nmeros de AS iguais) ou eBGP (nmeros de AS diferentes). Em caso de desconexo a nvel TCP, o estado passa para ACTIVE. Para as demais situaes de erro, como expirao do Hold Time, envia-se uma mensagem de NOTIFICATION com o cdigo de erro correspondente e retorna-se ao estado de IDLE. No caso de interveno do administrador ou o prprio sistema, tambm retorna-se o estado IDLE.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    59

    Entendendo os campos do summary:State/PfxRcd

    OPEN CONFIRM OPENCONFIRM: Neste estado o BGP aguarda pela mensagem de KEEPALIVE e quando

    esta for recebida, o estado segue para ESTABLISHED e a negociao do peer finalmente concluda. Com o recebimento da mensagem de KEEPALIVE, acertado o valor negociado de Hold Time entre os peers. Se o sistema receber uma mensagem tipo NOTIFICATION, retorna-se ao estado de IDLE. O sistema tambm envia periodicamente, segundo o tempo negociado, mensagens de KEEPALIVE. No caso da ocorrncia de eventos como desconexo ou interveno do operador, retorna-se ao estado de IDLE tambm. Por fim, na ocorrncia de eventos diferentes aos citados, envia-se uma mensagem NOTIFICATION, retornando ao estado de IDLE.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    60

    Entendendo os campos do summary:State/PfxRcd

    ESTABLISHED ESTABLISHED: Neste estado, o BGP inicia a troca de mensagens de UPDATE ou

    KEEPALIVE, de acordo com o Hold Time negociado. Caso seja recebida alguma mensagem tipo NOTIFICATION, retorna-se ao estado IDLE. No recebimento de cada mensagem tipo UPDATE, aplica-se uma checagem por atributos incorretos, inconsistentes, duplicados, ou mesmo faltando, caso algum erro seja detectado, envia-se uma mensagem de NOTIFICATION, retornando ao estado IDLE. Por fim, se o Hold Time expirar ou for detectada desconexo ou interveno do administrador, tambm retorna-se ao estado de IDLE.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    61

    Entendendo os campos do summary:State/PfxRcd

    3

    Esse nmero no representa a quantidade de prefixos recebidos de um neighbor, mas sim a quantidade de prefixos que foram parar na RIB aps terem passado pelos filtros.

    Um State/PfxRcd 0 no significa necessariamente que no estou recebendo nenhuma rota, por exemplo, pode ser que o next-hop dessas rotas seja inalcanvel pelo meu router e assim elas no aparecem. Detalharemos esses casos posteriormente.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    62

    Vamos detalhar todas as rotas BGP:GX-R1# show ip bgp

    BGP table version is 22, local router ID is 100.X.1.2Status codes: s suppressed, d damped, h history, * valid, > best, i - internal

    Origin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path

    *> 6.0.0.0 100.X.1.1 0 100 6 i

    *> 100.0.0.0 100.X.1.1 0 100 i

    *> 123.0.0.0 100.X.1.1 0 100 222 123 i Esse comando mostra todas as rotas recebidas via BGP

    escolhidas (FIB) e no escolhidas (RIB). Como recebemos rotas de apenas um peer, no h rotas no escolhidas.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    63

    Vamos detalhar uma rota especfica:GX-R1#sh ip bgp 123.0.0.0BGP routing table entry for 123.0.0.0/8, version 10

    Paths: (1 available, best #1, table Default-IP-Routing-Table)

    Flag: 0x208

    Not advertised to any peer

    100 111 55 123

    100.X.1.1 from 100.X.1.1 (100.100.100.1) Origin IGP, localpref 100, valid, external, best

    #Esse comando detalha as rotas para o prefixo 123.0.0.0/8, e caso outras rotas para esse mesmo prefixo tenham sido recebida via BGP de outro(s) neighbor(s), mais entradas semelhantes aparecero uma abaixo da outra.

    Entenderemos cada campo a seguir:

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    64

    Vamos detalhar uma rota em especfico:GX-R1#sh ip bgp 123.0.0.0BGP routing table entry for 123.0.0.0/8, version 22

    ... Essa linha mostra a verso da routing table descrita nos

    slides anteriores.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    65

    Vamos detalhar uma rota em especfico:GX-R1#sh ip bgp 123.0.0.0...

    Paths: (1 available, best #1, table Default-IP-Routing-Table)

    Paths significa a quantidade de neighbors que me enviaram rotas para esse mesmo prefixo, ou seja, 1 avaliable diz que apenas 1 neighbor me enviou.

    best #1 a rota que foi escolhida (na ordem de cima para baixo) de acordo com os critrios do BGP weigh, local_pref, etc.

    table Default-IP-Routing-Table significa que as rotas esto na FIB padro. Mltiplas FIB's so usadas com VRF.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    66

    Vamos detalhar uma rota em especfico:GX-R1#sh ip bgp 123.0.0.0...

    Flag: 0x208

    ...

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    67

    Vamos detalhar uma rota em especfico:GX-R1#sh ip bgp 123.0.0.0...

    Not advertised to any peer

    ... Essa mensagem significa que esse prefixo 123.0.0.0/8 no

    est sendo anunciada via BGP para nenhum neighbor. Na verdade qualquer rota nesse laboratrio aparecer com essa mensagem.

    Esse campo ser detalhado posteriormente na sesso AS de trnsito.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    68

    Vamos detalhar uma rota em especfico:GX-R1#sh ip bgp 123.0.0.0...

    100 111 55 123

    ... AS-PATH: mostra da direita para a esquerda o AS que originou essa rota e

    todos os ASs no caminho. Ou seja, o AS 123 originou o anncio para o AS 55 que recebeu,

    considerou como melhor rota e exportou para o as 111, depois para o AS 100, o qual tambm considerou como melhor e repassou para meu AS.

    Um ponto importante a se observar que mesmo que um AS tenha mil caminhos para um determinado prefixo, apenas UM que ele vai escolher como BEST # e passar adiante.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    69

    Vamos detalhar uma rota em especfico:GX-R1#sh ip bgp 123.0.0.0...

    100.X.1.1 from 100.X.1.1 (x.x.x.x)

    ... O primeiro IP dessa linha significa o next-hop(prximo salto)

    para esse prefixo, caso o next-hop no esteja contido em uma rota vlida da FIB, esse jamais ser eleito como BEST.

    O segundo IP dessa linha me diz o endereo do neighbor que me enviou essa rota via BGP.

    O IP (X.X.X.X) na verdade o router-ID desse neigbor descrito acima.

    2.2-Analisando as rotas recebidas

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    70

    PERGUNTAS?PERGUNTAS?

    2.2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    71

    Configurando BGP com 2 links

    (MULTIHOMING)(MULTIHOMING)

    2.3

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    72

    2.3 Configurando BGP com 2 links Os prximos Laboratrios (1-2-1 e 1-2-2) utilizaro esse

    cenrio, e dessa vez, temos link tambm com o AS 200:

    LAB 1-2-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    73

    2.3 Configurando BGP com 2 links Nesse LAB, receberemos mais um link (AS 200) atravs da

    interface s1/0:!-- lembrando que X o nmero do AS do aluno

    LAB 1-2-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    74

    2.3 Configurando BGP com 2 links

    Primeiro passo a configurao do prximo neighbor:

    GX-R1(config)# router bgp X

    GX-R1(config-router)#

    network x.0.0.0 mask 255.0.0.0neighbor 100.x.1.1 remote-as 100 neighbor 100.x.1.1 description eBGP com as 100!--- O neighbor acima foi j configurado !--- prximo Neigborneighbor 200.X.1.1 remote-as 200 neighbor 200.X.1.1 description eBGP com as 200

    LAB 1-2-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    75

    Verificando o status das sesses BGP recm-criadas:GX-R1#sh ip bgp summary Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.1.1.1 4 100 192 170 9 0 0 00:27:48 7

    200.1.1.1 4 200 191 181 9 0 0 00:27:51 7

    O nmero de PfxRcd vai ser maior a medida que os alunos estabeleceram suas conexes.

    2.3 Configurando BGP com 2 links

    LAB 1-2-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    76

    Detalhando as rotas recebidas via BGP Em 23 dos 24 routers parte da sada desse comando aparecer

    parecida com isto:G1-R1>sh ip bgp BGP table version is 9, local router ID is 1.1.1.1Status codes: s suppressed, d damped, h history, * valid, > best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path*> 1.0.0.0 0.0.0.0 0 32768 i*> 2.0.0.0 100.1.1.1 0 100 2 i* 200.1.1.1 0 200 2 i*> 55.0.0.0 100.1.1.1 0 100 111 55 i* 200.1.1.1 0 200 222 123 55 i*> 100.0.0.0 100.1.1.1 0 100 i* 200.1.1.1 0 200 2 100 i*> 111.0.0.0 100.1.1.1 0 100 111 i* 200.1.1.1 0 200 2 100 111 i* 123.0.0.0 100.1.1.1 0 100 111 55 123 i*> 200.1.1.1 0 200 222 123 i* 200.0.0.0/8 100.1.1.1 0 100 2 200 i*> 200.1.1.1 0 200 i* 222.0.0.0/8 100.1.1.1 0 100 2 200 222 i*> 200.1.1.1 0 200 222 i

    2.3 Configurando BGP com 2 links

    LAB 1-2-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    77

    Detalhando as rotas recebidas via BGP Porm em 1 dos 24 routers a sada ser diferente:

    G1-R1>sh ip bgp BGP table version is 9, local router ID is 1.1.1.1Status codes: s suppressed, d damped, h history, * valid, > best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> 1.0.0.0 0.0.0.0 0 32768 i*> 2.0.0.0 100.1.1.1 0 100 2 i* 200.1.1.1 0 200 2 i*> 55.0.0.0 100.1.1.1 0 100 111 55 i* 200.1.1.1 0 200 222 123 55 i*> 100.0.0.0 100.1.1.1 0 100 i* 200.1.1.1 0 200 2 100 i*> 111.0.0.0 100.1.1.1 0 100 111 i* 200.1.1.1 0 200 2 100 111 i* 123.0.0.0 100.1.1.1 0 100 111 55 123 i*> 200.1.1.1 0 200 222 123 i*> 200.0.0.0/8 200.1.1.1 0 200 i*> 222.0.0.0/8 200.1.1.1 0 200 222 i

    2.3 Configurando BGP com 2 links

    LAB 1-2-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    78

    Detalhando as rotas recebidas via BGP O que significa essas 2 rotas alternativas desaparecerem at da

    RIB? E o que isso implica na prtica?

    Vamos ver a FIB do felizardo?. Por enquanto o importante saber que esse router passou a ser

    trnsito dos AS's 200 e 222 para alcanar o AS 100,111 e todos os seus downstreams.

    No caso desse router ficar down, outro grupo ficar na mesma situao... vamos ver quem?

    * 200.0.0.0/8 100.1.1.1 0 100 2 200 i*> 200.0.0.0/8 200.1.1.1 0 200 i* 222.0.0.0/8 100.1.1.1 0 100 2 200 222 i*> 222.0.0.0/8 200.1.1.1 0 200 222 i

    2.3 Configurando BGP com 2 links

    LAB 1-2-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    79

    Evitando se tornar AS de trnsito dos meus UPSTREAMS Fazer anncios faz do meu router um potencial provedor de

    trnsito das redes que anuncio (dependendo da origem).GX-R1>sh ip bgp neighbors 100.X.1.1 advertised-routes ... Network Next Hop Metric LocPrf Weight Path*> X.0.0.0 0.0.0.0 0 32768 i

    ...

    GX-R1>sh ip bgp neighbors 200.X.1.1 advertised-routes ... Network Next Hop Metric LocPrf Weight Path*> X.0.0.0 0.0.0.0 0 32768 i*> 2.0.0.0 100.1.1.1 0 100 2 i*> 55.0.0.0 100.1.1.1 0 100 111 55 i*> 100.0.0.0 100.1.1.1 0 100 i*> 111.0.0.0 100.1.1.1 0 100 111 i...

    2.3 Configurando BGP com 2 links

    LAB 1-2-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    80

    Implementando filtros de sada em meus upstreams H vrias maneiras e vamos iniciar pela mais simples:

    1)Criando uma prefix-list:GX-R1(config)#ip prefix-list MEUS-BLOCOS permit X.0.0.0/8

    !--- adiciona o bloco do AS do grupo na lista MEUS-BLOCOSGX-R1(config)#router bgp XGX-R1(config-router)#neighbor 200.X.1.1 prefix-list MEUS-BLOCOS out

    !---aplicar o mesmo filtro na sada do AS 200

    GX-R1(config-router)#neighbor 100.X.1.1 prefix-list MEUS-BLOCOS out !--- aplicar o mesmo filtro na sada do AS 100

    GX-R1(config-router)#endGX-R1#clear ip bgp *

    2.3 Configurando BGP com 2 links

    LAB 1-2-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    81

    Verificando as rotas recebidas aps o filtro de sada

    Agora o router anuncia para os UPSTREAMS apenas o necessrio que o prefixo /8 correspondente ao grupo:

    GX-R1>sh ip bgp neighbors 100.X.1.1 advertised-routes BGP table version is 24, local router ID is 9.9.9.9Status codes: s suppressed, d damped, h history, * valid, > best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> X.0.0.0 0.0.0.0 0 32768 i

    GX-R1>sh ip bgp neighbors 200.X.1.1 advertised-routes BGP table version is 24, local router ID is 9.9.9.9Status codes: s suppressed, d damped, h history, * valid, > best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> X.0.0.0 0.0.0.0 0 32768 i

    2.3 Configurando BGP com 2 links

    LAB 1-2-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    82

    PERGUNTAS?PERGUNTAS?

    2.3

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    83

    Utilizando um Looking Glass

    2.4

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    84

    2.4 Utilizando um Looking Glass

    Um looking glass nada mais do que um router com acesso pblico em algum lugar da internet, em sua maioria, a interface web para facilitar a vida do usurio, mas o mesmo que entrar nesse router e executar certos comandos como:

    show ip bgp x.x.x.x, ping x.x.x.x, traceroute x.x.x.xUm dos mais famosos o Hurricane Eletric...

    http://lg.he.net

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    85

    2.4 Utilizando um Looking Glass

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    86

    2.4 Utilizando um Looking Glass

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    87

    2.4 Utilizando um Looking Glass

    Em nosso LAB o Looking glass 123.123.123.1, vamos primeiramente verificar a conectividade com esse endereo:

    [email protected]:~$ traceroute 123.123.123.1 -n

    traceroute to 123.123.123.1 (123.123.123.1), 30 hops max, 60 byte packets

    1 X.128.0.254 5.292 ms 5.655 ms 5.640 ms

    2 200.X.1.1 13.807 ms 14.198 ms 100.701 ms

    3 200.200.1.1 111.035 ms 86.082 ms 86.477 ms

    4 222.200.10.1 92.724 ms 92.302 ms 69.351 ms

    5 222.222.1.1 127.492 ms 73.505 ms 69.707 ms

    6 123.222.2.1 43.309 ms 78.401 ms 66.332 ms

    *Clientes Windows utilizam tracert 123.123.123.1

    O que podemos concluir com esse traceroute?

    Meus pacotes entram no AS 200, depois no AS 222 e chegam ao seu destino.

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    88

    2.4 Utilizando um Looking Glass

    Qual critrio o meu router (primeiro salto) utilizou para considerar esse caminho como melhor?

    Vamos entender:

    Notem que em nenhuma das rotas h qualquer valor no atributo "weight" que o primeiro critrio, em segundo verificado o "localpref" que nos dois casos est em 100 (empate), o algoritmo de seleo de rotas segue ento para o prximo "critrio de desempate" (menor AS Path) onde a rota #2 foi mais feliz.

    GX-R1>sh ip bgp 123.123.123.1BGP routing table entry for 123.0.0.0/8, version 7Paths: (2 available, best #2, table Default-IP-Routing-Table) Not advertised to any peer 100 111 55 123 100.X.1.1 from 100.X.1.1 (100.100.100.1) Origin IGP, localpref 100, valid, external 200 222 123 200.X.1.1 from 200.X.1.1 (200.200.200.1)Origin IGP, localpref 100, valid, external, best

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    89

    2.4 Utilizando um Looking Glass

    #Conectar-se ao looking Glass

    Os pacotes seguiram o seguinte caminho: AS 222 depois AS 200 e finalmente AS X.

    [email protected]:~$ telnet 123.123.123.1...

    AS-123-R1>traceroute X.128.0.1Type escape sequence to abort.Tracing the route to 1.0.1.1 1 123.222.2.2 8 msec 8 msec 12 msec 2 222.222.1.2 [AS 222] 12 msec 40 msec 12 msec 3 222.200.10.2 [AS 222] 24 msec 28 msec 12 msec 4 200.200.1.2 [AS 200] 52 msec 24 msec 56 msec 5 200.X.1.2 [AS 200] 56 msec 24 msec 28 msec 6 X.128.0.1 [AS X] 64 msec 64 msec 28 msec

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    90

    2.4 Utilizando um Looking Glass

    Verifique agora que o mesmo critrio (menor AS Path) fez o router decidir pelo "mesmo caminho para alcanar o notebook do aluno:

    AS-123-R1>sh ip bgp X.128.0.1BGP routing table entry for X.0.0.0/8, version 45Paths: (2 available, best #2, table Default-IP-Routing-Table) Advertised to non peer-group peers: 123.55.2.2 55 111 100 X 123.55.2.2 from 123.55.2.2 (55.55.55.2) Origin IGP, localpref 100, valid, external 222 200 X 123.222.2.2 from 123.222.2.2 (222.222.222.2) Origin IGP, localpref 100, valid, external, best

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    91

    PERGUNTAS?PERGUNTAS?

    2.4

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    92

    Fail-Over Automtico

    2.5

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    93

    2.5 Fail-Over automtico

    Utilizando a rota alternativa

    Vamos simular um problema tcnico no AS200 deligando seus CPE's...

    aguardem alguns instantes...

    GX-R1# terminal monitor5d06h: %BGP-5-ADJCHANGE: neighbor 200.X.1.1 Down ...

    LAB 1-2-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    94

    2.5 Fail-Over automtico

    Agora execute novamente um traceroute a partir do seu laptop:

    Com o AS 200 down ,os pacotes entram no AS 100, depois no AS 111, e s depois de passar no AS 55 alcanam o destino (looking glass).

    [email protected]:~$ traceroute 123.123.123.1 -ntraceroute to 123.123.123.1 (123.123.123.1), 30 hops max, 60 byte packets 1 X.128.0.254 3.118 ms 3.492 ms 3.482 ms 2 100.X.1.1 11.808 ms 11.799 ms 17.716 ms 3 100.100.1.1 38.856 ms 42.330 ms 21.847 ms 4 111.100.10.1 38.422 ms 108.815 ms 108.392 ms 5 111.111.1.1 133.799 ms 69.868 ms 133.367 ms 6 55.111.2.1 110.819 ms 107.647 ms 65.948 ms 7 55.55.1.1 138.345 ms 129.942 ms 129.917 ms 8 123.55.2.1 115.805 ms * *[email protected]:~$

    LAB 1-2-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    95

    2.5 Fail-Over automtico

    Agora note que a rota alternativa (mais distante) passou a ser utilizada e o "melhor caminho" que havia no existe mais, restando apenas o "pior caminho" que dadas as circunstncias, passou a ser um "timo" caminho:GX-R1>sh ip bgp 123.123.123.1BGP routing table entry for 123.0.0.0/8, version 16Paths: (1 available, best #1, table Default-IP-Routing-Table) Not advertised to any peer 100 111 55 123 100.X.1.1 from 100.X.1.1 (100.100.100.[1-3]) Origin IGP, localpref 100, valid, external, best

    LAB 1-2-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    96

    2.5 Fail-Over automtico

    Vamos verificar no ponto de vista do Looking Glass:[email protected]:~$ telnet 123.123.123.1Trying 123.123.123.1...Connected to 123.123.123.1.Escape character is '^]'.

    User Access Verification

    Password: 123AS-123-R1>traceroute X.128.0.1

    Type escape sequence to abort.Tracing the route to 1.0.1.1

    1 123.55.2.2 8 msec 8 msec 4 msec 2 55.55.1.2 [AS 55] 12 msec 24 msec 16 msec 3 55.111.2.2 [AS 55] 32 msec 28 msec 40 msec 4 111.111.1.2 [AS 111] 52 msec 36 msec 64 msec 5 111.100.10.2 [AS 111] 56 msec 48 msec 52 msec 6 100.100.1.2 [AS 100] 84 msec 60 msec 64 msec 7 100.X.1.2 [AS 100] 84 msec 88 msec 60 msec 8 X.128.0.1 [AS 1] 92 msec 68 msec 96 msec

    LAB 1-2-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    97

    2.5 Fail-Over automtico

    Verifiquem que o looking glass escolhe o caminho mais longo para chegar ao notebook do aluno:*agora a nica rota disponvel

    E essa mensagem "advertised to... 123.222.2.2" ?

    Nos slides anteriores era "advertised to 123.55.2.2"

    Vamos ver o debug do as 123 aps um clear ip bgp

    Mas deixa claro que a(s) rede(s) do(s) aluno(s) esto sendo anunciadas para o as 222, e consequentemente para o AS 200

    Vamos comprovar...

    AS-123-R1>sh ip bgp X.128.0.1BGP routing table entry for 1.0.0.0/8, version 49Paths: (1 available, best #1, table Default-IP-Routing-Table) Advertised to non peer-group peers: 123.222.2.2 55 111 100 X 123.55.2.2 from 123.55.2.2 (55.55.55.2) Origin IGP, localpref 100, valid, external, best

    LAB 1-2-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    98

    2.5 Fail-Over automtico

    Partindo do laptop vamos tentar alcanar o AS 200...

    Agora alcanamos o AS 200 pelo caminho mais longo possvel, AS 100, AS 111, AS 55, AS 123, AS 222 e finalmente AS 200.

    Vamos analisar...

    [email protected]:~$ traceroute 200.200.200.10 -ntraceroute to 200.200.200.10 (200.200.200.10), 30 hops max, 60 byte packets 1 X.128.0.254 6.128 ms 6.510 ms 6.501 ms 2 100.X.1.1 19.342 ms 19.735 ms 68.139 ms 3 100.100.1.1 100.368 ms 68.527 ms 99.945 ms 4 111.100.10.1 68.506 ms 79.031 ms 100.321 ms 5 111.111.1.1 78.604 ms 68.467 ms 68.456 ms 6 55.111.2.1 45.810 ms 39.272 ms 127.491 ms 7 55.55.1.1 136.322 ms 123.845 ms 114.650 ms 8 123.55.2.1 113.618 ms 123.932 ms 112.493 ms 9 123.222.2.2 161.647 ms 101.636 ms 111.676 ms10 222.222.1.2 161.596 ms 176.097 ms 183.647 ms11 222.200.10.2 154.398 ms 122.534 ms 101.285 ms

    LAB 1-2-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    99

    2.5 Fail-Over automtico

    Verifiquem as entradas para a rede em que faz parte o IP do AS-200-R10:

    Observe o AS Path, precisamos dar a "volta ao mundo" para alcanar o AS 200.

    Discutiremos solues alternativas nos prximos captulos.

    GX-R1>sh ip bgp 200.200.200.10BGP routing table entry for 200.0.0.0/8, version 20Paths: (1 available, best #1, table Default-IP-Routing-Table) Not advertised to any peer 100 111 55 123 222 200 100.X.1.1 from 100.X.1.1 (100.100.100.1) Origin incomplete, localpref 100, valid, external, best

    LAB 1-2-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    100

    2.5 Fail-Over automtico

    A mesma coisa pode ser observada a partir do R10 do AS 200

    O novo caminho fica bem mais longo, mas no fica fora

    [email protected]:~$ telnet 200.200.200.10Trying 200.200.200.10Connected to 200.200.200.10Escape character is '^]'.

    AS-200-R10>sh ip bgp X.0.0.0BGP routing table entry for X.0.0.0/8, version 77Paths: (1 available, best #1, table Default-IP-Routing-Table) Advertised to peer-groups: IBGP 222 123 55 111 100 X 222.200.10.1 from 222.200.10.1 (222.222.222.1) Origin IGP, localpref 100, valid, external, best

    LAB 1-2-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    101

    2.5 Fail-Over automtico

    Concluses:

    O protocolo BGP trata praticamente sozinho os problemas de queda nos links.

    Porm no tem como entender certas variveis que fazem o link A ser mais vivel que o link B, ou mesmo quando precisamos somar 2 links.

    Em outras palavras, se tenho contratados 100Mbs de trnsito com o AS 100 e apenas 50 com o AS 200, seria invivel ter o link do AS 200 como principal, e nesse caso precisamos "interferir" na deciso do protocolo BGP manipulando certos atributos.

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    102

    PERGUNTAS?PERGUNTAS?

    2.5

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    103

    Escolhendo o Melhor Link

    2.6

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    104

    2.6 Escolhendo o melhor link

    Considere quase toda a minha demanda de trnsito vindo sempre do AS 123 as seguintes situaes:

    O link entre o AS 222 e 200 est passando por dificuldades.

    A negociao com o AS 100 me garantiu um preo que me permitiu dobrar a banda contratada.

    Algum outro motivo que me obrigue a utilizar o AS 100 como link principal e o as 200 como backup.

    Como vimos anteriormente, o BGP escolhe por padro o as 200, vamos modificar essa escolha...

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    105

    2.6 Escolhendo o melhor link

    Alterando o atributo Weight:

    Vamos verificar como ficaram as rotas BGP...

    GX-R1#configure terminalGX-R1(config)#router bgp XGX-R1(config-router)#neighbor 100.X.1.1 weight 10GX-R1(config-router)#end!--- agora vamos efetuar um clear na sesso BGPGX-R1#clear ip bgp 100.X.1.1

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    106

    2.6 Escolhendo o melhor link

    Analisando a rota para rede do looking glass aps a mudana no atributo:

    Acabamos de forar o router a escolher a rota #2, j que o primeiro critrio o atributo weight, a rota 2# foi escolhida como melhor mesmo com um as path MAIOR.

    GX-R1#sh ip bgp 123.123.123.1BGP routing table entry for 123.0.0.0/8, version 35Paths: (2 available, best #2, table Default-IP-Routing-Table) Not advertised to any peer 200 222 123 200.X.1.1 from 200.1.1.1 (200.200.200.1) Origin IGP, localpref 100, valid, external

    100 111 55 123 100.X.1.1 from 100.X.1.1 (100.100.100.1) Origin IGP, localpref 100, weight 10, valid, external, best

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    107

    2.6 Escolhendo o melhor link

    Testando...

    Executem um traceroute do seu laptop para 123.123.123.1...

    Caso a mudana no weight tenha sido bem sucedida os pacotes seguiram a rota pelo AS 100 ao invs do AS 200.

    Porm isso resolve apenas "metade" do meu problema conforme veremos no slide seguinte...

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    108

    2.6 Escolhendo o melhor link

    Ping extendido:GX-R1#pingProtocol [ip]:Target IP address: 123.123.123.1Repeat count [5]: 2Datagram size [100]:Timeout in seconds [2]:Extended commands [n]: ySource address or interface: X.128.0.254Type of service [0]:Set DF bit in IP header? [no]:Validate reply data? [no]:Data pattern [0xABCD]:Loose, Strict, Record, Timestamp, Verbose[none]: recordNumber of hops [ 9 ]:Loose, Strict, Record, Timestamp, Verbose[RV]:Sweep range of sizes [n]:Type escape sequence to abort.Sending 2, 100-byte ICMP Echos to 192.168.100.1, timeout is 2 seconds:Packet sent with a source address of 172.16.32.1Packet has IP options: Total option bytes= 39, padded length=40 Record route: (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0)

    (...continua...) LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    109

    2.6 Escolhendo o melhor link

    Ping extendido:(...continuao...) (0.0.0.0)

    Reply to request 0 (152 ms). Received packet has options Total option bytes= 40, padded length=40 Record route: (100.X.1.2) (100.100.2.2) (111.100.1.2) (111.111.2.2) (55.111.1.2) (55.55.2.2) (123.55.1.2) (123.123.123.1) (123.222.1.1) *essa interface pelo qual o ping foi respondido

    End of list

    Success rate is 100 percent (2/2), round-trip min/avg/max = 116/134/152 msGX-R1#

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    110

    2.6 Escolhendo o melhor link

    Agora verificar o ponto de vista do looking glass testando a partir dele:

    Como podemos verificar, o AS 123 continua escolhendo a mesma rota, uma vez que a mudana no atributo weight, teve influncia apenas no meu UPLOAD, sendo assim, meu download continua chegando pelo AS 200 (menor AS PATH no ponto de vista do AS 123).

    No tenho como pedir que o AS 123 altere os seus atributos, preciso convenc-los de outra forma a mudar de rota.

    [email protected]:~ telnet 123.123.123.1

    !--- Efetuem um traceroute para o seu laptop

    AS-123-R1>traceroute para X.128.0.1

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    111

    2.6 Escolhendo o melhor link

    Fazendo anncios mais especficos para o AS 100

    Como mencionado anteriormente, os atributos BGP s so analisados quando h um empate de prefixo, porm quando h um prefixo MAIS ESPECFICO os atributos so ignorados.

    Quais blocos anunciar para cada AS?

    Dividiremos em 2 blocos /9 para o as 100 e o /8 para o AS 200.

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    112

    2.6 Escolhendo o melhor link

    Configurando os anncios mais especficos:

    GX-R1#conf terminal GX-R1(config)#ip prefix-list LAB-1-3-1-ANUNCIAR-AS-100 permit X.0.0.0/9GX-R1(config)#ip prefix-list LAB-1-3-1-ANUNCIAR-AS-100 permit X.128.0.0/9!--- adiciona 2 prefixos /9 dentro da lista ANUNCIAR-AS-100

    GX-R1(config)#ip prefix-list LAB-1-3-1-ANUNCIAR-AS-200 permit X.0.0.0/8 !--- adiciona o classe A inteiro dentro da lista ANUNCIAR-AS-100GX-R1(config)#router bgp X!--- adiciona 2 prefixos /9 dentro da lista ANUNCIAR-AS-100GX-R1(config-router)#network X.0.0.0 mask 255.128.0.0GX-R1(config-router)#network X.128.0.0 mask 255.128.0.0!--- alm do anuncio local do classe A, inserimos mais 2 prefixos /9 a serem!--- a serem anunciados pelo router

    GX-R1(config-router)#neighbor 200.X.1.1 prefix-list LAB-1-3-1-ANUNCIAR-AS-200 out !--- declara que esse anuncios de saida (out) para esse neighbor serao filtrados

    GX-R1(config-router)#neighbor 100.X.1.1 prefix-list LAB-1-3-1-ANUNCIAR-AS-100 out !--- declara que esse anuncios de saida (out) para esse neighbor serao filtrados GX-R1(config-router)#end

    GX-R1#clear ip bgp * softLAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    113

    2.6 Escolhendo o melhor link

    Verificando anncios para o AS 200:

    Agora para o AS 100:

    Estamos anunciando apenas um dos blocos /9 para o AS 100, por que?

    Gx-R1#sh ip bgp neighbors 200.x.1.1 advertised-routes BGP table version is 13, local router ID is 2.2.2.2Status codes: s suppressed, d damped, h history, * valid, > best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> x.0.0.0 0.0.0.0 0 32768 iGx-R1#

    Gx-R1#sh ip bgp neighbors 100.x.1.1 advertised-routes

    Network Next Hop Metric LocPrf Weight Path*> x.128.0.0/9 0.0.0.0 0 32768 i

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    114

    2.6 Escolhendo o melhor link

    Apenas um prefixo pertencente ao meu classe A est na FIB:

    O comando longer-prefixes mostraria rotas para qualquer sub-rede dentro do bloco /8 pesquisado, porm temos o primeiro /9 diretamente conectado f0/0 e um /32 na Loopback0.

    Gx-R1#sh ip route x.0.0.0 longer-prefixes ...

    Gateway of last resort is not set

    x.0.0.0/8 is variably subnetted, 2 subnets, 2 masksC x.x.x.x/32 is directly connected, Loopback0C x.128.0.0/9 is directly connected, FastEthernet0/0

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    115

    2.6 Escolhendo o melhor link

    Precisamos primeiramente garantir que as redes que quero anunciar estejam em minha FIB:

    Agora que tenho os 2 blocos /9 em minha FIB vamos verificar novamente os anncios para o AS 100...

    Gx-R1#conf tGx-R1(config)#ip route x.0.0.0 255.128.0.0 null0!--- faremos apenas para o primeiro /9 j que o segundo est OKGx-R1(config)#endGx-R1#Gx-R1#sh ip route x.0.0.0 longer-prefixes ...Gateway of last resort is not set

    x.0.0.0/8 is variably subnetted, 3 subnets, 2 masksC x.x.x.x/32 is directly connected, Loopback0S x.0.0.0/9 is directly connected, Null0C x.128.0.0/9 is directly connected, FastEthernet0/0

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    116

    2.6 Escolhendo o melhor link

    Agora que tenho os 2 blocos /9 em minha FIB vamos verificar novamente os anncios para o AS 100...

    Agora estamos fazendo corretamente o anncio dos dois blocos /9 para o AS 100.

    Gx-R1#sh ip bgp neighbors 100.x.1.1 advertised-routes BGP table version is 11, local router ID is 2.2.2.2Status codes: s suppressed, d damped, h history, * valid, > best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> x.0.0.0/9 0.0.0.0 0 32768 i*> x.128.0.0/9 0.0.0.0 0 32768 iGx-R1#

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    117

    2.6 Escolhendo o melhor link

    Vamos novamente entrar no looking glass e verificar as rotas para classe A do grupo:

    Dessa forma, a rota em vermelho nunca usada, pois existem dois blocos mais especficos, fazendo com que o LG sempre alcance os AS's dos grupos atravs do AS 100.

    AS-123-R1>sh ip bgp X.0.0.0/8 longer-prefixes BGP table version is 30, local router ID is 123.123.123.1Status codes: s suppressed, d damped, h history, * valid, > best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> X.0.0.0/9 123.55.2.2 0 55 111 100 X i*> X.0.0.0 123.222.2.2 0 222 200 X i*> X.128.0.0/9 123.55.2.2 0 55 111 100 X iAS-123-R1>

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    118

    2.6 Escolhendo o melhor link

    Verificando caminho percorrido com o comando traceroute:

    No incio foramos o upload pelo AS 100, e agora tambm o download pelo AS 100.

    AS-123-R1>traceroute X.128.0.1

    Type escape sequence to abort.Tracing the route to X.128.0.1

    1 123.55.2.2 20 msec 24 msec 12 msec 2 55.55.1.2 [AS 55] 32 msec 32 msec 44 msec 3 55.111.2.2 [AS 55] 20 msec 36 msec 32 msec 4 111.111.1.2 [AS 111] 40 msec 56 msec 36 msec 5 111.100.10.2 [AS 111] 88 msec 28 msec 56 msec 6 100.100.1.2 [AS 100] 76 msec 52 msec 76 msec 7 100.2.1.2 [AS 100] 64 msec 56 msec 60 msec 8 X.128.0.2 [AS X] 60 msec 60 msec 80 msecAS-123-R1>

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    119

    2.6 Escolhendo o melhor link

    Agora vamos voltar ao normal e remover o Weight 10 para todas as rotas recebidas do AS 100

    Vamos verificar como ficaram as rotas BGP...

    GX-R1#configure terminalGX-R1(config)#router bgp XGX-R1(config-router)#no neighbor 100.X.1.1 weight 10GX-R1(config-router)#end!--- agora vamos efetuar um clear na sesso BGPGX-R1#clear ip bgp 100.X.1.1

    LAB 1-3-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    120

    PERGUNTAS?PERGUNTAS?

    2.6

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    121

    Balanceando os Links

    2.7

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    122

    2.7-Balanceando os links

    Vamos agora considerar uma situao de necessidade de utilizar os dois links de maneira balanceada.

    Dividiremos cada metade do /8 para cada AS.

    Anunciaremos o primeiro /9 para o AS 100 e o segundo /9 para o AS 200 fazendo com que o nosso trfego inbound seja divido em 50% para cada link.

    A lgica a mesma, o que faremos diferente do lab anterior um detalhe para o fail-over.

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    123

    2.7-Balanceando os links

    Vamos entrar no looking glass e ver o resultado:

    AS-123-R1>sh ip bgp X.0.0.0/8 longer-prefixes ... Network Next Hop Metric LocPrf Weight Path*> X.0.0.0/9 123.55.1.2 0 55 111 100 X i* X.0.0.0 123.55.1.2 0 55 111 100 X i*> 123.222.1.2 0 222 200 X i*> X.128.0.0/9 123.222.1.2 0 222 200 X iAS-123-R1>

    Agora testar o caminho para os 2 blocos /9.

    LAB 1-4-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    124

    2.7-Balanceando os links

    Vamos criar duas novas prefix-lists e adiciona-las como filtro de SADA para cada AS de trnsito:

    GX-R1#conf terminal GX-R1(config)#ip prefix-list LAB-1-4-1-ANUNCIAR-AS-100 permit X.0.0.0/8GX-R1(config)#ip prefix-list LAB-1-4-1-ANUNCIAR-AS-100 permit X.0.0.0/9!--- adiciona 2 prefixos /9 dentro da lista ANUNCIAR-AS-100

    GX-R1(config)#ip prefix-list LAB-1-4-1-ANUNCIAR-AS-200 permit X.0.0.0/8 GX-R1(config)#ip prefix-list LAB-1-4-1-ANUNCIAR-AS-200 permit X.128.0.0/9 !--- adiciona o classe A inteiro dentro da lista ANUNCIAR-AS-100GX-R1(config)#router bgp X!--- adiciona 2 prefixos /9 dentro da lista ANUNCIAR-AS-100

    GX-R1(config-router)#neighbor 200.X.1.1 prefix-list LAB-1-4-1-ANUNCIAR-AS-200 out !--- declara que esse anuncios de saida (out) para esse neighbor serao filtrados

    GX-R1(config-router)#neighbor 100.X.1.1 prefix-list LAB-1-4-1-ANUNCIAR-AS-100 out !--- declara que esse anuncios de saida (out) para esse neighbor serao filtrados GX-R1(config-router)#end

    GX-R1#clear ip bgp * soft

    LAB 1-4-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    125

    2.7-Balanceando os links

    AS-123-R1>traceroute X.X.X.X

    Type escape sequence to abort.Tracing the route to X.X.X.1

    1 123.55.2.2 8 msec 16 msec 16 msec 2 55.55.1.2 [AS 55] 44 msec 12 msec 16 msec 3 55.111.2.2 [AS 55] 24 msec 32 msec 32 msec 4 111.111.1.2 [AS 111] 48 msec 28 msec 48 msec 5 111.100.10.2 [AS 111] 48 msec 48 msec 56 msec 6 100.100.1.2 [AS 100] 60 msec 88 msec 112 msecAS-123-R1>

    Primeiro /9 (Loopback do router):

    Caminho 55,111,100

    LAB 1-4-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    126

    2.7-Balanceando os links

    Segundo /9 (ip do laptop):

    Caminho 222,200

    AS-123-R1#traceroute X.128.0.1

    Type escape sequence to abort.Tracing the route to X.128.0.1

    1 123.222.2.2 24 msec 4 msec 32 msec 2 222.222.1.2 [AS 222] 40 msec 8 msec 16 msec 3 222.200.10.2 [AS 222] 32 msec 24 msec 16 msec 4 200.200.1.2 [AS 200] 56 msec 4 msec 28 msec 5 200.2.1.2 [AS 200] 92 msec 20 msec 40 msec 8 X.128.0.1 [AS 2] 64 msec 47 msec 33 msecAS-123-R1#

    LAB 1-4-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    127

    2.7-Balanceando os links

    Simulao de problemas nos CE's do AS 100... Todos verificam a mudana!

    Simulao de problemas nos CPE's do AS 200... Todos verificam a mudana!

    LAB 1-4-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    128

    2.7-Balanceando os links

    OBS: Para um balanceamento assimtrico mudaramos os anncios, quebrando para blocos cada vez mais especficos

    Nunca esquecer de que o balanceamento baseado em anncios especficos depende da distribuio dos IPs dentro do meu AS.

    LAB 1-4-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    129

    Implementando Alta

    Disponibilidade com VRRP

    2.8

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    130

    2.8- Implementando Alta Disponibilidade com VRRP

    O cenrio permanece o mesmo, porm com um router identico como backup.

    A ideia que todos os dois links continuem 100% operacional mesmo que o router principal fique totalmente fora.

    LAB 1-5-1

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    131

    Antes de configurar o router BACKUP, vamos NOVAMENTE anunciar apenas um bloco /8 para cada operadora:

    Criando as prefix-lists:GX-R1(config)#router bgp XGX-R1(config-router)#neighbor 200.X.1.1 prefix-list MEUS-BLOCOS out

    !---mudar o filtro na sada do AS 200

    GX-R1(config-router)#neighbor 100.X.1.1 prefix-list MEUS-BLOCOS out !--- mudar o filtro na sada do AS 100

    GX-R1(config-router)#endGX-R1#clear ip bgp *

    LAB 1-5-1

    2.8- Implementando Alta Disponibilidade com VRRP

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    132

    O segundo router responde pelo IP X.128.0.253 Verifiquem a conectividade IP e em caso positivo abram

    uma sesso telnet da mesma forma que fizemos com GX-R1:[email protected]# telnet X.128.0.253

    Trying X.128.0.253...

    Connected to X.128.0.253.

    Escape character is '^]'.

    User Access Verification

    Password: A senha de acesso tambm 123

    LAB 1-5-1

    2.8- Implementando Alta Disponibilidade com VRRP

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    133

    Estamos agora no modo usurio:GX-R2>

    A senha de enable mudou:G1-R2>enable

    Password: gXr2GX-R2#

    Todos os outros passos so semelhantes...GX-R2#terminal monitor

    GX-R2#configure terminal

    Enter configuration commands, one per line. End with CNTL/Z.

    GX-R2(config)#

    LAB 1-5-1

    2.8- Implementando Alta Disponibilidade com VRRP

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    134

    Precisamos aplicar as MESMAS configuraes, com exceo dos endereos de neighbor:

    !-- ATENO as configuraes so em Gx-R2

    !-- observem a mudana no IP de neighbor

    GX-R2(config)# router bgp X

    GX-R2(config-router)#

    network x.0.0.0 mask 255.0.0.0no auto-summaryneighbor 100.X.2.1 remote-as 100 neighbor 100.X.2.1 description eBGP com as 100neighbor 200.X.2.1 remote-as 200 neighbor 200.X.2.1 description eBGP com as 200

    LAB 1-5-1

    2.8- Implementando Alta Disponibilidade com VRRP

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    135

    Criando as prefix-lists:GX-R2(config)#ip prefix-list MEUS-BLOCOS permit X.0.0.0/8

    !--- adiciona o bloco do AS do grupo na lista MEUS-BLOCOSGX-R2(config)#ip route X.0.0.0 255.0.0.0 null 0

    GX-R2(config)#router bgp XGX-R2(config-router)#neighbor 200.X.2.1 prefix-list MEUS-BLOCOS out

    !---aplicar o mesmo filtro na sada do AS 200

    GX-R2(config-router)#neighbor 100.X.2.1 prefix-list MEUS-BLOCOS out !--- aplicar o mesmo filtro na sada do AS 100

    GX-R2(config-router)#endGX-R2#clear ip bgp *

    LAB 1-5-1

    2.8- Implementando Alta Disponibilidade com VRRP

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    136

    Verificando o status das sesses BGP recm-criadas:GX-R2#sh ip bgp summary Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

    100.X.2.1 4 100 192 170 9 0 0 00:00:48 7

    200.X.2.1 4 200 191 181 9 0 0 00:00:51 7

    O nmero de PfxRcd vai ser maior a medida que os alunos estabeleceram suas conexes.

    LAB 1-5-1

    2.8- Implementando Alta Disponibilidade com VRRP

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    137

    Verificando as rotas recebidas aps o filtro de sada:

    GX-R2>sh ip bgp neighbors 100.X.2.1 advertised-route BGP table version is 24, local router ID is X.X.X.XStatus codes: s suppressed, d damped, h history, * valid, > best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> X.0.0.0 0.0.0.0 0 32768 i

    GX-R2>sh ip bgp neighbors 200.X.2.1 advertised-routes BGP table version is 24, local router ID is X.X.X.XStatus codes: s suppressed, d damped, h history, * valid, > best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path*> X.0.0.0 0.0.0.0 0 32768 i

    LAB 1-5-1

    2.8- Implementando Alta Disponibilidade com VRRP

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    138

    O prximo passo a criao da interface virtual, mas o que VRRP afinal?

    Virtual Router Redundancy Protocol cria uma interface, um MAC e um ip virtual, e todos os routers do grupo VRRP conhecem essas informaes. No momento em que o router master fica fora, o primeiro candidato levanta imediatamente o IP virtual, de maneira que os hosts da rede no percebem essa comutao, e ao mesmo tempo no tem problemas com ARP, j que o MAC no muda.

    LAB 1-5-1

    2.8- Implementando Alta Disponibilidade com VRRP

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    139

    O prximo passo a criao da interface virtual, mas o que VRRP afinal?

    2.8- Implementando Alta Disponibilidade com VRRP

    Vrios roteadores podem fazer parte de uma mesma VRRP. Para definir quem o router master e quem assume nas situaes de falha, alteramos o valor de priority na configurao do grupo VRRP.

    Vamos segunda parte do LAB...

    LAB 1-5-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    140

    Vamos configurar uma VRRP na interface lan e garantir que GX-R1 seja o router master:

    2.8- Implementando Alta Disponibilidade com VRRP

    GX-R1#conf tGX-R1(config)#interface fastEthernet 0/0GX-R1(config-if)#vrrp X ip X.128.0.252GX-R1(config-if)#vrrp X priority 2 GX-R1(config-if)#vrrp X timers advertise 1GX-R1(config-if)#vrrp X preempt delay minimum 160GX-R1(config-if)#endGX-R1#debug vrrp state VRRP State debugging is onGX-R1#wr

    GX-R2#conf tGX-R2(config)#interface fastEthernet 0/0GX-R2(config-if)#vrrp X ip X.128.0.252GX-R2(config-if)#vrrp X priority 1 GX-R2(config-if)#vrrp X timers learnGX-R2(config-if)#vrrp X preempt delay minimum 160GX-R2(config-if)#endGX-R2#debug vrrp state VRRP State debugging is onGX-R2#wr

    LAB 1-5-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    141

    Vamos verificar o status...

    2.8- Implementando Alta Disponibilidade com VRRP

    GX-R1#sh vrrp brief Interface Grp Pri Time Own Pre State Master addr Group addrFa0/0 X 2 3992 Y Master X.128.0.254 X.128.0.252 GX-R1#

    GX-R2#sh vrrp brief Interface Grp Pri Time Own Pre State Master addr Group addrFa0/0 X 1 3992 Y Backup X.128.0.254 X.128.0.252 GX-R2#

    LAB 1-5-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    142

    Agora simularemos uma falha em GX-R1

    2.8- Implementando Alta Disponibilidade com VRRP

    Notem que h um tempo mdio de 4 minutos at que a comutao acontea para o router backup

    Por que todo esse tempo?

    X

    LAB 1-5-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    143

    Quando o router R1 fica fora, os CPE's das operadoras passam algum tempo pensando que ele ainda est UP

    2.8- BGP Timers

    Cada router envia uma mensagem keep alive a cada 60 segundos (por padro)

    Quando um keep alive atrasa, o CPE da operadora ativa uma contagem chamada hold time (padro 180 segundos)

    Se at o final do hold time no chegar um keep alive o CPE da operadora finaliza a sesso BGP com R1.

    Imediatamente o CPE percebe que h uma outra opo disponvel para a rede X.0.0.0/8 e instala em sua FIB

    Vamos alterar os valores de keep alive e hold time para 5 e 15 segundos respectivamente...

    X

    LAB 1-5-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    144

    Vamos alterar os timers padro para diminuir o downtime

    2.8- BGP Timers

    GX-R1(config)#router bgp XGX-R1(config-router)#neighbor 100.X.1.1 timers 5 15GX-R1(config-router)#neighbor 200.X.1.1 timers 5 15!--- muda o tempo de keep alive para 5 segundos !--- e o hold time para 15 segundosGX-R1(config-router)#endGX-R1#clear ip bgp *

    GX-R2(config)#router bgp XGX-R2(config-router)#neighbor 100.X.2.1 timers 5 15GX-R2(config-router)#neighbor 200.X.2.1 timers 5 15!--- muda o tempo de keep alive para 5 segundos !--- e o hold time para 15 segundosGX-R2(config-router)#endGX-R2#clear ip bgp *

    LAB 1-5-2

  • v3.0 | autor: Rinaldo Vaz | [email protected]

    145

    Vamos testar novamente...

    2.8- BGP Timers

    X O tempo paralizao diminuiu de cerca de 3 minutos para 15

    segundos

    importante lembrar que nesse lab utilizamos interfaces seriais, e o bgp fast-external-fallover vem habilitado por padro e faz o BGP automaticamente finalizar a sesso