Gerenciar Endereçamento IP no Linux

CompTIABeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá as habilidades fundamentais para gerenciar o endereçamento IP em um ambiente Linux. Você começará usando o comando moderno ip para inspecionar as interfaces de rede do seu sistema. Em seguida, configurará manualmente um endereço IP estático, definirá um gateway padrão para permitir a comunicação com redes externas e, em seguida, verificará sua conexão usando o utilitário ping.

Em seguida, você explorará a configuração dinâmica de IP liberando o endereço estático e usando o comando dhclient para obter automaticamente um novo endereço IP de um servidor DHCP. Para concluir o laboratório, você usará os comandos arp e traceroute para inspecionar e verificar ainda mais sua configuração de rede, garantindo que todos os componentes estejam funcionando corretamente.

Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível intermediário com uma taxa de conclusão de 76%. Recebeu uma taxa de avaliações positivas de 97% dos estudantes.

Inspecionar Interfaces de Rede com ip a

Nesta etapa, você aprenderá como inspecionar as interfaces de rede em seu sistema Linux. Antes de poder configurar um endereço IP, você deve primeiro identificar o nome da interface de rede que deseja configurar. Cada conexão, seja com fio ou sem fio, é gerenciada através de uma interface de rede.

O comando moderno e padrão para visualizar e manipular interfaces de rede no Linux é ip. Usaremos ele com o argumento a (ou address) para exibir todas as interfaces de rede e seus endereços IP atribuídos.

  1. Abra seu terminal. Você já deve estar no diretório ~/project.

  2. Para listar todas as interfaces de rede e suas configurações atuais, execute o seguinte comando:

    ip a

    Você verá uma saída semelhante à seguinte. Os detalhes exatos, como nomes de interface (eth0, enp0s5), endereços IP e endereços MAC, variarão a cada vez que você iniciar um novo ambiente de laboratório.

    1: lo: <LOOPBACK,UP,LOWER_UP> 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: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether 00:16:3e:0f:23:a5 brd ff:ff:ff:ff:ff:ff
        altname enp0s5
        inet 172.16.50.11/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
           valid_lft 1892159972sec preferred_lft 1892159972sec
    3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
        link/ether 02:42:bb:cb:56:62 brd ff:ff:ff:ff:ff:ff
        inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
           valid_lft forever preferred_lft forever

Entendendo a Saída:

  • 1: lo: Esta é a interface de loopback (loopback interface), uma interface virtual que o sistema usa para se comunicar consigo mesmo. Ela sempre tem o endereço IP 127.0.0.1.
  • 2: eth0: Esta é a sua interface Ethernet (Ethernet interface) principal (com fio). Sua interface pode ter um nome diferente ou mostrar um altname (nome alternativo) como enp0s5. Esta é a interface com a qual trabalharemos.
  • 3: docker0: Você pode ver outras interfaces como docker0, que é usada pelo motor de contêineres Docker. Você pode ignorar esta para os propósitos deste laboratório.
  • inet 172.16.50.11/24: Este é o endereço IPv4 (IPv4 address) atribuído à sua interface. O endereço que você verá será diferente. Este é o endereço que permite que você se conecte a este laboratório remoto.
  • link/ether ...: Este é o endereço MAC (MAC address) da interface, um identificador de hardware exclusivo.

Agora que você pode identificar sua interface de rede principal (eth0), está pronto para aprender como configurá-la.

Configurar um Endereço IP Estático Secundário

Nesta etapa, você atribuirá manualmente um endereço IP estático adicional à sua interface de rede. Um IP estático é útil para servidores que precisam ser consistentemente acessíveis no mesmo endereço.

Nota Importante: Como você está em uma sessão de laboratório remota, não deve remover o endereço IP existente nem desativar a interface de rede. Fazer isso cortaria sua conexão. Em vez disso, adicionaremos um segundo endereço IP à interface, o que é uma prática comum e segura.

  1. Atribua o novo endereço IP estático 192.168.1.10 com uma máscara de sub-rede /24 à interface eth0. Se sua interface tiver um nome diferente, use esse nome em vez disso.

    sudo ip addr add 192.168.1.10/24 dev eth0

    Este comando adiciona o novo endereço sem afetar o existente. Ele não produz saída se for bem-sucedido.

  2. Finalmente, verifique se o novo endereço IP foi atribuído. Use o comando ip a novamente, especificando a interface eth0.

    ip a show eth0

    Agora você deverá ver ambos o endereço IP dinâmico original e o novo endereço IP estático listados para a interface eth0.

    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether 00:16:3e:0f:23:a5 brd ff:ff:ff:ff:ff:ff
        altname enp0s5
        inet 172.16.50.11/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
           valid_lft 1892159595sec preferred_lft 1892159595sec
        inet 192.168.1.10/24 scope global eth0
           valid_lft forever preferred_lft forever
        inet6 fe80::216:3eff:fe0f:23a5/64 scope link
           valid_lft forever preferred_lft forever

    Observe que um segundo campo inet agora mostra 192.168.1.10/24. Você adicionou com sucesso um endereço IP estático temporário enquanto manteve sua conexão ativa.

Definir um Gateway Padrão e Verificar Conectividade com ping

Nesta etapa, você definirá um gateway padrão e testará a conectividade de rede. O gateway padrão (default gateway) é o roteador para o qual seu sistema envia tráfego quando o destino está em outra rede (como a internet).

Seu sistema já possui um gateway padrão fornecido pelo ambiente de laboratório. Alterá-lo ou removê-lo quebraria sua conexão. Para praticar este comando com segurança, adicionaremos uma nova rota de gateway padrão secundária com uma métrica mais alta. Uma métrica mais alta significa que ela tem uma prioridade menor, portanto, o sistema não a usará para tráfego real, mantendo nossa conexão segura.

  1. Vamos adicionar uma rota de gateway padrão para a rede 192.168.1.0/24. Definiremos o IP do gateway como 192.168.1.1 e daremos a ele uma métrica de 200.

    sudo ip route add default via 192.168.1.1 dev eth0 metric 200
    • default: Especifica que esta é a rota padrão.
    • via 192.168.1.1: O IP do roteador gateway.
    • dev eth0: A rota é acessível através da interface eth0.
    • metric 200: Torna esta rota menos preferível do que a rota primária existente (que tem uma métrica menor).
  2. Verifique se a rota foi adicionada exibindo a tabela de roteamento.

    ip route

    A saída será complexa e variará, mas agora deve incluir duas linhas começando com default. Seu gateway original terá uma métrica menor (por exemplo, 100) e o nosso novo terá uma métrica de 200.

    default via 172.16.50.253 dev eth0 proto dhcp src 172.16.50.11 metric 100
    default via 192.168.1.1 dev eth0 metric 200
    172.16.50.0/24 dev eth0 proto kernel scope link src 172.16.50.11 metric 100
    192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.10
    ... (outras rotas podem estar presentes)
  3. Agora, vamos testar a conectividade com ping. Ele envia um "echo request" ICMP para um host para ver se ele está acessível. Vamos tentar pingar o gateway que acabamos de configurar para nossa rede imaginária.

    ping -c 3 192.168.1.1

    Resultado Esperado: Espera-se que este comando falhe. Como adicionamos o IP 192.168.1.10/24 à eth0, o sistema assume que 192.168.1.1 está na mesma rede local. Ele tentará alcançá-lo diretamente, mas nenhum dispositivo com esse endereço existe, então você verá "Destination Host Unreachable" (Host de Destino Inacessível).

    PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
    From 192.168.1.10 icmp_seq=1 Destination Host Unreachable
    From 192.168.1.10 icmp_seq=2 Destination Host Unreachable
    From 192.168.1.10 icmp_seq=3 Destination Host Unreachable
    
    --- 192.168.1.1 ping statistics ---
    3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2039ms

    Este é o resultado correto e esperado. Você aprendeu como adicionar uma rota padrão e usar ping para testes.

Reverter para um Endereço IP Dinâmico usando dhclient

Nesta etapa, você removerá as configurações estáticas que criou e, em seguida, usará dhclient para atualizar o lease de IP dinâmico do servidor DHCP.

Primeiro, a ferramenta dhclient, que faz parte do pacote isc-dhcp-client, pode não estar instalada por padrão. Vamos garantir que ela esteja disponível.

  1. Atualize a lista de pacotes do seu sistema e instale o cliente DHCP:

    sudo apt-get update
    sudo apt-get install -y isc-dhcp-client

    Agora, vamos remover com segurança o IP estático e a rota que adicionamos nas etapas anteriores sem interromper sua conexão.

  2. Exclua o endereço IP estático da eth0:

    sudo ip addr del 192.168.1.10/24 dev eth0
  3. Exclua a rota padrão estática que adicionamos:

    sudo ip route del default via 192.168.1.1 dev eth0

    Agora sua configuração de rede está de volta ao seu estado original. Para demonstrar o dhclient, vamos solicitar uma atualização do endereço IP do servidor DHCP.

  4. Primeiro, libere o lease DHCP atual.

    sudo dhclient -r eth0
  5. Em seguida, solicite um novo lease do servidor DHCP.

    sudo dhclient eth0

    Você pode ver a mensagem RTNETLINK answers: File exists. Isso é normal. Simplesmente significa que dhclient está tentando adicionar rotas que já estão presentes, portanto, nenhuma alteração é necessária. Sua conexão permanecerá estável.

  6. Verifique sua configuração visualizando a interface eth0 novamente.

    ip a show eth0

    A saída agora deve mostrar apenas o seu endereço IP dinâmico original, provavelmente na faixa 172.16.x.x ou 172.17.x.x. O IP estático 192.168.1.10 deve ter desaparecido.

    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether 00:16:3e:0f:23:a5 brd ff:ff:ff:ff:ff:ff
        altname enp0s5
        inet 172.16.50.11/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
           valid_lft 1892159460sec preferred_lft 1892159460sec
        inet6 fe80::216:3eff:fe0f:23a5/64 scope link
           valid_lft forever preferred_lft forever

    Você limpou com sucesso sua configuração estática e atualizou seu lease de IP dinâmico.

Verificar Configuração de Rede com arp e traceroute

Nesta etapa final, você aprenderá a usar arp e traceroute para inspecionar sua configuração de rede.

Primeiro, vamos garantir que as ferramentas necessárias estejam instaladas. arp está em net-tools, e traceroute está em seu próprio pacote.

  1. Instale net-tools e traceroute:

    sudo apt-get update
    sudo apt-get install -y net-tools traceroute

Usando arp para Visualizar o Cache ARP

O Address Resolution Protocol (ARP) mapeia um endereço IP para um endereço MAC físico em uma rede local. Os resultados são armazenados no cache ARP.

  1. Para popular seu cache ARP, primeiro encontre o IP do seu gateway padrão na tabela de roteamento.

    ip route | grep default

    A saída mostrará o IP do gateway. Observe que o endereço IP variará.

    default via 172.16.50.253 dev eth0
    default via 172.16.50.253 dev eth0 proto dhcp src 172.16.50.11 metric 100
  2. Agora, pingue esse IP do gateway (por exemplo, 172.16.50.253 no exemplo acima) para gerar tráfego.

    ping -c 1 <your-gateway-ip>
  3. Exiba o cache ARP usando arp -a.

    arp -a

    Você verá o IP e o endereço MAC do seu gateway. Você também pode ver uma entrada <incomplete> para o endereço 192.168.1.1 que tentamos pingar anteriormente, o que é normal.

    ? (192.168.1.1) at <incomplete> on eth0
    _gateway (172.16.50.253) at ee:ff:ff:ff:ff:ff [ether] on eth0

    Isso confirma que seu sistema resolveu o IP do gateway para um endereço MAC.

Usando traceroute para Rastrear Caminhos de Rede

O comando traceroute mostra a sequência de roteadores ("hops") que os pacotes levam para alcançar um destino.

  1. Vamos rastrear a rota para um domínio público como google.com.

    traceroute google.com

    O comando imprimirá o caminho. Observação: Em muitos ambientes de nuvem, o primeiro hop mostrado por traceroute pode ser um endereço IP interno e não o mesmo que o gateway padrão em sua tabela de roteamento. Este é um comportamento normal.

    traceroute to google.com (142.250.189.174), 30 hops max, 60 byte packets
     1  10.220.9.2 (10.220.9.2)  0.345 ms  ...
     2  11.73.5.1 (11.73.5.1)  1.978 ms ...
     3  ...
     8  sfo03s24-in-f14.1e100.net (142.250.189.174)  3.001 ms ...
    • O primeiro hop é um roteador dentro da rede do provedor do laboratório.
    • Hops subsequentes mostram o caminho pela internet até o destino final.
    • Asteriscos (* * *) podem aparecer se um roteador ao longo do caminho não responder às sondas traceroute, o que pode ser devido a um firewall ou outra política de rede.

Parabéns! Agora você aprendeu como inspecionar, configurar estaticamente e configurar dinamicamente o endereçamento IP em um sistema Linux, além de usar ferramentas-chave como ping, arp e traceroute para verificar e solucionar problemas de sua rede.

Resumo

Neste laboratório, você aprendeu as habilidades fundamentais para gerenciar o endereçamento IP em um ambiente Linux. Você começou inspecionando as interfaces de rede e suas configurações atuais usando o comando ip a para identificar interfaces de destino como eth0. Em seguida, praticou a atribuição manual de um endereço IP estático e máscara de sub-rede com ip addr add, seguido pela configuração de um gateway padrão usando ip route add para habilitar a comunicação com redes externas. Para contrastar com a configuração manual, você também aprendeu como obter automaticamente um endereço IP, máscara de sub-rede e gateway de um servidor DHCP usando o comando dhclient.

Além disso, você explorou ferramentas essenciais de verificação e solução de problemas de rede. Você usou o comando ping para confirmar a conectividade básica de rede tanto para o gateway padrão quanto para hosts externos. Para obter uma visão mais aprofundada da camada de rede, você examinou o cache do Address Resolution Protocol (ARP) com o comando arp para ver os mapeamentos de IP para endereço MAC. Finalmente, você utilizou traceroute para rastrear o caminho da rede hop a hop até um destino, verificando sua configuração de roteamento.