20 exemplos de configuração de rede com comandos ip no Linux

Comandos ip no Linux

Os comandos ip são usados para mostrar e configurar parâmetros de rede para as interfaces em uma máquina.

Há dois conjuntos principais de programas para a configuração de rede no Linux: os pacotes net-tools e iproute2

Os antigos programas do conjunto net-tools (como o clássico ifconfig) pertencem ao sistema de redes Linux NET-3. A maioria está obsoleta atualmente.

Já os programas do pacote iproute2 (como o ip, tratado neste tutorial), são o sistema de configuração de rede atual do Linux. O iproute2 consiste em uma série de utilitários, dos quais o ip é o foco desse nosso artigo; mas além do ip, outros utilitários que compõem o pacote iproute2 são:

  • ss
  • bridge
  • rtmon
  • nstat
  • tc
  • devlink

e vários outros.

Sintaxe:

ip [opções] OBJETO COMANDO

A tabela a seguir mostra os principais objetos disponíveis para uso com os comandos ip, suas abreviações e função:

Objeto Abreviação Função
address a, addr Endereço em um dispositivo (IPv4 ou IPv6)
addrlabel addrl Configuração de rótulo para seleção de endereço
link l Dispositivo de rede
maddress m, maddr Endereço multicast
mroute mr Entrada de cache de roteamento multicast
neighbour n, neigh Entrada de cache ARP ou NDISC
rule ru Regra no banco de políticas de roteamento
tunnel t Túnel sobre IP

No dia-a-dia de trabalho do administrador de redes Linux, é mais comum o uso dos objetos address e link, por se tratarem de objetos usados na configuração direta de endereçamento e interfaces de rede físicas, mas é importante conhecer todos eles, pois em algum momento eles podem ser necessários.

Exemplos

Vejamos alguns exemplos de aplicação do comando ip para gerenciamento de parâmetros de rede em um servidor (ou estação). Note que para executar a maior parte dos comandos é necessário possuir privilégios de administrador:

1. Mostrar as interfaces de rede disponíveis no computador:

# ip link show

2. Ver os ips das interfaces de rede:

# ip addr show

Ou simplesmente:

# ip a

ver ip no linux com ip addr show

3. Ver somente informações sobre o protocolo IPv4 nas interfaces:

# ip -4 a

Para o protocolo IPv6:

# ip -6 a

4. Habilitar uma interface de rede, como a enp0s3:

# ip link set enp0s3 up

Reiniciar a máquina ou o serviço de rede após.

5. Desabilitar uma interface de rede, como a enp0s3:

ip link set enp0s3 down

6. Ver o ip de uma interface específica, como a enp0s3:

# ip addr ls enp0s3

ou

# ip addr show enp0s3

7. Ver estatísticas de comunicação (tx e rx) de uma interface específica (opção -s):

# ip -s link show enp0s3

8. Atribuir um endereço IP a uma interface específica:

# ip addr add 192.168.12.100/24 dev enp0s3

Obs. Esta configuração é perdida ao reiniciar o sistema. Para mantê-la, editar o arquivo de configuração /etc/network/interfaces (Debian e derivados) ou os arquivos em /etc/sysconfig/network-scripts/ (Red Hat e derivados)

9. Excluir um endereço IP de uma interface específica:

# ip addr del 192.168.12.100/24 dev enp0s3

10. Ajustar o nome da interface de rede enp0s3 para eth0:

# ip link set enp0s3 name eth0

11. Verificar as rotas de rede (tabela de roteamento):

# ip route show

12. Adicionar uma rota estática:

# ip route add 10.20.30.0/24 via 192.168.100.10 dev enp0s3

Obs. Esta configuração é perdida ao reiniciar o sistema. Para mantê-la, editar o arquivo de configuração /etc/network/interfaces (Debian e derivados) ou os arquivos em /etc/sysconfig/network-scripts/ (Red Hat e derivados).

Por exemplo, no debian, adicionamos a linha:

up ip route add 10.20.30.0/24 via 192.168.100.10 dev enp0s3

ao arquivo /etc/network/interfaces para adicionar a rota estática de forma permanente.

13. Remover uma rota estática:

# ip route del 10.20.30.0/24

14. Adicionar um endereço de gateway padrão geral

# ip route add default via 192.168.100.10

Se o gateway padrão para a rede já existir, será emitida uma mensagem de erro.

15. Configurar um endereço MAC em uma interface:

# ip link set dev enp0s3 address 00:0a:75:20:f5:bd

16. Alterar o MTU em uma interface. Por exemplo, aplicar um MTU de 9000 na interface enp0s3:

# ip link set mtu 9000 dev enp0s3

Geralmente alteramos o MTU em redes gigabit para permitir o tráfego de Jumbo Frames (quadros jumbo), de modo a aumentar a performance de transmissão da rede.

17. Consultar a tabela ARP:

# ip neigh

18. Consultar a tabela ARP de um interface específica:

# ip neigh show dev enp0s3

19. Visualizar a ajuda dos comandos ip:

# ip help

Ou ainda, visualizar a ajuda apenas dos comandos de endereçamento:

# ip addr help

20. Habilitar o modo promíscuo na interface enp0s3:

# ip link set enp0s3 promisc on

Excelente! Com esses comandos você já pode começar a administrar a rede em seu sistema Linux usando a ferramenta ip do conjunto iproute2. Ainda há muitos profissionais usando as antigas ferramentas net-tools, mas com o tempo mais e mais administradores e usuários vão migrar para as novas ferramentas, mesmo porque as distribuições Linux vão, pouco a pouco, abandonando o uso de ferramentas obsoletas e abraçando a utilização dos padrões mais modernos.

 

Sobre Fábio dos Reis (1192 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

7 Comentários em 20 exemplos de configuração de rede com comandos ip no Linux

  1. Boa tarde, Fábio.
    Meu nome é Paulo moro em londrina e acompanho seus vídeos no youtube.
    Sou usuário linux debian desde 2004. uso hoje a versão estable do stretch debian 9. Comecei a estudar configuração de rede com maquinas virtuais tb debian 9.
    Se não for atrapalhar seu tempo poderia me ajudar em configurar o arquivo interfaces para uma placa rede local static e outra placa para NAT visto que o ipconfig está obsoleto ando perdido na configuração dupla.

  2. Saulo Alberto // 28/03/2019 em 22:33 // Responder

    Boa Noite tudo bem,

    Queria sua ajuda, consigo trabalhar com 3 interfaces de rede no debian sendo uma wan e as outras para ser dhcp para a rede com a mesma faixa de ip ?

    • Sim Saulo, consegue trabalhar com 3 interfaces de rede no Debian Linux sem problemas. Porém, no caso das interfaces internas, você precisa configurá-las para usarem faixas de IP diferentes – mas dentro da mesma rede – como por exemplo 192.168.0.1 a 192.168.0.50 na primeira interface e 192.168.0.51 a 192.168.0.100 na segunda interface. Assim, você não terá problema de conflito de IP.

  3. Fábio parabéns , gostei da postagem . Qual dos seus videos tem as praticas incluindo a pergunta do saulo aberto das 3 interfaces ?

  4. Você me ajudou muito, obrigado!!

  5. Bem completo e direto ao ponto

Escreva um comentário

Seu e-mail não será divulgado


*