Entrar ou criar conta

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

Roteiro para estudo em ambiente de laboratório ou de teste. Execute apenas em equipamentos, redes e contas que você tenha autorização para usar, com backup e homologação próprios. Comandos podem causar indisponibilidade ou perda de dados. Software e marcas citados pertencem aos seus titulares. Termos de Uso.

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.