Entrar ou criar conta

ULC Lab · implementação reproduzível

Laboratório: Roteamento BGP IPv4 com FRRouting entre dois ASNs simulados

Você vai implementar e validar uma sessão BGP IPv4 entre dois roteadores virtuais usando FRRouting, simulando dois provedores distintos. O laboratório leva cerca de 2 horas e cobre configuração, anúncio e filtragem de rotas.

Roteamento BGP para ISPs com FRRouting
Ligado ao treinamento Roteamento BGP para ISPs com FRRouting
ULC-LAB-ISPS-0001 · Status de validaçãoNão validado pela Upnetix: roteiro derivado da documentação oficial, para você executar e validar
Duração estimada
120 min
Passos
12
Validações
5
Versões da documentação consultada
FRRouting 8.5 · Quagga (contexto) consulte a documentação
Objetivo

Este laboratório ensina a configurar FRRouting em dois roteadores Linux, estabelecer uma sessão BGP entre eles, anunciar prefixos, aplicar filtros e validar o roteamento. O foco é entender o fluxo de configuração, identificar pontos críticos e aplicar boas práticas de operação, como filtragem de prefixos e troubleshooting básico.

Topologia

Dois roteadores virtuais (R1 e R2), cada um em um AS distinto (65001 e 65002), conectados por uma interface ponto a ponto (rede 192.0.2.0/30). Cada roteador anuncia uma rede privada própria (R1: 10.10.10.0/24, R2: 10.20.20.0/24) via BGP. Não há roteamento dinâmico além do BGP. O laboratório pode ser feito em duas VMs Linux conectadas por uma rede virtual.


+-----------+           +-----------+
|    R1     |-----------|    R2     |
| ASN 65001 |           | ASN 65002 |
|10.10.10.0/24          |10.20.20.0/24
|192.0.2.1  |  192.0.2.2|           |
+-----------+           +-----------+

Equipamentos e software

ItemRequisito, licença ou versão
VM Linux (R1)1 vCPU, 512MB RAM, 1 interface de rede, Debian 11 ou Ubuntu 22.04
VM Linux (R2)1 vCPU, 512MB RAM, 1 interface de rede, Debian 11 ou Ubuntu 22.04
FRRoutingGPLv2 · 8.5
Quagga (contexto)GPLv2 · consulte a documentação

Roteiro

  1. Preparar as VMs e interfaces de rede

    Crie duas VMs Linux e conecte-as à mesma rede virtual. Configure os endereços IP nas interfaces para garantir conectividade ponto a ponto.

    No R1: ip addr add 192.0.2.1/30 dev eth0
    No R2: ip addr add 192.0.2.2/30 dev eth0
    ping 192.0.2.2 (a partir do R1)

    O que você deve ver: Resposta ao ping entre R1 e R2, sem perda.

  2. Instalar o FRRouting nas duas VMs

    FRRouting é o roteador de código aberto usado neste laboratório. Instale via repositório oficial.

    apt update && apt install frr frr-pythontools -y

    O que você deve ver: Pacotes FRRouting instalados sem erros.

  3. Habilitar e iniciar os serviços do FRRouting

    O serviço frr precisa estar ativo para aceitar conexões e processar rotas.

    systemctl enable frr && systemctl start frr
    systemctl status frr

    O que você deve ver: Status do serviço frr: active (running).

  4. Configurar o BGP no R1

    No R1, defina o ASN, o router-id, a rede a ser anunciada e o vizinho BGP (R2).

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

    O que você deve ver: Configuração salva e sem mensagens de erro.

  5. Configurar o BGP no R2

    No R2, defina o ASN, o router-id, a rede a ser anunciada e o vizinho BGP (R1).

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

    O que você deve ver: Configuração salva e sem mensagens de erro.

  6. Verificar o estabelecimento da sessão BGP

    O BGP depende do TCP. Verifique se a sessão foi estabelecida entre os ASNs.

    vtysh -c 'show ip bgp summary'

    O que você deve ver: Estado 'Established' na coluna State/PfxRcd para o vizinho.

  7. Validar o recebimento de rotas BGP

    Cada roteador deve receber o prefixo anunciado pelo outro.

    vtysh -c 'show ip bgp'

    O que você deve ver: No R1, prefixo 10.20.20.0/24; no R2, prefixo 10.10.10.0/24.

  8. Configurar filtro de entrada de prefixos no R1

    Aplique um filtro para aceitar apenas o prefixo 10.20.20.0/24 vindo do vizinho.

    vtysh
    configure terminal
    ip prefix-list FROM-R2 seq 5 permit 10.20.20.0/24
    route-map ACCEPT-FROM-R2 permit 10
    match ip address prefix-list FROM-R2
    router bgp 65001
    neighbor 192.0.2.2 route-map ACCEPT-FROM-R2 in
    exit
    write memory

    O que você deve ver: Configuração salva; apenas 10.20.20.0/24 aceito de R2.

  9. Testar conectividade fim a fim

    Teste se R1 consegue pingar o IP de R2 na rede 10.20.20.0/24 e vice-versa.

    No R1: ping 10.20.20.1
    No R2: ping 10.10.10.1

    O que você deve ver: Respostas ao ping, indicando roteamento funcional.

  10. Simular queda da sessão BGP

    Derrube a interface de um dos roteadores e observe o efeito na sessão BGP.

    No R2: ip link set eth0 down
    vtysh -c 'show ip bgp summary'

    O que você deve ver: Estado Idle ou Active para o vizinho, sem prefixos recebidos.

  11. Restaurar a sessão e validar reconvergência

    Volte a interface e veja a sessão BGP restabelecendo.

    No R2: ip link set eth0 up
    vtysh -c 'show ip bgp summary'

    O que você deve ver: Estado Established novamente após alguns segundos.

  12. Analisar logs do FRRouting

    Verifique os logs para identificar eventos de estabelecimento e queda de sessão.

    tail -n 20 /var/log/frr/bgpd.log

    O que você deve ver: Mensagens de Established e Idle para a sessão BGP.

Como saber que funcionou

TesteComandoCritério
Sessão BGP estabelecidavtysh -c 'show ip bgp summary'Coluna State/PfxRcd mostra Established e prefixos recebidos > 0
Recebimento correto de prefixosvtysh -c 'show ip bgp'Prefixo do outro roteador aparece na tabela BGP
Filtro de prefixos funcionandovtysh -c 'show ip bgp'Apenas prefixos permitidos pelo filtro aparecem
Roteamento fim a fimping <IP da rede remota>Respostas ao ping
Logs de eventos BGPtail -n 20 /var/log/frr/bgpd.logMensagens de transição de estado da sessão

Troubleshooting

SintomaCausa provávelCorreção
Sessão BGP não sobe (Idle)Problema de conectividade IP ou porta TCP 179 bloqueadaVerifique IP, firewall e conectividade entre as VMs
Prefixos não aparecem na tabela BGPConfiguração de 'network' ausente ou filtro bloqueandoRevise configuração de 'network' e filtros aplicados
Ping entre redes não respondeRota ausente na tabela de roteamento ou filtro BGP excessivoVerifique 'show ip route' e ajuste filtros
Sessão BGP cai frequentementeInstabilidade de rede ou configuração de keepalive/holdtime inadequadaConsulte a documentação para ajustar timers
FRRouting não iniciaErro de configuração ou conflito de portasRevise arquivos em /etc/frr/ e logs em /var/log/frr/

Segurança e hardening

  • Restrinja acesso SSH apenas às VMs necessárias
  • Desabilite serviços não essenciais no Linux
  • Aplique filtros BGP para evitar anúncio ou aceitação de prefixos indesejados
  • Monitore logs do FRRouting para detectar tentativas de sessão não autorizadas
  • Consulte a documentação do FRRouting para hardening adicional

Checklist final

Referências

  1. FRRouting User Guide · FRRouting Project (docs.frrouting.org)
  2. RFC 4271 - Border Gateway Protocol 4 (BGP-4) · IETF (datatracker.ietf.org)
  3. MANRS para Operadores de Rede · MANRS (Internet Society) (manrs.org)
Verificação editorial
Publicado
09/09/2026
Última revisão
09/09/2026
Versão do conteúdo
1.0
Referências
3 oficiais · 1 de normas ou órgãos
Revisão técnica
redação e revisão por IA, URLs conferidas na publicação
Status
Atual
Encontrou um erro? Escreva para comercial@upnetix.com.br com o endereço da página. A revisão semestral por IA nunca altera comandos ou configurações sem passar pela fila de revisão.