Configurações de Rede e o Comando IP - Linux

Hoje em dia, praticamente todos os computadores estão de alguma forma conectados a uma rede e interagem com outros computadores. Nesse contexto, o gerenciamento de conexões de rede assume um papel crucial, inclusive no Linux. No nível de hardware, a interação com a rede é realizada pela placa de rede. Cada placa de rede possui um endereço MAC (Media Access Control), que é único globalmente. Isso se aplica não apenas à placa de rede de um computador pessoal, mas também a um telefone celular usado para acessar a internet.

Contudo, para a interação efetiva em rede, utilizam-se os endereços IP, pois cada um contém informações sobre o computador local e a rede à qual está conectado. Com estas informações, é possível direcionar comunicações para qualquer computador em qualquer parte do mundo através de seu endereço IP.

Como os endereços IP são numéricos (por exemplo, 179.123.45.67) e podem ser complexos para o público em geral, nomes de domínio são frequentemente usados para se referir a outros computadores na rede. Estes nomes são convertidos em endereços IP por um servidor de DNS (Domain Name Service). Portanto, para que um computador possa interagir com outros na rede, ele precisa de um endereço IP e deve saber onde encontrar os servidores DNS. Essas informações podem ser configuradas manualmente, mas em muitos casos são estabelecidas automaticamente por um servidor DHCP.

A principal ferramenta para o gerenciamento de endereços IP no Linux é o comando ip, que oferece diversas opções para controlar praticamente todos os aspectos da conexão de rede. Por exemplo, pode ser usado para configurar um endereço IP, gerenciar o roteamento, etc. O comando tem a seguinte sintaxe:

ip [OPTIONS] OBJECT {COMMAND | help}

Como argumento obrigatório, OBJECT especifica o objeto sobre o qual as operações serão realizadas. Alguns dos objetos incluídos são:

  • link: utilizado para gerenciar ou exibir propriedades de um dispositivo de rede, monitorando o estado atual do interface de rede.

  • addr ou address: gerencia ou exibe endereços de rede IPv4 ou IPv6 em um dispositivo.

  • route: gerencia ou exibe entradas na tabela de roteamento.

  • rule: gerencia ou exibe regras na base de dados de política de roteamento.

  • neigh: gerencia ou exibe entradas no cache ARP, fornecendo informações sobre quais endereços IP estão associados a quais endereços MAC. Com essa opção, você pode modificar ou exibir informações ARP.

  • netns: gerencia espaços de nomes de redes IP, uma tecnologia frequentemente usada em ambientes de nuvem para gerenciar ambientes de rede isolados usando o mesmo interface de rede.

  • tunnel: gerencia ou exibe túneis IP, geralmente usado apenas na configuração de conexões para uma rede privada virtual (VPN).

  • madr: gerencia ou exibe endereços de multicast em interfaces. Um endereço de multicast é um endereço de grupo que pode ser adicionado a uma placa de rede, permitindo que um usuário ou uma aplicação se comunique simultaneamente com todos os nós que fornecem a mesma funcionalidade.

  • mroute: gerencia ou exibe entradas no cache de roteamento de multicast.

  • monitor: observa o que está acontecendo em um dispositivo específico.

Para cada objeto, existe um conjunto específico de opções disponíveis, que pode variar dependendo do objeto em questão. A maneira mais simples de aprender sobre essas opções é usar o comando ip seguido do objeto e então do termo help. Por exemplo, para entender como usar o objeto monitor, você deve digitar o seguinte comando:

ip monitor help

Como o comando ip aceita muitos objetos, cada um com várias opções possíveis, a seguir descreverei apenas alguns dos cenários de uso mais comuns.

Para visualizar a configuração atual da rede, utiliza-se o comando:

ip addr show

Por exemplo:

programicio@Programicio:~$ ip address show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 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
    inet6 ::1/128 scope host 
        valid_lft forever preferred_lft forever
2: enp6s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 15:77:eb:f6:01:51 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.108/24 brd 192.168.0.255 scope global dynamic noprefixroute enp6s0
        valid_lft 6716sec preferred_lft 6716sec
    inet6 1d82::61ec:e5ee:fe37:156/64 scope link 
        valid_lft forever preferred_lft forever
3: wlp4s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 00:72:8b:7e:68:f0 brd ff:ff:ff:ff:ff:ff

Neste exemplo, o computador tem três dispositivos de rede, cada um precedido por um número. O dispositivo número 1 - lo ou loopback device (dispositivo de loopback) - é um interface de rede usado para propósitos internos no computador.

Para cada dispositivo, uma série de atributos são definidos entre colchetes angulares. Por exemplo, o atributo BROADCAST indica que o dispositivo pode enviar mensagens de broadcast para outros nós na rede. O atributo MULTICAST mostra que o dispositivo também pode enviar pacotes multicast. O atributo UP significa que o dispositivo está ativo.

Após os colchetes angulares, seguem-se também uma série de atributos do protocolo IP, como mtu, que representa a unidade máxima de transmissão de dados utilizada no interface.

As linhas que começam com inet exibem os endereços atribuídos à placa de rede com as máscaras de sub-rede correspondentes.

Para ver o estado atual do interface de rede, usa-se o comando:

ip link show

Outra tarefa comum é visualizar a tabela de rotas:

ip route show
Política de Privacidade

Copyright © www.programicio.com Todos os direitos reservados

É proibida a reprodução do conteúdo desta página sem autorização prévia do autor.

Contato: programicio@gmail.com