Linux / Comando ip: consultar interfaces, endereços e rotas
O comando ip, do pacote iproute2, consulta ou altera interfaces de rede, endereços do Protocolo de Internet (IP), rotas e informações de vizinhos no Linux. Para começar um diagnóstico, consulte endereços e rotas; ter um endereço atribuído não comprova acesso à internet. Comandos como add, del e set podem alterar a rede e interromper uma conexão remota.
Objetos do comando ip
O ip separa a configuração em objetos. link representa a interface e seu estado; address, os endereços atribuídos; route, os caminhos para enviar pacotes; e neigh, as informações de vizinhos no enlace local. Consultar esses objetos ajuda a distinguir um problema de interface de um problema de endereço ou rota.
O comando de consulta costuma ser show. A ação depende do objeto escolhido: não substitua show por uma operação de alteração apenas para tentar corrigir uma saída inesperada. Em contêineres e outros ambientes com namespaces de rede, a consulta mostra o contexto em que o comando está sendo executado, não necessariamente todas as interfaces do host.
Sintaxe e versão instalada
ip [opções] objeto comando [argumentos]
Essa linha descreve a sintaxe; os colchetes e os nomes genéricos não são argumentos para copiar literalmente. Consulte man ip, ip help ou a ajuda do objeto correspondente. ip -Version identifica a versão instalada; recursos e formatos de saída podem variar.
Consultar interfaces, rotas e a escolha de caminho
Interfaces e endereços em formato resumido:
ip -br address show
O resultado reúne nome da interface, estado informado e endereços IPv4 e IPv6, as versões 4 e 6 do IP. Uma interface pode ter vários endereços. Identifique os nomes reais do seu sistema, que podem ser diferentes de eth0, e não conclua que uma interface sem endereço está necessariamente com defeito.
Rotas da consulta padrão:
ip route show
Sem filtros adicionais, essa consulta normalmente mostra as rotas IPv4 da tabela main. Ela não é uma listagem completa de todas as famílias e tabelas de uma configuração com roteamento por políticas. Para IPv6, consulte também ip -6 route show; quando houver políticas, examine as regras e tabelas pertinentes antes de concluir que uma rota não existe.
Quando aparecerem, default indica uma rota padrão, via o próximo roteador e dev a interface de saída. Uma rota diretamente conectada pode não ter via. Para um destino sem rota mais específica, costuma ser necessária uma rota padrão adequada; a ausência de um gateway padrão não impede, por si só, toda comunicação local.
Escolha de rota para um destino específico:
ip route get 192.0.2.1
O comando solicita ao kernel a resolução de uma rota nas condições da consulta. Conforme o caso, o resultado pode indicar dev, src para o endereço de origem escolhido e via. Uma falha como “Network is unreachable” precisa ser investigada no contexto da família, das regras e das rotas existentes; não é uma instrução para adicionar um gateway por suposição.
route get não envia pacotes ao destino e não equivale a testar conectividade, DNS (Sistema de Nomes de Domínio) ou um serviço remoto. O manual de ip route diferencia a resolução de caminho de get da listagem de rotas de show. O endereço 192.0.2.1 pertence a uma faixa reservada para documentação; não o use como servidor real para testar a internet.
No Bash 5.3.9 do Git para Windows usado nesta verificação, o programa ip não estava disponível: a consulta de versão e as quatro consultas dos exemplos retornaram 127 por comando inexistente. As formas de comando passaram apenas por análise de sintaxe do Bash. Nenhuma configuração de rede foi alterada e não houve teste de conectividade em Linux nativo.
Ler estado e endereços no formato breve
-br e -brief são formas da mesma opção de saída breve. No objeto address, omitir a ação de consulta tem o efeito usado neste exemplo:
ip -brief address
Saída ilustrativa, preservada para explicar os campos; não é uma captura do ambiente testado:
lo UNKNOWN 127.0.0.1/8 ::1/128
eth0 UP 192.0.2.10/24
Na primeira linha, lo é a interface de loopback, usada para comunicação no próprio host, com os endereços 127.0.0.1/8 e ::1/128. O estado UNKNOWN não comprova uma falha: ele pode indicar que o estado operacional não foi definido pelo driver ou pelo espaço de usuário.
Na segunda linha, eth0 é o nome ilustrativo da interface, UP informa seu estado e 192.0.2.10/24 é um endereço com prefixo de rede de 24 bits. Esse prefixo corresponde à rede 192.0.2.0/24; não é parte do nome da interface. A RFC 5737 sobre endereços para documentação reserva essa faixa para exemplos, sem torná-la uma configuração a aplicar na sua rede.
O estado UP, isoladamente, não comprova rota válida, resolução de nomes ou acesso a uma aplicação. A documentação de estados operacionais do kernel Linux distingue o estado administrativo do operacional. Confira o contexto completo antes de interpretar apenas uma palavra da saída.
Opções principais e objetos
| Forma | O que consulta ou limita |
|---|---|
link show |
Interfaces e informações de enlace. Não comprova acesso a um destino remoto. |
address show |
Endereços e propriedades atribuídos às interfaces; uma interface pode ter mais de um endereço. |
route show |
Rotas da família e tabela selecionadas. A consulta padrão não reúne todas as tabelas de políticas. |
neigh show |
Entradas do Protocolo de Resolução de Endereços (ARP), em IPv4, e do Protocolo de Descoberta de Vizinhos (NDP), em IPv6, no enlace. Não lista todos os hosts da internet. |
-br |
Informações básicas em tabela. A documentação indica suporte nas consultas address show, link show e neigh show; não suponha suporte em qualquer objeto. |
-4 / -6 |
Seleciona a família IPv4 ou IPv6. Uma consulta IPv4 não permite concluir que não existe uma rota IPv6. |
Consulte o manual geral de ip do iproute2 e o manual de ip address para a sintaxe e as propriedades detalhadas.
Separar endereço, rota e resolução de nomes
- Confira interface e endereço. Leia a saída breve e confirme que está no host e no contexto de rede corretos. Registre a família e o endereço usados pelo serviço com problema.
- Confira o caminho para o destino relevante. Examine as rotas e, se necessário, a escolha feita por route get. Compare interface de saída, origem e próximo salto; uma rota calculada não é uma resposta recebida do destino.
- Confira a resolução de nomes separadamente. A resolução DNS traduz nomes em endereços. Em ambientes que o utilizam, resolvectl ajuda a examinar essa etapa; há um guia de resolvectl em inglês. Outros ambientes podem exigir uma ferramenta DNS diferente.
- Valide a conectividade e o serviço. Ping pode ajudar quando o destino responde ao Protocolo de Mensagens de Controle da Internet (ICMP), mas a falta de resposta pode refletir filtragem. Resolução DNS bem-sucedida ou uma resposta a ping também não comprovam que a porta e a aplicação necessárias estejam acessíveis.
Cuidados antes de alterar a rede
Em uma sessão remota, baixar a interface com uma operação como ip link set ... down, remover o endereço usado na conexão ou alterar sua rota pode cortar o acesso imediatamente. Antes de qualquer alteração, registre a configuração atual e prepare console alternativo, procedimento de recuperação e os valores exatos a restaurar. Não há um comando genérico de desfazer que sirva para todas as redes.
Alterações diretas com ip podem ser substituídas pelo serviço que gerencia a rede ou desaparecer após uma reinicialização. Para persistência, siga o método de configuração da distribuição e do gerenciador em uso. Não misture uma alteração temporária com a expectativa de que ela será salva automaticamente.
Pergunta frequente
Qual é a diferença entre ip address e ip route?
Ip address consulta os endereços atribuídos às interfaces. Ip route consulta caminhos e próximos saltos para enviar pacotes aos destinos; route get resolve uma escolha específica. Um endereço atribuído e uma rota disponível são informações diferentes, e nenhum dos dois, isoladamente, comprova conectividade de ponta a ponta.




