Application Notes: BGP. Treinamento sobre o protocolo de roteamento L3 BGP



Documentos relacionados
Professor Guerra Faculdades Santa Cruz.

CURSO AVANÇADO DE BGP DESIGN COM ROTEADORES CISCO

Application Notes: VRRP. Aplicabilidade do Virtual Router Redundancy Protocol no DmSwitch

BGP Border Gateway Protocol

Curso de extensão em Administração de Redes

7.1 AS DE TRÂNSITO NO PTT. autor: Rinaldo Vaz 1

Redes de Computadores II

Prof. Samuel Henrique Bucke Brito

Estudo de Caso de Sistema Autônomo (AS) com Conexão a PTT Local, Remoto e Provedores de Trânsito

Configurar a redistribuição de rotas do Internal BGP no IGP

Usando valores da comunidade do BGP para controlar a política de roteamento na rede de provedor de upstream

3.1 PEERING x TRÂNSITO. autor: Rinaldo Vaz rinaldopvaz@gmail.com 1

REDES MPLS BGP PROFESSOR: MARCOS A. A. GONDIM

Arquitetura de Rede de Computadores

Na Figura a seguir apresento um exemplo de uma "mini-tabela" de roteamento:

Redes de Computadores. Aula: Border Gateway Protocol - BGP Professor: Jefferson Silva

Configurando o recurso BGP Local-AS

Roteamento no PTT. PRIX - PTT-Metro de Curitiba/PR. GTER-23 - Belo Horizonte - 29 de Junho 2007

Redes de Computadores II INF-3A

Application Notes: VLAN-Translate & QinQ. Utilização e exemplos de aplicação

A camada de rede. A camada de rede. A camada de rede. 4.1 Introdução. 4.2 O que há dentro de um roteador

Arquitectura de Redes

Compreendendo a agregação de rota no BGP

Entendendo como funciona o NAT

Redes de Computadores I Conceitos Básicos

Tabela de roteamento

Packet Tracer 4.0: Overview Session. Conceitos e práticas

Administração de Redes e Conectividade ao PoP-BA. III WTR do PoP-BA Luiz Barreto luiz@pop-ba.rnp.br PoP-BA: Ponto de Presença da RNP na Bahia

Arquitetura TCP/IP. Parte III Endereçamento IP e roteamento. Fabrízzio Alphonsus A. M. N. Soares

Formação para Sistemas Autônomos. Boas Práticas BGP. Formação para Sistemas Autônomos

Roteamento na Internet

OS endereços IP v.4 consistem em 4 octetos separados por pontos. Estes endereços foram separados

Introdução Introduç ão Rede Rede TCP/IP Roteame Rotea nto nto CIDR

Protocolo OSPF. O p e n S h o r t e s t P at h F i r s t. E s pec i a li s ta

DESCRIÇÃO DAS CARACTERÍSTICAS E FUNÇÕES DO PROTOCOLO BGPv4

Como funciona a internet que eu uso?

Comunicação de Dados

Redes de Alto Desempenho

Sumário. Protocolos em Redes de Dados- Aula 06 -BGP: Introdução p.4. BGP: ilustração. BGP: Border Gateway Protocol

Redes de Computadores

1. Explicando Roteamento um exemplo prático. Através da análise de uns exemplos simples será possível compreender como o roteamento funciona.

Configurando e verificando os recursos de anúncio condicional do BGP

Protocolos em Redes de Dados Ficha de Laboratório Número 4 BGP

Redes de Computadores II

Sistemas Autônomos (AS) Brasileiros Introdução

O Protocolo IP (2) Prof. José Gonçalves Pereira Filho Departamento de Informática

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento

Compreenda o lúpulo seguinte ajustado em propagandas do ibgp nos nexos NX-OS contra o Cisco IOS

Configurando e verificando os recursos de anúncio condicional do BGP

Preparando um esquema de endereçamento de sua rede

Roteamento Estático (2)

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET

PROJETO DE REDES

Exemplo de configuração para ibgp e ebgp, com ou sem um endereço de loopback

Handson Policy Based Routing

Troubleshooting Quando as Rotas de BGP Não São Publicadas

Laboratório - Visualização das tabelas de roteamento do host

DIAGRAMA DE REDE. OSPFv3

Assumiu em 2002 um novo desafio profissional como empreendedor e Presidente do Teleco.

Curso de extensão em Administração de Redes

Consulte a exposição. Qual declaração descreve corretamente como R1 irá determinar o melhor caminho para R2?

A máscara de sub-rede pode ser usada para dividir uma rede existente em "sub-redes". Isso pode ser feito para:

Solução de baixo custo para BGP usando Mikrotik Router OS GTER 31. Bruno Lopes Fernandes Cabral

Aula 20. Roteamento em Redes de Dados. Eytan Modiano MIT

Compartilhamento de carga com o BGP no ambientes únicos e multihomed: Configurações de exemplo

Formação IPv6 Maputo Moçambique 26 Agosto 29 Agosto 08 Configuração do Multiprotocol BGP

Redes de Computadores

CONFIGURAÇÃO DE ROTEADORES CISCO. Prof. Dr. Kelvin Lopes Dias Msc. Eng. Diego dos Passos Silva

SIMULADOR DE ROTEAMENTO DE PACOTES (V. 3 20/05/2010)

Endereçamento IP. Rede 2 Roteador 2 1

Protocolo TCP/IP. Neste caso cada computador da rede precisa de, pelo menos, dois parâmetros configurados:

Configurar o atributo de métrica AIGP para o BGP

Segurança de redes com Linux. Everson Scherrer Borges Willen Borges de Deus

Configurar a característica da preferência local do IPv6 BGP

Tecnologia de Redes de Computadores - aula 5

TUDO SOBRE ENDEREÇOS IP

Load Balance / Route Policy (para series Vigor 2860 / Vigor 2925)

ADDRESS RESOLUTION PROTOCOL. Thiago de Almeida Correia

CST em Redes de Computadores

Encaminhamento Inter-AS Protocolo BGP. Redes de Comunicação de Dados

Estudos de caso do BGP

TCP/IP O guia definitivo para cálculos

Capítulo 10 - Conceitos Básicos de Roteamento e de Sub-redes. Associação dos Instrutores NetAcademy - Julho de Página

RTBH Remote Triggered Black Role

APOSTILA DE REDES DE COMPUTADORES PARTE - I I

Grupo de Trabalho de Engenharia e Operação de Redes (GTER39) Conexão com PTT's utilizando Vyatta/Vyos/EdgeMAX

Projeto de Redes de Computadores. Projeto do Esquema de Endereçamento e de Nomes

Um sistema de comunicação necessita de um método de identificação de seus computadores. Numa rede TCP/IP, cada computador recebe um

Implementando IPv6 no RSiX

Vazamento de rota em redes MPLS/VPN

Redes de Computadores II

Exemplo de configuração do refletor da rota de BGP do IPv6

Configurar o buraco negro provocado telecontrole do IPV6 com IPv6 BGP

Aula 5 Cálculo de máscara e de subredes

Redes de Computadores II. Professor Airton Ribeiro de Sousa

Transcrição:

Application Notes: BGP Treinamento sobre o protocolo de roteamento L3 BGP

Application Notes: BGP Treinamento sobre o protocolo de roteamento L3 BGP. Data 07/05/2010, Revisão 1.3 Parecer Introdução Sistemas Autônomos Unindo-se à Rede Prefixos ou Rotas? Outro atributos Políticas de Roteamento Externo e Interno Desenvolvimento Básico: dois roteadores, dois AS Configurações Testes Trânsito indevido? Configurações Testes Ajustes Balanceamento de tráfego Configurações Testes Considerações Finais Parecer Este documento apresenta o leitor ao Border Gateway Protocol, responsável pelo roteamento na Internet atual. Serão listados aspectos técnicos teóricos e práticos, através da utilização deste protocolo na família DmSwitch. Introdução Para facilitar o entimento desta Introdução, são apresentados tópicos em subseções. Recoma-se a leitura atenta e na ordem, para melhor compreensão. Será abordado o BGP, Border Gateway Protocol, que utiliza-se do algoritmo de vetor distância para calcular a melhor rota a um determinado prefixo. Inicialmente é demonstrada a aplicação prática deste protocolo e seu uso no dia-a-dia, e através do estudo prático os conceitos são analisados internamente. DATACOM 1

Ao término será possível compreer tanto o protocolo, sua aplicação real, quanto a configuração necessária. Sistemas Autônomos Na Internet existem diversas organizações indepentes que possuem como objetivo comunicarem entre si, através desta rede de computadores. São exemplos destas organizações os provedores, carriers, empresas de grande porte, universidades, entre outras. Como cada entidade é administrativamente indepente, existe um conceito técnico para possibilitar a construção da rede como um todo: o Autonomous System (AS), chamado Sistema Autônomo em tradução livre para o Português. Cada organização que assim desejar pode solicitar um AS ao órgão regulador em sua região geográfica. Estas entidades e suas regiões de atuação são delegadas pela IANA (Internet Assigned Numbers Authority) e suas filiadas por região do globo. A divisão auxilia para ajustar para as necessidades de cada região, como os requisitos técnicos e financeiros. Ao receber o seu número AS, a empresa pode então pedir blocos IP a serem alocados para seu uso. Com estes blocos e o número do AS é possível então que um provedor seja contratado para oferecer acesso desta empresa ao resto da rede. Obviamente, o processo não é para muitos: poucos passam pela análise técnica necessária para a obtenção do AS. Felizmente, pois o AS originalmente possui apenas 16 bits, totalizando menos de 65536 entradas realmente disponíveis. Não será abordado o AS4, evolução para utilizar 32 bits. Unindo-se à Rede Ao realizar a contratação com o provedor, que a partir de agora nos referiremos como uplink, o novo AS pedirá para ter acesso ao BGP - um serviço adicional à conexão. A sessão BGP será estabelecida entre os roteadores, que estarão na borda dos AS. Aí se explica o nome do Protocolo de Roteadores de Borda. Com a sessão BGP estável, o roteador do novo AS enviará os seus blocos e receberá os prefixos que seu uplink assim desejar enviar. Caso sejam enviados todos os prefixos conhecidos na Internet, este será um full routing. Em Outubro/2009 este valor está em aproximadamente 301.000 prefixos únicos. Qualquer valor diferente do total será considerado partial routing, a não ser que seja enviada apenas a rota default, chamado simplesmente de default-only routing. Caso o novo AS não conecte-se a outros uplinks, o ideal é que receba apenas a default para economizar memória de seu roteador. Conforme forem contratados outros provedores para BGP, pode-se aumentar o número de prefixos a serem recebidos. Prefixos ou Rotas? Importante ressaltar aqui o termo prefixos. Um prefixo é um ereço IP e sua respectiva máscara no formato VSLM (Variable Length Subnet Mask), por exemplo: DATACOM 2

Rede: 192.168.1.0 Máscara: /24, ou 255.255.255.0 Analisando estas informações na forma binária (separando em grupos de 1 bits) Rede: 1100 0000 1010 1000 0000 0001 0000 0000 Máscara: 1111 1111 1111 1111 1111 1111 0000 0000 Sabe-se que os hosts desta rede podem estar apenas alocados através dos bits de máscara marcados com 0. Logo, seriam válidos entre 192.168.1.0 até 192.168.1.255. Alterando a máscara desta rede, obtem-se um prefixo diferente: Rede: 192.168.1.0 Máscara: /25, ou 255.255.255.128 Em binário: Rede: 1100 0000 1010 1000 0000 0001 0000 0000 Máscara: 1111 1111 1111 1111 1111 1111 1000 0000 É importante ressaltar que estes são prefixos diferentes, pois referem-se a espaços distintos de ereçamento. A rede 192.168.1.0/25, é um outro prefixo. Este conceito é importante pois caso se recebam dois anúncios BGP para um mesmo prefixo porém com caminhos (AS Path ou gateway) diferentes têm-se duas rotas distintas. É costume falar em rotas, pois é como o hardware internamente trabalhará. A divisão ocorre também conceitualmente, na definição de RIB e FIB. A Routing Information Base, base das informações de roteamento, é onde estão todos os prefixos recebidos e suas devidas rotas. Após a escolha da(s) melhor(es) rota(s), deriva-se a Forwarding Information Base, que será efetivamente utilizada pelos chips (ASIC) de comutação para atingir as melhores taxas de encaminhamento dos pacotes. Importante ressaltar que em geral escolhe-se uma única rota por prefixo, a não ser em casos especiais como no uso do ECMP (Equal Cost Multipath, não aprofundado neste documento). Outro atributos Além de comunicar os prefixos, suas rotas, e seus next-hop, o BGP ainda informa outros atributos. São alguns: prefixo e máscara; next-hop (roteador destino, não necessariamente quem comunicou a rota); AS path completo; preferência local pela rota; comunidades; protocolo (para uso no MP-BGP). DATACOM 3

Especialmente importante saber que o next-hop da rota não é necessariamente quem anunciou o prefixo, pois é um erro comum de configuração não colocar o atributo next-hop-self na comunicação com o vizinho. O AS path completo serve internamente ao protocolo para evitar loops na informação de roteamento. Por padrão, ignora-se qualquer prefixo que já possua o AS local no AS path. Desta forma, é seguro que um prefixo local não será trafegado por um caminho externo. A preferência local (local-preference) é uma configuração que afeta dentro de um mesmo AS qual a importância que uma rota sobre as outras. Pode inclusive sobrepor o cálculo original, que basea-se no menor AS path. Políticas de Roteamento O BGP, assim como os outros protocolos de roteamento, serve para anunciar as rotas dos seus vizinhos (neighbors) para os outros. Porém, no o caso deste novo AS so ativado: ele comprou conexão de outros dois provedores indepentes. Se não configurar nenhuma política de roteamento, seu precioso link poderia estar so saturado pelo tráfego entre um provedor e outro. Sim, o novo provedor estaria so usado como caminho por aqueles que deveriam fornecer os caminhos. Para evitar isso existem as já citadas políticas de roteamento. Elas consistem em limitar quais prefixos e/ou caminhos um roteador anuncia para seus vizinhos. Outros fabricantes chamam esta técnica de Policy Based Routing (PBR). No caso o provedor deve configurar para que apenas o seu prefixo e/ou seu AS sejam anunciados em cada link, e (opcionalmente) filtrar tráfego de saída quando a origem for diferente dos blocos que ele possui. Estas configurações serão apresentadas passo-a-passo ao longo da seção de Desenvolvimento. Externo e Interno Ao longo da Introdução foram exemplificados apenas os casos do BGP como protocolo de roteamento externo, o dito ebgp (e para external). Existe também o ibgp (internal), que é muito útil para sua utilização dentro de um mesmo AS. A diferença é mais sútil do que apenas a utilização de AS diferentes ou não, partindo para cálculos internos tais como manutenção de atributos das rotas, diferenciação para saída, etc. O ibgp é especialmente útil em backbones conectados de forma full-mesh, todos-com-todos, ou no formato route server, onde N (em geral, 2) roteadores servem como ponto de encontro para outros M (geralmente, mais do que 3) roteadores. A escolha do ibgp varia por muitos critérios técnicos, e por tratar de uma gama diferente de opções não será trabalhada nesta apresentação. DATACOM 4

Desenvolvimento A seção de Desenvolvimento está demonstrada de forma incremental para melhor compreensão dos conceitos introduzidos. Básico: dois roteadores, dois AS O aprizado da base do BGP necessita apenas dois roteadores, cada um operando um AS diferente. O equipamento nomeado uplink-1, possui uma configuração baseada no ereço da interface loopback e anuncia suas rotas mais uma rota default. O outro, nomeado cliente, apenas possui uma configuração mínima. Configurações Por serem de segmentos de rede diferente, recoma-se não utilizar uma VLAN tagged. Neste exemplo será criada uma VLAN com IP e configuração untagged na porta entre os equipamentos. Depois esta VLAN será colocada em uma instância única de vlan-group para evitar que protocolos como STP ajam. Para efeitos práticos, considerar as configurações abaixo a partir da default-config. A lista dos atributos so configurados segue abaixo. VLAN utilizada no ponto-a-ponto: 10 Endereçamento IP: 10.0.0.0/30 (.1 uplink-1,.2 cliente) Portas utilizadas: 1/1 no uplink-1 (DM4001), 1/28 no cliente (DmSwitch3324F2) AS: 1 (uplink-1) 65000 (cliente) IPs interface loopback: 100.0.0.1/32 (uplink-1) O uplink-1 comunica-se através da loopback 0, que é conhecida no cliente via rota estática. Existe a configuração de ebgp-multihop para que a conexão seja estabelecida com a loopback remota. O uplink está anunciando uma rota default apenas. DATACOM 5

Ambos os roteadores estão reescrevo as rotas anunciadas colocando-se como next-hop. O soft-reconfiguration inbound auxilia para atualizações mais dinâmicas no protocolo, sem necessitar um clear ip bgp a cada mudança de configuração. Roteador uplink-1 hostname uplink-1 ip routing interface loopback 0 ip address 100.0.0.1/32 interface vlan 10 set-member untagged ethernet 1/1 ip address 10.0.0.1/30 interface ethernet 1/1 switchport native vlan 10 description Cliente interface vlan 1 no set-member ethernet 1/1 vlan-group 10 vlan-group 10 vlan 10 router bgp 1 bgp router-id 100.0.0.1 neighbor 10.0.0.2 remote-as 65000 neighbor 10.0.0.2 next-hop-self neighbor 10.0.0.2 soft-reconfiguration inbound neighbor 10.0.0.2 update-source 100.0.0.1 neighbor 10.0.0.2 default-originate Roteador cliente hostname cliente ip routing interface vlan 10 set-member untagged ethernet 1/28 ip address 10.0.0.2/30 interface ethernet 1/28 switchport native vlan 10 description Uplink-1 interface vlan 1 no set-member ethernet 1/28 vlan-group 10 vlan-group 10 vlan 10 ip route 100.0.0.1/32 10.0.0.1 router bgp 65000 neighbor 100.0.0.1 remote-as 1 neighbor 100.0.0.1 next-hop-self DATACOM 6

Testes neighbor 100.0.0.1 soft-reconfiguration inbound neighbor 100.0.0.1 ebgp-multihop 2 neighbor 100.0.0.1 update-source 10.0.0.2 Com estas configurações já é possível observar que a sessão BGP está estabelecida e que o cliente recebe uma rota. O uplink não está recebo rotas do cliente pois este ainda não configurou um network ou redistribute. Estado do BGP no uplink-1 uplink-1#show ip bgp summary BGP router identifier 100.0.0.1, local AS number 1 0 BGP AS-PATH entries 0 BGP community entries Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd 10.0.0.2 4 65000 7 9 0 0 0 00:05:01 0 Total number of neighbors 1 uplink-1#show ip bgp No BGP network exists Total number of prefixes 0 uplink-1# Estado do BGP no cliente cliente#show ip bgp sum BGP router identifier 10.0.0.2, local AS number 65000 1 BGP AS-PATH entries 0 BGP community entries Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd 100.0.0.1 4 1 2 4 0 0 0 00:05:02 1 Total number of neighbors 1 cliente#show ip bgp BGP table version is 0, local router ID is 10.0.0.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 *> 0.0.0.0 100.0.0.1 0 1 i Total number of prefixes 1 cliente# DATACOM 7

Trânsito indevido? Considere agora que o cliente deseja contratar mais um link. O novo fornecedor, chamado uplink-2, enviará apenas as rotas marcadas com a comunidade 2:100, arbritrada pelo provedor em questão. A primeira diferença da configuração apresentada no uplink-2 para as configurações demonstradas anteriormente é a criação de route-maps. Um mapeamento de rotas, por assim dizer, é um conjunto de regras que será aplicado nas rotas existentes na RIB antes destas serem processadas. Cada route-map recebe um nome e um número, que será a ordem de execução da mesma (sequencial, do menor para o maior). Ou seja, route-maps de mesmo nome fazem parte de um mesmo grupo. Uma rota frente a um route-map tem comportamento lógico: o resultado da comparação pode ser verdadeiro ou falso. É com a resposta lógica que o route-map agirá: uma rota com resultado verdadeiro em um route-map de deny será negada. A complexidade no uso dos route-maps está quando utilizando-se de casos não previstos. Quando uma rota não dispara dos itens do grupo de route-map, ela será considerada contra a primeira regra de route-map. Ou seja, uma rota que não seja considerada para nenhum deny estará automaticamente marcada como permit. Casos práticos serão apresentados no decorrer do texto. Configurações A lista dos atributos so configurados segue abaixo. VLAN utilizada no ponto-a-ponto: 20 Endereçamento IP: 20.0.0.0/30 (.1 uplink-2,.2 cliente) Portas utilizadas: 1/1 no uplink-2 (DM4001), 1/27 no cliente (DmSwitch3324F2) AS: 2 (uplink-2) 65000 (cliente) O uplink-2 comunica-se diretamente através da interface conectada, sem uso de loopback. O uplink-2 está anunciando três rotas, geradas localmente e marcadas com comunidade. Ambos os roteadores estão reescrevo as rotas anunciadas colocando-se como next-hop. O soft-reconfiguration inbound auxilia para atualizações mais dinâmicas no protocolo, sem necessitar um clear ip bgp a cada mudança de configuração. Roteador uplink-2 hostname uplink-2 ip routing interface vlan 20 set-member untagged ethernet 1/1 ip address 20.0.0.1/30 interface ethernet 1/1 switchport native vlan 20 description Cliente interface vlan 1 no set-member ethernet 1/1 DATACOM 8

Testes vlan-group 20 vlan-group 20 vlan 20 router bgp 2 neighbor 20.0.0.2 remote-as 65000 neighbor 20.0.0.2 next-hop-self neighbor 20.0.0.2 soft-reconfiguration inbound route-map Cliente_OUT permit 10 set community 2:100 exit router bgp 2 network 2.0.0.0/8 network 2.0.1.0/24 network 2.0.255.0/24 neighbor 20.0.0.2 route-map Cliente_OUT out Roteador cliente Esta configuração é no mesmo cliente do exemplo anterior. Alguns pontos da configuração estão omitidos, utilizar o mesmo setup. interface vlan 20 set-member untagged ethernet 1/27 ip address 20.0.0.2/30 interface ethernet 1/27 switchport native vlan 20 description Uplink-2 interface vlan 1 no set-member ethernet 1/27 vlan-group 20 vlan-group 20 vlan 20 router bgp 65000 neighbor 20.0.0.1 remote-as 2 neighbor 20.0.0.1 next-hop-self neighbor 20.0.0.1 soft-reconfiguration inbound Observar que algo não desejável acontece neste exemplo: o cliente, que paga para receber anúncios de seus provedores, está so usado como trânsito entre eles. Comprova-se isso através do show ip bgp nos roteadores uplink. uplink-1 DATACOM 9

uplink-1#show ip bgp BGP table version is 0, local router ID is 100.0.0.1 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 *> 2.0.0.0 10.0.0.2 0 65000 2 i *> 2.0.1.0/24 10.0.0.2 0 65000 2 i *> 2.0.255.0/24 10.0.0.2 0 65000 2 i Total number of prefixes 3 uplink-1# uplink-2 uplink-2#show ip bgp BGP table version is 0, local router ID is 10.3.106.5 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 *> 0.0.0.0 20.0.0.2 0 65000 1 i *> 2.0.0.0 0.0.0.0 0 32768 i *> 2.0.1.0/24 0.0.0.0 0 32768 i *> 2.0.255.0/24 0.0.0.0 0 32768 i Total number of prefixes 4 uplink-2# O correto é que o cliente não esteja so caminho entre os seus fornecedores, logo é necessário que ele filtre e anuncie apenas as redes geradas em si. A seguir é demonstrado como o cliente deve proceder esta configuração. Ajustes Mediante estes problemas, é necessário ajustar a configuração do cliente. Segue abaixo a correção necessária através do uso de Políticas de Roteamento. Para exemplo prático, o cliente estará divulgando apenas bloco que lhe foi alocado: 65.0.0.0/8. Roteador cliente ip prefix-list MeusIPs permit 65.0.0.0/8 route-map Uplink_1_OUT permit 10 match ip address prefix-list MeusIPs exit route-map Uplink_2_OUT permit 10 match ip address prefix-list MeusIPs router bgp 65000 network 65.0.0.0/8 DATACOM 10

network 65.0.1.0/24 neighbor 20.0.0.1 route-map Uplink_2_OUT out neighbor 100.0.0.1 route-map Uplink_1_OUT out Pode ser necessário um clear ip bgp all no cliente para estas alterações entrarem em funcionamento. Com esta configuração verifica-se que os uplink não estão recebo outros anúncios além daqueles que estiverem de acordo com a prefix-list chamada MeusIPs. Se o cliente assim desejar, é possível adicionar outros prefixos à lista: ip prefix-list MeusIPs seq 2 permit 65.0.1.0/24 Com estas ferramentas já é possível organizar consideravelmente a topologia BGP do provedor. No uplink-1 tem-se a seguinte visão: uplink-1#show ip bgp BGP table version is 0, local router ID is 100.0.0.1 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 *> 65.0.0.0 10.0.0.2 0 0 65000 i *> 65.0.1.0/24 10.0.0.2 0 0 65000 i Total number of prefixes 2 uplink-1# No cliente ela encontra-se da seguinte forma. Importante ressaltar também as comunidades apridas nas redes 2.0.0.0: cliente#show ip bgp BGP table version is 0, local router ID is 20.0.0.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 *> 0.0.0.0 100.0.0.1 0 1 i *> 2.0.0.0 20.0.0.1 0 0 2 i *> 2.0.1.0/24 20.0.0.1 0 0 2 i *> 2.0.255.0/24 20.0.0.1 0 0 2 i *> 65.0.0.0 0.0.0.0 0 32768 i *> 65.0.1.0/24 0.0.0.0 0 32768 i Total number of prefixes 6 cliente#show ip bgp 65.0.0.0 BGP routing table entry for 65.0.0.0/8 Paths: (1 available, best #1, table Default-IP-Routing-Table) Advertised to non peer-group peers: 20.0.0.1 100.0.0.1 Local 0.0.0.0 from 0.0.0.0 (20.0.0.2) Origin IGP, metric 0, localpref 100, weight 32768, valid, sourced, local, best DATACOM 11

Last update: Thu Jan 1 03:48:11 1970 cliente#show ip bgp 2.0.0.0 BGP routing table entry for 2.0.0.0/8 Paths: (1 available, best #1, table Default-IP-Routing-Table) Not advertised to any peer 2 20.0.0.1 from 20.0.0.1 (10.3.106.5) Origin IGP, metric 0, localpref 100, valid, external, best Community: 2:100 Last update: Thu Jan 1 03:52:43 1970 cliente# Balanceamento de tráfego As ferramentas de route-map e prefix-/list vão além da proteção dos anúncios. É possível inclusive ajustar as escolhas das rotas para criar preferências por onde o tráfego irá passar, tanto para a comunicação originada no AS quanto aquela destinada à ele. São os atributos de métrica, preferência local e distância do vetor AS path, bem como escolhas no comprimento do prefixo, lembrando sempre o longest prefix match. Neste caso o cliente deseja duplicar o AS path enviado ao uplink-1 e tornar este link menos utilizado para o tráfego ingressante, porém aumentando a local-pref deste fornecedor para que o tráfego originado localmente prefira sair por este caminho. Observar que a route-map de saída (out) já existia com o valor 10, logo esta configuração alterará a existente, acrescentando a informação de prep. Configurações Roteador cliente NOTA: o as-path prep utiliza a lista de AS a fazer concatenação no vetor, e não o número de vezes de concatenar o AS local. Este comportamento pode variar em outros fabricantes. route-map Uplink_1_OUT permit 10 set as-path prep 65000 exit route-map Uplink_1_IN permit 10 set local-preference 200 exit router bgp 65000 neighbor 100.0.0.1 route-map Uplink_1_IN in DATACOM 12

Testes Como mencionado, o cliente irá preferir aumentar a local-pref para 200 nas rotas apridas do uplink-1 e este irá ver com AS path aumentado as rotas daquele. cliente uplink-1#show ip bgp BGP table version is 0, local router ID is 100.0.0.1 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 *> 65.0.0.0 10.0.0.2 0 0 65000 65000 i *> 65.0.1.0/24 10.0.0.2 0 0 65000 65000 i Total number of prefixes 2 uplink-1# uplink-1 BGP table version is 0, local router ID is 20.0.0.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 *> 0.0.0.0 100.0.0.1 200 0 1 i *> 2.0.0.0 20.0.0.1 0 0 2 i *> 2.0.1.0/24 20.0.0.1 0 0 2 i *> 2.0.255.0/24 20.0.0.1 0 0 2 i *> 65.0.0.0 0.0.0.0 0 32768 i *> 65.0.1.0/24 0.0.0.0 0 32768 i Total number of prefixes 6 cliente# Considerações Finais A introdução inicial e os exemplos demonstrados ao longo deste documento servem para auxílio no uso básico do BGP. Foram analisados os conceitos teóricos do protocolo, o estabelecimento de sessões com vizinhos de diferentes níveis (trânsito, peering e clientes downstream), bem como filtragem e comunidades. Existem conceitos mais avançados que não foram abordados, por limitação de escopo: router-reflector, router server, confederações BGP, MP-BGP, entre outros. Estes tópicos são suportados pelo DmSwitch em sua configuração, porém necessitam de análises teóricos que tornariam este documento de difícil compreensão. Com o apresentado no texto é possível um uso completo do BGP para a vasta maioria dos casos existentes na Internet. Recoma-se o uso do material sobre BGP da NANOG e do Registro.BR para aprofundar o conhecimento. A família DmSwitch possui um bom suporte ao protocolo, não so um limitador para a DATACOM 13

utilização deste em campo. DATACOM 14