… Atualizado em 23 de Fevereiro de 2021
O Border Gateway Protocol é o protocolo que faz a internet funcionar.
Aprenda mais sobre esse gigante avançado que opera nos roteadores das operadoras
O Fantástico Mundo IP
Você já se perguntou como configurar um peer BGP com uma operadora ?
Como fazer os filtros de anúncios que serão exportados para as suas conexões BGP ?
Aprenda um pouco, neste post, sobre como fazer isto em um roteador VyOS.
No nosso post anterior ensinamos sobre instalação e configurações básicas do VyOS e, agora, passamos a nos aprofundar um pouco mais no mundo fantástico que é a internet que opera pouco acima do Hardware.
Assista ao vídeo-tutorial e enriqueça ainda mais os seus conhecimentos sobre o assunto.
Os Comandos utilizados neste Tutorial
Não poderíamos deixar de listar aqui os comandos utilizados para facilitar o seu laboratório.
Neste Tutorial, estamos utilizando o VyOS na versão 1.1.8
“prefix-list” – Prefixos para Anúncios
O “prefix-list” é uma política onde determinamos os blocos IP que serão aceitos e os que não serão aceitos para anúncio.
Permitir seus prefixos
Para que a sua conexão com a operadora tenha efeito de anúncio do seu prefixo de IPs, é necessário criar uma lista que contenha este prefixo.
Da mesma forma como, caso seu ASN seja um transito para outros ASN’s, também será necessário apontar os blocos destes ASN’s dentro desta ou otura prefix-list.
Criar uma nova Lista
set police prefix-list meus-anuncios-IPv4
Criar uma nova regra para esta lista
set police prefix-list meus-anuncios-IPv4 rule 10
Criar uma ação para esta regra
set police prefix-list meus-anuncios-IPv4 rule 10 action permit
Criar um prefixo para esta lista
set police prefix-list meus-anuncios-IPv4 rule 10 prefix 172.70.0.0/22
Dividir o bloco de IPs /22 em blocos /24
set police prefix-list meus-anuncios-IPv4 rule 10 le 24
Negar outros prefixos
É muito interessante que você adota a boa prática de negar os prefixos que não devem transitar pelo seu ASN. Isto impedirá que prefixos indesejados utilizem a sua conexão como transito, seja para alcançar o mundo IP ou recursos alocados internamente na sua borda como, por exemplo, CDN’s.
Criar uma nova regra para a lista “meus anuncios-IPv4”
set police prefix-list meus-anuncios-IPv4 rule 500
Criar uma ação para esta regra
set police prefix-list meus-anuncios-IPv4 rule 500 action deny
Apontar os prefixos que serão rejeitados
set police prefix-list meus-anuncios-IPv4 rule 500 prefix 0.0.0.0/0
Como toda política, a leitura das regras serão feitas de cima para baixo, então lembre-se de que a regra de rejeição precisa estar abaixo da regra de permissão. Exceto, é claro, no caso em que o oposto disto seja feita deliberadamente.
“route-map” – O Mapa de Roteamento
O Mapa de Roteamento é a politica que invoca as prefix-list para anuncio dentro da sessão BGP.
Aqui, podemos tanto criar regras para anunciar como para bloquear determinadas prefix-list.
Mapa de Entrada de Rotas
Criar um novo Mapa de Roteamento para entrada
set police route-map in-operadora-X
Criar uma nova regra dentro do Mapa de Entrada
set police route-map in-operadora-X rule 10
Criar uma ação para esta regra
set police route-map in-operadora-X action permit
Mapa de Saída de Rotas
Criar um novo Mapa de Roteamento para saída
set police route-map out-operadora-X
Criar uma nova regra dentro do Mapa de Saída
set police route-map out-operadora-X rule 10
Criar uma ação para esta regra
set police route-map out-operadora-X action permit
Invocar a prefix-list que fará parte deste Mapa de Roteamento
set police route-map out-operadora-X match ip address prefix meus-anuncios-IPv4
“blackhole” – O Primeiro Anúncio Local
Para que o seu roteador possa anunciar um bloco, este bloco deve ser previamente conhecido do roteador. Para isto, colocamos ele em blacklist com o objetivo de torná-lo manifestado dentro da tabela de roteamento local.
Configurando o Anúncio em Blackhole
set protocols static route 172.70.0.0/22 blackhole distance 254
Caso queira fatiar em segmentos menores
set protocols static route 172.70.0.0/23 blackhole distance 254
set protocols static route 172.70.2.0/23 blackhole distance 254
set protocols static route 172.70.0.0/24 blackhole distance 254
set protocols static route 172.70.1.0/24 blackhole distance 254
set protocols static route 172.70.2.0/24 blackhole distance 254
set protocols static route 172.70.3.0/24 blackhole distance 254
A Sessão BGP – Finalmente !
A Sessão BGP, ou Peer BGP, propriamente dita é feita somente após os passos anteriores. Não é que não possa ser feita antes, mas, caso seja, será estabelecida com configurações incorretas que fará o seu roteador receber e anunciar todas as rotas ao mesmo tempo.
Para evitar este problema e garantir que receberemos e enviaremos somente o que nos interessa, os passos anteriores são fundamentais.
Configurando o seu ASN no protocolo BGP do roteador
set protocols bgp 65535
Configurando a sua rede no seu Roteador BGP
set protocols bgp 65535 network 172.70.0.0/22
set protocols bgp 65535 network 172.70.0.0/23
set protocols bgp 65535 network 172.70.2.0/23
set protocols bgp 65535 network 172.70.0.0/24
set protocols bgp 65535 network 172.70.1.0/24
set protocols bgp 65535 network 172.70.2.0/24
set protocols bgp 65535 network 172.70.3.0/24
Configurando o Neighbor da sessão BGP com a Operadora
set protocols bgp 65535 neighbor 192.168.60.1
Descrevendo (Identificando) este Neighbor
set protocols bgp 65535 neighbor 192.168.60.1 description Operadora-X
Configurando o ASN da Operadora
set protocols bgp 65535 neighbor 192.168.60.1 remote-as “N°do ASN da sua Operadora”
Configurando a Atualização Suave de Roteamento
set protocols bgp 65535 neighbor 192.168.60.1 soft-reconfiguration inbound
Configurando a Fonte de Atualização desta sessão BGP
set protocols bgp 65535 neighbor 192.168.60.1 update-source “A interface da sua conexão com a Operadora”
Configurando o Mapa de Roteamento de Anúncios de Entrada
set protocols bgp 65535 neighbor 192.168.60.1 route-map import in-operadora-X
Configurando o Mapa de Roteamento de Anúncios de Saída
set protocols bgp 65535 neighbor 192.168.60.1 route-map export out-operadora-X
Os Resultados
Através deste tutorial, esperamos orientar melhor você a respeito dos comandos e configurações de uma sessão BGP básica em VyOS.
Aproveite !
A UPNETIX desenvolve e publica tutoriais para fins de laboratório. Caso deseje colocar este ou outros tutoriais em Produção, faça-o por sua conta e risco. Não nos responsabilizamos pelos resultados.
Aconselhamos que toda e qualquer implementação seja feita por profissionais qualificados.