O comando “ip addr”


393 visualizações

Seguindo com a sequência de artigos sobre o comando “ip”, hoje irei falar sobre o “ip addr”.

O comando “ip addr” é utilizado no Linux para configurar parâmetros relacionados com os protocolos da camada de rede, como por exemplo o IPv4 e o IPv6.

Como eu já mencionei no artigo anterior “O comando ip”, uma grande diferença entre o comando “ip addr” e o “ifconfig” é que com o “ip addr” não precisamos mais da funcionalidade de “IP Aliasing”.

A primeira função que iremos ver e a mais simples do comando “ip addr” é a de listar quais endereços IP estão configurados em uma interface de rede. Para os exemplos a seguir eu irei utilizar uma interface do tipo Ethernet que no Linux é geralmente representada pelo nome “eth0″. Veja o exemplo:


root@linux:~# ip addr show dev eth0
 2: eth0: MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
      link/ether 00:19:5b:69:5d:d7 brd ff:ff:ff:ff:ff:ff
      inet 192.168.0.1/24 scope global eth0

Alguns dos valores mostrados eu irei explicar em um próximo artigo. Neste momento o que é importante perceber são os valores para o endereço IP, e neste caso IPv4, atribuídos à interface “eth0″. Essa interface é a segunda interface reconhecida pelo sistema Linux onde eu executei o comando “ip addr show dev eth0″. Isso está indicado logo no começo da listagem pelo número “2:”. Normalmente a primeira interface ativa no sistema é a interface “lo”, ou seja, a interface “loopback”.

Se você quiser listar todas as interfaces disponíveis no seu sistema, execute o comando “ip addr show” sem o parâmetro “dev” da seguinte forma:

ip addr show

Para cada versão do protocolo IP, IPv4 ou IPv6, o comando “ip addr show” nos mostra para qual versão um determinado endereço foi configurado através dos nomes “inet”, para o IPv4, e “inet6″, para o IPv6.

Vamos esquecer por um momento a linha iniciada por “link/ether”, eu irei explicá-la em um próximo artigo.

Agora para exemplificar a configuração de um endereço IP, vou adicionar um endereço IPv6 a interface “eth0″. Veja o exemplo:


root@linux:~# ip addr add 2001:0db8:0:f101::1/64 dev eth0

E novamente listando os endereços:


root@linux:~# ip addr show dev eth0
 2: eth0: MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
      link/ether 00:19:5b:69:5d:d7 brd ff:ff:ff:ff:ff:ff
      inet 192.168.0.1/24 scope global eth0
      inet6 2001:db8:0:f101::1/64 scope global tentative
          valid_lft forever preferred_lft forever

Agora nossa interface tem dois endereços IP configurados, um IPv4 e outro IPv6.

Podemos remover todos os endereços de uma só vez usando a função “flush” da seguinte forma:


root@linux:~# ip addr flush dev eth0

E então a interface ficará sem endereços IP:


root@linux:~# ip addr show dev eth0
 2: eth0: MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
 link/ether 00:19:5b:69:5d:d7 brd ff:ff:ff:ff:ff:ff

Estas são as formas mais básicas de uso do comando “ip addr”. Existem algumas outras funções que não mencionei ainda pois gostaria de falar antes sobre outros comandos como o “ip neigh” e o “ip route”. Estes assuntos ficarão para um próximo artigo.

Até a próxima!

Ronaldo Afonso

Sobre Ronaldo Afonso

Ronaldo Afonso já escreveu 3 artigos no portal.

Tenho mais de 10 anos de experiência em Linux, rede de computadores e projetos usando linguagens de programação C e Python. Atualmente trabalho na Vex Pointer como analista de software embarcado.

-->

Interaja

Qual a soma entre:
1 + 1