Android

Comando ip ip com exemplos

Configurando parâmetros de rede com comando ip no Linux

Configurando parâmetros de rede com comando ip no Linux

Índice:

Anonim

O comando ip é uma ferramenta poderosa para configurar interfaces de rede que qualquer administrador de sistema Linux deve conhecer. Ele pode ser usado para ativar ou desativar interfaces, atribuir e remover endereços e rotas, gerenciar o cache ARP e muito mais.

Neste tutorial, mostraremos como usar o comando ip através de exemplos práticos e explicações detalhadas das opções mais comuns.

Como usar o comando ip

O utilitário ip faz parte do pacote iproute2 instalado em todas as distribuições modernas do Linux.

A sintaxe para o comando ip é a seguinte:

ip OBJECT COMMAND

OBJECT é o tipo de objeto que você deseja gerenciar. Os objetos (ou subcomandos) mais usados ​​são:

  • link ( l ) - exibe e modifica interfaces de rede. address ( a ) - Exiba e modifique os endereços IP. route ( r ) - Exibe e altera a tabela de roteamento. neigh ( n ) - exibe e manipula objetos vizinhos (tabela ARP).

O objeto pode ser escrito na forma completa ou abreviada (abreviada). Para exibir uma lista de comandos e argumentos para cada objeto, digite ip OBJECT help . cada subcomando

Ao configurar interfaces de rede, você deve executar os comandos como root ou usuário com privilégios de sudo. Caso contrário, o comando imprimirá RTNETLINK answers: Operation not permitted

As configurações definidas com o comando ip não são persistentes. Após a reinicialização do sistema, todas as alterações são perdidas. Para configurações permanentes, você precisa editar os arquivos de configuração específicos da distribuição ou adicionar os comandos a um script de inicialização.

Exibindo e modificando endereços IP

Ao operar com o objeto addr os comandos assumem o seguinte formato:

ip addr ADDRESS dev IFNAME

Os COMANDOS usados ​​com mais freqüência do objeto addr são: show , add e del .

Exibir informações sobre todos os endereços IP

Para exibir uma lista de todas as interfaces de rede e o endereço IP associado, digite o seguinte comando:

ip addr show

A saída será mais ou menos assim:

1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 2900sec preferred_lft 2900sec inet6 fe80::5054:ff:fe8c:6244/64 scope link valid_lft forever preferred_lft forever 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 2900sec preferred_lft 2900sec inet6 fe80::5054:ff:fe8c:6244/64 scope link valid_lft forever preferred_lft forever

1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 2900sec preferred_lft 2900sec inet6 fe80::5054:ff:fe8c:6244/64 scope link valid_lft forever preferred_lft forever

Você obterá a mesma saída se digitar omitir o comando show e digitar: ip addr .

Exibir informações sobre uma única interface de rede

Para obter informações sobre uma interface de rede específica, use ip addr show dev seguido pelo nome do dispositivo. Por exemplo, para consultar eth0 , digite:

ip addr show dev eth0

Atribuir endereços IP a uma interface

Para atribuir um endereço IP a uma interface, use a seguinte sintaxe:

ip addr add ADDRESS dev IFNAME

Onde IFNAME é o nome da interface e ADDRESS é o endereço IP que você deseja atribuir à interface.

Para adicionar o endereço 192.168.121.45 com a máscara de rede 24 ao dispositivo eth0 , digite:

sudo ip address add 192.168.121.45/24 dev eth0

Em caso de sucesso, o comando não mostrará nenhuma saída. Se a interface não existir, você receberá Cannot find device "eth0" .

Atribua vários endereços IP à mesma interface

Com o ip , você pode atribuir vários endereços à mesma interface. Por exemplo:

sudo ip address add 192.168.121.241/24 dev eth0 sudo ip address add 192.168.121.45/24 dev eth0

Para confirmar que os IPs foram atribuídos, digite ip -4 addr show dev eth0 ou ip -4 a show dev eth0 :

2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 3515sec preferred_lft 3515sec inet 192.168.121.45/24 scope global secondary eth0 valid_lft forever preferred_lft forever

2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 3515sec preferred_lft 3515sec inet 192.168.121.45/24 scope global secondary eth0 valid_lft forever preferred_lft forever

Remover / excluir um endereço IP da interface

A sintaxe para remover um endereço IP de uma interface é a seguinte:

ip addr dev ADDRESS dev IFNAME

IFNAME é o nome da interface e ADDRESS é o endereço IP que você deseja remover da interface.

Para remover o endereço 192.168.121.45/24 do dispositivo eth0, digite:

sudo ip address del 192.168.121.45/24 dev eth0

Exibindo e modificando interfaces de rede

Para gerenciar e visualizar o estado das interfaces de rede, use o objeto de link .

Os comandos mais usados ​​ao trabalhar com os objetos de link são: show , set , add e del .

Exibir informações sobre interfaces de rede

Para exibir uma lista de todas as interfaces de rede, digite o seguinte comando:

ip link show

1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff 1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff

1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff

Ao contrário de ip addr show , o ip link show não imprime informações sobre os endereços IP associados ao dispositivo.

Para obter informações sobre uma interface de rede específica, use o ip link show dev seguido pelo nome do dispositivo. Por exemplo, para consultar eth0 , digite:

ip link show dev eth0

2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff

2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff

Alterar o status da interface UP / DOWN

Para ip link set dev ou desativar as interfaces, use o ip link set dev seguido pelo nome do dispositivo e pelo estado desejado:

ip link set dev {DEVICE} up

Por exemplo, para colocar a interface eth0 online, digite:

ip link set eth0 up

E para trazer se estiver offline

ip link set eth0 down

Exibindo e alterando a tabela de roteamento

Para atribuir, remover e exibir a tabela de roteamento do kernel, use o objeto de route . Os comandos mais usados ​​ao trabalhar com os objetos de rotas são: list , add e del .

Exibir tabela de roteamento

Para obter uma lista das entradas de rota do kernel, use um dos seguintes comandos:

ip route ip route list ip route list SELECTOR

Quando usado sem um SELECTOR o comando listará todas as entradas de rota no kernel:

ip route list

default via 192.168.121.1 dev eth0 proto dhcp src 192.168.121.241 metric 100 192.168.121.0/24 dev eth0 proto kernel scope link src 192.168.121.241 192.168.121.1 dev eth0 proto dhcp scope link src 192.168.121.241 metric 100

Para exibir apenas o roteamento de uma rede específica, por exemplo, 172.17.0.0/16 , você deve digitar:

ip r list 172.17.0.0/16

172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown

Adicionar uma nova rota

Para adicionar uma nova entrada à tabela de roteamento, use o comando route add seguido pelo nome da rede ou do dispositivo.

Adicione uma rota para 192.168.121.0/24 através do gateway em 192.168.121.1

ip route add 192.168.121.0/24 via 192.168.121.1

Adicione uma rota a 192.168.121.0/24 que possa ser alcançada no dispositivo eth0.

ip route add 192.168.121.0/24 dev eth0

Para adicionar uma rota padrão, use a palavra-chave default . O comando a seguir adicionará uma rota padrão via gateway local 192.168.121.1 que pode ser acessada no dispositivo eth0 .

ip route add default via 192.168.121.1 dev eth0

Excluir uma rota

Para excluir uma entrada da tabela de roteamento, use o comando route add . A sintaxe para excluir uma rota é a mesma que ao adicionar.

O comando a seguir excluirá a rota padrão:

ip route del default

Exclua uma rota para 192.168.121.0/24 através do gateway em 192.168.121.1

ip route add 192.168.121.0/24 via 192.168.121.1

Conclusão

Até agora você deve ter um bom entendimento de como usar o comando ip do Linux. Para obter mais informações sobre as outras opções de ip , visite a página man comando ip ou digite man ip no seu terminal.

terminal ip