Entrar ou criar conta

Laboratório em bancada

Laboratório: BGP básico com FRRouting entre dois roteadores virtuais

Você implementará uma sessão BGP entre dois roteadores Linux usando FRRouting, trocando rotas IPv4 privadas. Em cerca de 90 minutos, terá um ambiente funcional para validar conceitos essenciais do BGP.

BGP e roteamento dinâmico do zero a alta disponibilidade
Ligado ao treinamento BGP e roteamento dinâmico do zero a alta disponibilidade
Duração estimada
90 min
Passos
9
Validações
4
Objetivo

O objetivo é construir, do zero, uma sessão BGP entre dois roteadores virtuais rodando FRRouting, anunciando e recebendo rotas IPv4. Você entenderá a configuração mínima necessária, verá o estabelecimento da sessão e a troca de rotas, e aprenderá a validar e solucionar problemas comuns.

Topologia

Dois roteadores Linux (R1 e R2), cada um com uma interface de loopback e uma interface Ethernet conectada a uma rede ponto a ponto. R1 anuncia uma rede 10.10.10.0/24 via BGP; R2 anuncia 10.20.20.0/24. Endereços ponto a ponto: 192.168.56.1/30 (R1) e 192.168.56.2/30 (R2).

      [R1]             [R2]
 10.10.10.1/24     10.20.20.1/24
     |                   |
     |192.168.56.1/30    |192.168.56.2/30
     +--------[p2p]------+

Equipamentos e software

ItemRequisito, licença ou versão
VM Linux (Debian/Ubuntu)1 vCPU, 512MB RAM, 2 interfaces de rede, kernel >= 4.x
VM Linux (Debian/Ubuntu)1 vCPU, 512MB RAM, 2 interfaces de rede, kernel >= 4.x
FRRoutingGPLv2+ · a versão estável atual
iproute2GPL2 · a versão estável atual

Roteiro

  1. Preparar as VMs e interfaces

    Crie duas VMs Linux (R1 e R2), cada uma com duas interfaces: uma para a rede ponto a ponto, outra para loopback. O BGP depende de conectividade IP básica.

    Consulte a documentação da sua solução de virtualização para adicionar interfaces. No Linux, use:
    
    ip addr add 192.168.56.1/30 dev eth1   # R1
    ip addr add 192.168.56.2/30 dev eth1   # R2
    ip addr add 10.10.10.1/24 dev lo       # R1
    ip addr add 10.20.20.1/24 dev lo       # R2

    O que você deve ver: As VMs respondem a ping entre 192.168.56.1 e 192.168.56.2.

  2. Instalar o FRRouting

    O FRRouting implementa BGP e outros protocolos. Instale em ambas as VMs.

    sudo apt update
    sudo apt install frr frr-pythontools

    O que você deve ver: O comando 'vtysh -v' retorna a versão do FRRouting.

  3. Habilitar o serviço FRRouting

    O serviço deve estar ativo para aceitar conexões BGP.

    sudo systemctl enable frr
    sudo systemctl start frr
    sudo systemctl status frr

    O que você deve ver: O status mostra o serviço ativo.

  4. Configurar o BGP no R1

    Configure o ASN, o router-id, a vizinhança e anuncie a rede local. O router-id é obrigatório para BGP funcionar corretamente.

    sudo vtysh
    configure terminal
    router bgp 65001
     bgp router-id 1.1.1.1
     neighbor 192.168.56.2 remote-as 65002
     network 10.10.10.0/24
    exit
    write memory

    O que você deve ver: Nenhum erro ao salvar. A configuração é aceita.

  5. Configurar o BGP no R2

    Repita o processo para o segundo roteador, ajustando ASN, router-id, vizinho e rede.

    sudo vtysh
    configure terminal
    router bgp 65002
     bgp router-id 2.2.2.2
     neighbor 192.168.56.1 remote-as 65001
     network 10.20.20.0/24
    exit
    write memory

    O que você deve ver: Nenhum erro ao salvar. A configuração é aceita.

  6. Verificar o estabelecimento da sessão BGP

    O BGP depende do handshake TCP. Verifique se a sessão subiu.

    vtysh -c 'show ip bgp summary'

    O que você deve ver: O estado da vizinhança deve ser 'Established' e o contador de prefixos recebidos deve ser maior que zero.

  7. Verificar as rotas recebidas via BGP

    Garanta que cada roteador recebeu a rota do outro.

    vtysh -c 'show ip bgp'

    O que você deve ver: No R1, a rota 10.20.20.0/24 aparece com origem BGP. No R2, a rota 10.10.10.0/24 aparece com origem BGP.

  8. Testar conectividade entre as redes anunciadas

    O objetivo do BGP é propagar rotas. Teste o acesso entre as loopbacks.

    ping 10.20.20.1    # do R1
    ping 10.10.10.1    # do R2

    O que você deve ver: Os pings devem ter resposta, indicando roteamento funcional.

  9. Persistir as configurações

    Evite perder as configurações após reboot.

    sudo vtysh -c 'write memory'

    O que você deve ver: Mensagem de sucesso ao salvar.

Como saber que funcionou

TesteComandoCritério
Sessão BGP estabelecidavtysh -c 'show ip bgp summary'Estado Established e uptime positivo
Rotas BGP na tabela de roteamentoip route showRotas 10.10.10.0/24 e 10.20.20.0/24 presentes via BGP
Ping entre as loopbacksping 10.20.20.1 # do R1Respostas de ICMP
Verificar anúncios BGPvtysh -c 'show ip bgp neighbors 192.168.56.2 advertised-routes'Rede local (10.10.10.0/24) anunciada para o vizinho

Troubleshooting

SintomaCausa provávelCorreção
Sessão BGP não sobe (Idle)Problema de conectividade IP ou firewall bloqueando TCP 179Verifique ping entre as interfaces e regras de firewall
Rotas não aparecem na tabela BGPRede não está configurada corretamente ou não existe interface correspondenteConfirme se a interface e o prefixo existem e estão ativos
Ping entre loopbacks falhaRota ausente ou política de firewall localConfirme rotas e regras de firewall
Configuração BGP não persiste após rebootConfiguração não salvaExecute 'write memory' no vtysh

Segurança e hardening

  • Restringir acesso SSH e SNMP às VMs apenas de redes confiáveis
  • Desabilitar serviços desnecessários no Linux
  • Aplicar regras de firewall para permitir apenas TCP 179 entre os roteadores
  • Evitar rodar FRRouting como root se possível; consulte a documentação

Checklist final

Referências

  1. FRRouting User Guide