Introdução

No mundo das redes Linux, ter controle sobre como o seu computador envia dados é muito importante. A maioria dos sistemas operacionais lida com o roteamento automaticamente via DHCP, mas há momentos, especialmente em servidores, roteadores ou outros ambientes de laboratório, em que você precisa informar ao sistema exatamente para onde enviar o tráfego. Isto é feito usando o ip route add comando.

O ip route add faz parte do O comando iproute2 suite, que é uma coleção moderna de utilitários para configurar redes no Linux. Ele permite criar rotas estáticas: caminhos fixos e definidos manualmente para o tráfego de rede.

Como funciona o "ip route add"?

Quando seu computador precisa enviar um pacote, ele verifica seu tabela de roteamento. Esta tabela é uma lista de regras que dizem: “Se o IP de destino for X, envie o pacote via Gateway Y”.

O ip route add simplesmente insere uma nova regra nesta tabela.

Aqui está a lógica passo a passo:

  1. Execução de Comando: Você digita o comando especificando o rede alvo e o gateway (ou interface) para alcançá-lo.
  2. Atualização do Kernel: O kernel Linux valida o comando e adiciona a entrada à tabela de roteamento na memória.
  3. Decisão de rota: Na próxima vez que um pacote for gerado para esse destino, o kernel o compara com sua nova regra.
  4. Encaminhamento: O kernel envia o pacote através da interface especificada ou para o IP do próximo salto especificado.

É importante observar que sem configuração adicional, essas rotas são frequentemente temporário e desaparecerá se você reiniciar a máquina.

Como usar o comando (exemplos)

A sintaxe básica é simples, mas poderosa. Aqui estão as maneiras mais comuns de usá-lo.

1. Adicionando uma rota a uma rede específica

Para informar ao seu sistema como acessar uma rede específica (por exemplo, 192.168.50.0/24) através de um IP de gateway (192.168.1.1):

festa
sudo ip route add 192.168.50.0/24 via 192.168.1.1

> 192.168.50.0/24: A rede de destino que você deseja alcançar.<br> > via 192.168.1.1: O roteador do “próximo salto” que sabe como chegar lá.


  1. Adicionando uma rota através de uma interface específica

Às vezes você não precisa de um IP de gateway, apenas de uma interface (como um túnel VPN):

festa
sudo ip route add 10.8.0.0/16 dev tun0
  • dev tun0: Força o tráfego para 10.8.0.0/16 fora do tun0 interface diretamente.

3. Adicionando uma rota de host específica

Para criar uma rota para um solteiro Endereço IP em vez de uma rede inteira:

festa
sudo ip route add 8.8.8.8 via 192.168.1.254

Isso força o tráfego para 8.8.8.8 (Google DNS) para passar por um gateway diferente do seu tráfego principal da Internet.

4. Alterando o gateway padrão

O gateway padrão é a rota "pega-tudo" para o tráfego da Internet. Para alterá-lo manualmente:

festa
sudo ip route add default via 192.168.1.1

Aplicações de ip route add

Por que adicionar rotas manualmente se o roteador pode lidar com isso?

  • Configuração VPN: Quando você se conecta a uma VPN, o software usa ip route add forçar o tráfego destinado à sede corporativa a passar pelo túnel criptografado (tun0) em vez do seu WiFi normal.
  • Servidores Dual-Homed: Servidores com duas placas de rede (por exemplo, uma para internet e outra para backup contínuo) precisam de rotas estáticas para garantir que o tráfego de backup permaneça na rede privada e rápida.
  • Testes e Laboratórios: Engenheiros de rede costumam construir laboratórios virtuais. As rotas estáticas permitem simular topologias de rede complexas em um único laptop.
  • Isolamento de segurança: Você pode rotear o tráfego para destinos confidenciais através de um firewall específico ou gateway seguro, criando um “caminho limpo” para dados críticos.

Por que é importante?

A importância de ip route add reside em controle de precisão.

Protocolos de roteamento dinâmico são ótimos para redes grandes, mas são “ruidosos” e complexos. O roteamento estático é silencioso e exato. Em um servidor Linux, você não deseja executar software de roteamento pesado apenas para acessar um servidor de backup específico. ip route add é a ferramenta cirúrgica para esse trabalho.

É também a principal ferramenta para solução de problemas. Se um servidor não conseguir acessar a Internet, verifique a tabela de roteamento (ip route show) e adicionar rotas temporárias é a maneira mais rápida de diagnosticar se o problema é um gateway defeituoso ou uma rede mal configurada.

Vantagens

  • Simplicidade: Sem protocolos complexos para configurar; apenas um comando.
  • Sem despesas gerais: Não utiliza CPU ou largura de banda, diferentemente dos protocolos de roteamento dinâmico.
  • Segurança: As rotas são conhecidas e fixas; o tráfego não pode ser falsificado ou redirecionado por um roteador não autorizado.
  • Previsibilidade: O caminho é sempre o mesmo, facilitando a depuração.

Desvantagens

  • Manutenção Manual: Se a topografia da rede mudar (por exemplo, o IP do gateway mudar), você deverá atualizar manualmente cada servidor.
  • Não escalável: Impossível gerenciar em centenas de dispositivos; imagine digitar comandos em 500 servidores sempre que uma rota muda.
  • Sem redundância: Se o gateway cair, a rota estará inoperante. O sistema não encontrará automaticamente um caminho de backup.
  • Efêmero: Por padrão, as rotas são perdidas na reinicialização. Você deve adicioná-los aos arquivos de configuração de rede (como Netplan ou /etc/network/interfaces) para torná-los permanentes.

Diferença entre ip route e route

Você pode ver tutoriais mais antigos usando o route comando. Aqui está porque você deve evitá-lo.

Recurso ip route (Moderno) route (Legado)
Pacote Parte de iproute2. Parte de net-tools.
Status Padrão atual, mantido ativamente. Obsoleto, em sua maioria sem manutenção.
Capacidades Suporta roteamento complexo (roteamento de política, múltiplas tabelas). Somente roteamento básico.
Saída Conciso, rápido e fácil de usar. Verboso e mais lento.
Sintaxe ip route add ... route add ...

Conclusão

O ip route add é uma ferramenta aparentemente simples que libera todo o potencial da rede Linux. Ele permite que os administradores ignorem comportamentos padrão e determinem exatamente como o tráfego flui através de seus sistemas. O comando

Embora o roteamento manual não seja escalonável para toda a Internet, ele é a base da configuração do servidor, das VPNs e do design de rede seguro. Dominar esse comando é um rito de passagem para qualquer profissional Linux, dando a você o poder de controlar os dados com precisão e confiança.