fbpx Certificação Linux: Comando ip no Linux (manipula interface de rede) [Guia Básico]

Blog

Comando ip no Linux (manipula interface de rede) [Guia Básico]

📅 01/01/2019 ⏱ 4 min ✍️ Uira Ribeiro
Linuxcomandos
Comando ip no Linux (manipula interface de rede) [Guia Básico]

O Comando ip no Linux é uma poderosa ferramenta para mostrar e manipular as interfaces de rede, configurar endereços IP, alterar as tabelas de rotas e criar túneis.

Com este comando é possível inserir ou alterar entradas na tabela de rotas, adicionar ou modificar a rota padrão e também configurar endereços de rede.

Este comando substituí os comandos do Net-Tools ifconfig e route.

Os objetos com que o comando ip pode trabalhar são: link, addr, addrlabel, route, rule, neigh, ntable, tunnel, tuntap,  maddr,  mroute,  mrule,  monitor,  xfrm, netns, l2tp,  tcp_metrics, token e netconf.

No dia a dia, para um programador, é necessário saber como funcionam os objetos addr (que configuram o endereço IP), link (que habilita uma interface) e route (que modifica a tabela de rotas).

A primeira função do ip é mostrar o endereço IP das interfaces do host. Utiliza-se o comando ip seguido do objeto addr:

# ip addr1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00    inet 127.0.0.1/8 scope host lo    inet6 ::1/128 scope host     2: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500     link/ether 00:26:55:04:d3:95 brd ff:ff:ff:ff:ff:ff    inet 172.19.1.34/20 brd 172.19.15.255 scope global enp0s25    inet6 fe80::226:55ff:fe04:d395/64 scope link

O comando ip pode ser utilizado para designar um endereço IP ao host, utilizando o objeto addr, seguido da palavra add:

# ip addr add 192.168.50.5 dev eth1

Neste caso será atribuído o IP 192.168.50.5 à interface eth1. Você pode ou não informar o tamanho da rede na notação CIDR:

# ip addr add 192.168.50.5/24 dev eth1

A mesma ideia pode ser utilizada para apagar um endereço IP de uma determinada interface, com o objeto addr e o comando del:

# ip addr del 192.168.50.5/24 dev eth1

Para habilitar uma interface, utilizamos o objeto link, seguido da palavra set, o nome da interface e o comando up:

# ip link set eth1 up

Para desabilitar uma interface, o mesmo, mas com o comando down:

# ip link set eth1 down

Para verificar a tabela de rotas do host, você pode usar o objeto route:

# ip routedefault via 172.19.1.1 dev enp0s25 172.19.0.0/20 dev enp0s25  proto kernel  scope link  src 172.19.1.34

Para adicionar uma rota estática na tabela de rotas, utiliza-se também o objeto route, seguido da palavra add, a rede que se deseja adicionar e a interface e gateway em que ela está conectada:

# ip route add 10.10.20.0/24 via 172.19.1.10 dev enp0s25

Neste exemplo, será adicionada a rede 10.10.20.0/24 cujo gateway será o endereço 172.19.1.10, que está conectado na interface enp0s25.

Ao listar novamente a tabela de rotas:

# ip route showdefault via 172.19.1.1 dev enp0s25 10.10.20.0/24 via 172.19.1.10 dev enp0s25 172.19.0.0/20 dev enp0s25  proto kernel  scope link  src 172.19.1.34

O mesmo raciocínio vale para remover uma rota da tabela de rotas:

# ip route del 10.10.20.0/24

Ainda é possível adicionar uma rota padrão na tabela de rotas, utilizando o objeto route, seguido de add e a palavra default, seguido do endereço IP do gateway padrão:

# ip route add default via 192.168.50.100

As ferramentas ifconfig, route e netstat que fazem parte do pacote legado Net-Tools tem paralelo na ferramenta ip do iproute2, a seguir:

Net-ToolsIproute2Descrição
ifconfig -aip link showExibe todas as interfaces de rede
ifconfig eth1 upip link set up eth1Habilita interface de rede
ifconfig eth1 downip link set down eth1Desabilita interface de rede
ifconfig eth1 192.168.0.1/24ip addr add 192.168.0.1/24 dev eth1Defini IP/Mascára de rede
ifconfig eth1 0ip addr del 192.168.0.1/24 dev eth1Remove definição de IP/Mascára de rede
ifconfig eth1ip addr show dev eth1Mostra Informações específicas de uma interface
ifconfig eth1 hw ether 00:52:bc:33:25:a1ip link set dev eth1 address 00:52:bc:33:25:a1Altera o MAC-ADDRESS
route -n  ou netstat -rnip route showExibe a tabela de roteamento
route add default gw 192.168.0.1ip route add default via 192.168.0.1Adiciona a rota padrão
route add -net 192.168.0.0/24 eth1ip route add 192.168.0.0/24 dev eth1Adiciona uma rota estática
route del -net 192.168.0.0/24ip route del 192.168.0.0/24Exclui uma rota estática
route del default ip route del defaultExclui a rota padrão

Aprenda muito mais sobre Linux em nosso curso online. Você pode efetuar a matrícula aqui. Se você já tem uma conta, ou quer criar uma, basta entrar ou criar seu usuário aqui.

Gostou? Compartilhe

Uira Ribeiro

Prof. Uirá Ribeiro

Chair do Board do Linux Professional Institute

Especialista Linux com mais de 20 anos de experiência.
Autor de 5 livros e mentor de mais de 14.000 alunos certificados.
20 certificações de alto nível, incluindo LPIC-3, CKA, RHCE e AWS Solutions Architect.

WhatsApp