OSPF
O que é OSPF?
OSPF significa Open Shortest Path First.
Ele é um protocolo de roteamento dinâmico usado para encontrar automaticamente os melhores caminhos dentro de uma rede.
O OSPF é classificado como um protocolo IGP, ou seja, Interior Gateway Protocol. Isso significa que ele é usado dentro de uma mesma organização, empresa ou sistema autônomo.
Ele é muito usado em redes corporativas, provedores e ambientes com vários roteadores.
Para que o OSPF é usado?
O OSPF é usado para trocar informações de rotas entre roteadores.
Exemplos comuns:
Interligar roteadores em uma empresa.
Criar roteamento dinâmico entre filiais.
Substituir rotas estáticas em redes maiores.
Melhorar redundância entre caminhos.
Recalcular rotas automaticamente quando um link cai.
Organizar grandes redes em áreas.
Evitar configuração manual de muitas rotas.
Como o OSPF funciona?
O OSPF funciona trocando informações sobre o estado dos links da rede.
Cada roteador OSPF descobre seus vizinhos, troca informações de topologia e monta um mapa da rede.
Depois disso, ele usa o algoritmo SPF, também conhecido como algoritmo de Dijkstra, para calcular o melhor caminho até cada destino. A Juniper descreve o OSPF como um IGP que usa informações de estado de enlace e calcula rotas com o algoritmo SPF/Dijkstra.
Fluxo básico:
O roteador envia pacotes Hello.
Os roteadores vizinhos se descobrem.
Eles formam adjacência.
Trocam informações de estado de enlace.
Cada roteador monta uma base de dados da topologia.
O algoritmo SPF calcula os melhores caminhos.
As melhores rotas entram na tabela de roteamento.
Exemplo:
Roteador A → Hello → Roteador B
Roteador A ↔ Troca de LSAs ↔ Roteador B
Roteador A → Calcula melhor rota com SPFCaracterísticas principais do OSPF
O OSPF possui algumas características importantes:
É um protocolo de roteamento interno.
É um protocolo link-state.
Usa o algoritmo SPF/Dijkstra.
Calcula rotas com base em custo.
Converge mais rápido que RIP em muitos cenários.
Suporta redes grandes.
Suporta divisão por áreas.
Permite autenticação entre roteadores.
Não usa TCP nem UDP.
Usa diretamente o protocolo IP número 89.
É mais complexo que protocolos simples como RIP.
OSPF é a mesma coisa que RIP?
Não.
OSPF e RIP são protocolos de roteamento dinâmico, mas funcionam de formas diferentes.
O RIP é mais simples e usa contagem de saltos.
O OSPF é mais avançado e usa estado de enlace, custo e cálculo SPF.
Resumo:
| Protocolo | Tipo | Métrica | Uso comum |
|---|---|---|---|
| RIP | Distance-vector | Número de saltos | Redes pequenas e simples |
| OSPF | Link-state | Custo | Redes médias e grandes |
| BGP | Path-vector | Políticas de rota | Internet e provedores |
OSPF é a mesma coisa que BGP?
Não.
O OSPF é usado principalmente dentro de uma rede ou organização.
O BGP é usado principalmente entre redes diferentes, como provedores, operadoras e sistemas autônomos.
Resumo:
| Protocolo | Tipo | Onde é usado |
|---|---|---|
| OSPF | IGP | Dentro de uma organização |
| BGP | EGP | Entre organizações e sistemas autônomos |
OSPF usa TCP ou UDP?
Não.
O OSPF não usa TCP nem UDP.
Ele é encapsulado diretamente no IP usando o número de protocolo:
89A documentação técnica também descreve o OSPF como encapsulado diretamente em IP com o protocolo número 89.
Resumo:
| Protocolo | Usa TCP? | Usa UDP? | Protocolo IP |
|---|---|---|---|
| OSPF | Não | Não | 89 |
Qual porta o OSPF usa?
O OSPF não usa porta.
Portas são usadas por TCP e UDP.
Como o OSPF não usa TCP nem UDP, ele não possui porta como 80, 443 ou 22.
O correto é dizer:
OSPF usa o protocolo IP 89E não:
OSPF usa a porta 89OSPF usa multicast?
Sim.
O OSPF pode usar endereços multicast para comunicação entre roteadores.
No OSPFv2, usado em IPv4, os endereços comuns são:
| Endereço | Função |
|---|---|
224.0.0.5 | Todos os roteadores OSPF |
224.0.0.6 | Roteadores DR e BDR |
Esses endereços são usados dentro do segmento local da rede.
O que é link-state no OSPF?
Link-state significa estado de enlace.
Em vez de anunciar apenas uma distância até uma rede, o OSPF anuncia informações sobre seus links, interfaces, vizinhos e custos.
Com essas informações, os roteadores montam uma visão da topologia da rede.
Depois, cada roteador calcula os melhores caminhos.
O que é LSA no OSPF?
LSA significa Link-State Advertisement.
É uma mensagem usada pelo OSPF para anunciar informações sobre a rede.
As LSAs informam dados como:
Links conectados.
Vizinhos OSPF.
Custos das interfaces.
Redes conhecidas.
Mudanças na topologia.
Essas informações ajudam os roteadores a montar a base de dados OSPF.
O que é LSDB no OSPF?
LSDB significa Link-State Database.
É a base de dados onde o roteador guarda as informações de estado de enlace recebidas.
Cada roteador da mesma área deve ter uma LSDB compatível.
Depois, o roteador usa essa base para calcular as melhores rotas.
Exemplo:
LSAs recebidas → LSDB → Algoritmo SPF → Tabela de roteamentoO que é SPF no OSPF?
SPF significa Shortest Path First.
É o cálculo usado pelo OSPF para descobrir o melhor caminho até cada destino.
Esse cálculo é baseado no algoritmo de Dijkstra.
Exemplo simples:
Destino A custa 10
Destino B custa 20
Destino C custa 5O OSPF escolhe o caminho de menor custo, não necessariamente o caminho com menos saltos.
O que é custo no OSPF?
Custo é a métrica usada pelo OSPF para escolher a melhor rota.
Geralmente, o custo está relacionado à largura de banda da interface.
Links mais rápidos normalmente possuem custo menor.
Exemplo:
| Link | Custo exemplo |
|---|---|
| Link rápido | Menor custo |
| Link lento | Maior custo |
O OSPF escolhe a rota com menor soma de custos até o destino.
O que são áreas no OSPF?
Áreas são divisões lógicas usadas para organizar a rede OSPF.
Elas ajudam a reduzir a complexidade e melhorar a escalabilidade.
A área principal do OSPF é chamada de backbone.
Normalmente ela é representada como:
Area 0Ou:
0.0.0.0Outras áreas geralmente precisam se conectar à área 0.
O que é área backbone no OSPF?
A área backbone é a área central do OSPF.
Ela é chamada de:
Area 0A função dela é interligar as outras áreas OSPF.
Exemplo:
Area 1 → Area 0 → Area 2Em projetos OSPF multiárea, a área 0 é essencial para o roteamento entre áreas.
O que é vizinhança no OSPF?
Vizinhança é o relacionamento entre dois roteadores OSPF conectados.
Para formar vizinhança, algumas configurações precisam ser compatíveis, como:
Área.
Máscara de rede.
Tempos Hello e Dead.
Autenticação.
Tipo de rede.
MTU, em alguns casos.
Se essas informações não combinarem, a vizinhança pode não formar corretamente.
O que são pacotes Hello no OSPF?
Pacotes Hello são usados para descobrir e manter vizinhos OSPF.
Eles são enviados periodicamente.
Servem para:
Encontrar roteadores OSPF na rede.
Confirmar que o vizinho ainda está ativo.
Formar adjacências.
Eleger DR e BDR em redes multiacesso.
Se um roteador parar de receber Hellos do vizinho, pode considerar o vizinho inativo.
O que são DR e BDR no OSPF?
DR significa Designated Router.
BDR significa Backup Designated Router.
Eles são usados em redes multiacesso, como Ethernet, para reduzir a quantidade de adjacências e tráfego OSPF.
Resumo:
| Função | Significado |
|---|---|
| DR | Roteador designado principal |
| BDR | Roteador designado reserva |
Se o DR falhar, o BDR pode assumir.
Tipos de pacotes OSPF
O OSPF usa cinco tipos principais de pacotes:
| Pacote | Função |
|---|---|
| Hello | Descobre e mantém vizinhos |
| Database Description | Resume informações da base OSPF |
| Link-State Request | Solicita informações de estado de enlace |
| Link-State Update | Envia LSAs |
| Link-State Acknowledgment | Confirma recebimento de LSAs |
Esses cinco tipos de pacotes são parte do funcionamento do OSPF.
Vantagens do OSPF
O OSPF possui várias vantagens:
Converge rapidamente.
Escala melhor que RIP.
Suporta redes grandes.
Usa custo em vez de apenas saltos.
Suporta divisão por áreas.
É um protocolo aberto.
Permite redundância de caminhos.
Recalcula rotas automaticamente.
É muito usado em ambientes profissionais.
Desvantagens do OSPF
O OSPF também possui desvantagens:
É mais complexo que RIP.
Exige mais planejamento.
Pode consumir mais CPU e memória.
Configuração incorreta pode causar problemas de vizinhança.
Redes multiárea exigem bom desenho.
Troubleshooting pode ser mais difícil para iniciantes.
Diferença entre OSPF, RIP e BGP
| Protocolo | Tipo | Métrica | Uso |
|---|---|---|---|
| RIP | IGP distance-vector | Saltos | Redes pequenas |
| OSPF | IGP link-state | Custo | Redes médias e grandes |
| BGP | EGP path-vector | Políticas | Internet e interconexão entre AS |
O OSPF foi criado como uma alternativa mais escalável e eficiente que o RIP para redes maiores.
Como configurar OSPF em roteador Cisco?
Exemplo simples:
conf t
router ospf 1
network 192.168.1.0 0.0.0.255 area 0
network 10.0.0.0 0.0.0.3 area 0
endExplicação:
router ospf 1 ativa o processo OSPF.network informa quais redes participarão do OSPF.area 0 coloca as interfaces na área backbone.
Como configurar Router ID no OSPF?
O Router ID identifica o roteador dentro do domínio OSPF.
Exemplo em Cisco:
conf t
router ospf 1
router-id 1.1.1.1
endDepois pode ser necessário reiniciar o processo OSPF:
clear ip ospf processAtenção: use esse comando com cuidado em ambiente real, pois pode derrubar vizinhanças temporariamente.
Como verificar vizinhos OSPF?
Em roteadores Cisco:
show ip ospf neighborVerificar rotas OSPF:
show ip route ospfVerificar interfaces OSPF:
show ip ospf interface briefVerificar banco de dados OSPF:
show ip ospf databaseComo configurar OSPF no Linux com FRRouting?
Instalar FRRouting no Debian, Ubuntu e derivados:
sudo apt update
sudo apt install frrHabilitar o daemon OSPF:
sudo nano /etc/frr/daemonsAjuste:
ospfd=yesReiniciar FRR:
sudo systemctl restart frrEntrar no terminal do FRR:
sudo vtyshConfigurar OSPF:
configure terminal
router ospf
network 192.168.1.0/24 area 0
network 10.0.0.0/30 area 0
end
write memoryComo testar se o OSPF está funcionando?
Em Cisco:
show ip ospf neighborVerificar rotas aprendidas:
show ip route ospfVerificar interfaces:
show ip ospf interface briefEm Linux com FRRouting:
sudo vtyshDepois:
show ip ospf neighbor
show ip route ospf
show ip ospf databaseTestar conectividade:
ping ip_de_destinoVerificar caminho:
traceroute ip_de_destinoErros comuns no OSPF
Vizinhança não forma
Erro comum:
show ip ospf neighbornão mostra nenhum vizinho.
Possíveis causas:
Área diferente.
Máscara de rede diferente.
Hello e Dead timers diferentes.
Autenticação diferente.
Interface passiva.
Firewall ou ACL bloqueando protocolo IP 89.
Interfaces em redes diferentes.
Verificações:
show ip ospf interface brief
show ip ospf neighbor
show running-config | section ospfVizinho fica em INIT
Possíveis causas:
Um roteador recebe Hello, mas não vê seu próprio Router ID no pacote recebido.
Problema de comunicação bidirecional.
ACL bloqueando tráfego em um sentido.
Multicast OSPF com problema.
Verificar:
show ip ospf neighbor
show ip ospf interfaceTestar conectividade entre interfaces:
ping ip_do_vizinhoVizinho fica em 2-WAY
Em redes Ethernet, isso pode ser normal para roteadores que não são DR ou BDR.
Mas pode ser problema se era esperado formar adjacência completa.
Possíveis causas:
Eleição de DR/BDR.
Tipo de rede OSPF.
Configuração de prioridade.
Topologia multiacesso.
Verificar:
show ip ospf neighbor
show ip ospf interfaceVizinho fica em EXSTART ou EXCHANGE
Possíveis causas:
MTU diferente entre interfaces.
Problema na troca de banco de dados.
Router ID duplicado.
Instabilidade no link.
Verificar MTU:
show interface
Verificar OSPF:
show ip ospf neighbor
show ip ospf database
Rotas OSPF não aparecem
Possíveis causas:
Rede não anunciada no OSPF.
Interface passiva.
Área incorreta.
Filtro de rotas.
Problema de sumarização.
Vizinhança não está Full.
Verificar:
show ip route ospf
show ip protocols
show running-config | section ospfErro de área OSPF
Possíveis causas:
Interfaces vizinhas configuradas em áreas diferentes.
Área não conectada à área 0.
Configuração multiárea incorreta.
Falta de virtual-link em casos específicos.
Verificar:
show ip ospf interface brief
show ip ospf neighborRouter ID duplicado
Possíveis causas:
Dois roteadores com o mesmo Router ID.
Router ID configurado manualmente igual.
Loopback igual usada em mais de um roteador.
Solução:
Configurar Router ID único:
conf t
router ospf 1
router-id 2.2.2.2
endDepois:
clear ip ospf processFirewall bloqueando OSPF
OSPF usa protocolo IP 89.
Se houver firewall ou ACL entre roteadores, é necessário permitir o protocolo OSPF.
Em Linux, exemplo com iptables:
sudo iptables -A INPUT -p ospf -j ACCEPTOu usando número do protocolo:
sudo iptables -A INPUT -p 89 -j ACCEPTComo testar se o OSPF está funcionando?
Verificar vizinhos:
show ip ospf neighborVerificar rotas:
show ip route ospfVerificar banco de dados:
show ip ospf databaseVerificar interfaces:
show ip ospf interface briefTestar conectividade:
ping ip_de_destinoTestar caminho:
traceroute ip_de_destinoComandos principais relacionados ao OSPF
| Comando | Função |
|---|---|
router ospf 1 | Ativa o processo OSPF em Cisco |
network rede wildcard area 0 | Anuncia rede no OSPF |
router-id 1.1.1.1 | Define Router ID |
show ip ospf neighbor | Mostra vizinhos OSPF |
show ip route ospf | Mostra rotas aprendidas via OSPF |
show ip ospf database | Mostra banco de dados OSPF |
show ip ospf interface brief | Mostra interfaces OSPF |
clear ip ospf process | Reinicia o processo OSPF |
show ip protocols | Mostra protocolos de roteamento ativos |
Exemplo completo de uso
Cenário:
R1 --- R2
Rede entre roteadores: 10.0.0.0/30
LAN do R1: 192.168.1.0/24
LAN do R2: 192.168.2.0/24Configuração no R1:
conf t
router ospf 1
router-id 1.1.1.1
network 10.0.0.0 0.0.0.3 area 0
network 192.168.1.0 0.0.0.255 area 0
endConfiguração no R2:
conf t
router ospf 1
router-id 2.2.2.2
network 10.0.0.0 0.0.0.3 area 0
network 192.168.2.0 0.0.0.255 area 0
endVerificar vizinhança:
show ip ospf neighborVerificar rotas:
show ip route ospfTestar comunicação:
ping 192.168.2.1Esse exemplo ativa OSPF entre dois roteadores e permite que as redes LAN sejam aprendidas dinamicamente.
Boas práticas de segurança
Usar autenticação OSPF quando disponível.
Não ativar OSPF em interfaces desnecessárias.
Usar interfaces passivas em redes de usuários.
Planejar corretamente as áreas.
Manter a área 0 bem estruturada.
Evitar Router ID duplicado.
Documentar custos e áreas.
Controlar redistribuição de rotas.
Filtrar rotas quando necessário.
Proteger roteadores com ACLs.
Não permitir OSPF vindo de redes não confiáveis.
Monitorar alterações de vizinhança.
Fazer backup das configurações.