Introdução
A conectividade de rede é um aspecto fundamental de qualquer sistema de computação moderno. Quando surgem problemas, saber como diagnosticá-los é uma habilidade crítica para qualquer desenvolvedor ou administrador de sistema. Este laboratório irá guiá-lo através de uma série de comandos essenciais do Linux para testar e solucionar problemas de conexão de rede de forma sistemática.
Você aprenderá a usar o ping para verificar a alcançabilidade básica, o traceroute para mapear o caminho que seus dados percorrem pela rede, o nslookup para verificar a resolução de DNS e o ip route para inspecionar a tabela de roteamento do seu sistema. Ao final deste laboratório, você terá uma base sólida para diagnosticar problemas comuns de rede.
Pingar o Localhost com o Comando ping 127.0.0.1
Nesta etapa, você usará o comando ping para testar a pilha de rede (network stack) em sua máquina local. Este é o primeiro passo mais básico e essencial em qualquer processo de solução de problemas de rede.
O comando ping envia pacotes ICMP (Internet Control Message Protocol) do tipo ECHO_REQUEST para um host de destino e aguarda um ECHO_RESPONSE. O endereço 127.0.0.1 é o endereço padrão de "localhost" ou "loopback", que sempre aponta para a máquina em que você está. Um ping bem-sucedido para o localhost confirma que o software de rede do seu sistema está funcionando corretamente.
Usaremos a opção -c 4 para enviar apenas 4 pacotes, impedindo que o comando seja executado indefinidamente.
Execute o seguinte comando no seu terminal:
ping -c 4 127.0.0.1
Você deverá ver uma saída semelhante à seguinte, indicando que os pacotes foram enviados e recebidos com sucesso.
PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.045 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.049 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.048 ms
64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=0.047 ms
--- 127.0.0.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3074ms
rtt min/avg/max/mdev = 0.045/0.047/0.049/0.001 ms
A linha 0% packet loss (0% de perda de pacotes) confirma que a interface de rede local está funcionando corretamente.
Pingar o Gateway com o Comando ping 172.60.0.1
Nesta etapa, você testará a conectividade com o gateway da sua rede local. O gateway é um roteador que conecta sua rede local a outras redes, incluindo a internet. Um ping bem-sucedido ao gateway confirma que sua máquina pode se comunicar com sua rede local.
Primeiro, você precisa descobrir o endereço IP do seu gateway padrão (default gateway). Você pode fazer isso usando o comando ip route e filtrando pela rota "default".
Execute este comando para encontrar seu gateway:
ip route | grep default
A saída mostrará a rota padrão. O endereço IP que segue imediatamente via é o endereço do seu gateway. Neste ambiente de laboratório, ele é tipicamente 172.60.0.1.
default via 172.60.0.1 dev eth1
Agora, use o comando ping para testar a conectividade com este endereço de gateway. Lembre-se de usar a opção -c 4.
ping -c 4 172.60.0.1
Uma saída bem-sucedida será parecida com esta:
PING 172.60.0.1 (172.60.0.1) 56(84) bytes of data.
64 bytes from 172.60.0.1: icmp_seq=1 ttl=64 time=0.075 ms
64 bytes from 172.60.0.1: icmp_seq=2 ttl=64 time=0.051 ms
64 bytes from 172.60.0.1: icmp_seq=3 ttl=64 time=0.052 ms
64 bytes from 172.60.0.1: icmp_seq=4 ttl=64 time=0.053 ms
--- 172.60.0.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3060ms
rtt min/avg/max/mdev = 0.051/0.057/0.075/0.010 ms
Este resultado confirma que sua máquina pode se comunicar com o gateway da rede local.
Rastreamento de Rota com o Comando traceroute google.com
Nesta etapa, você usará o traceroute para rastrear o caminho de rede da sua máquina até um destino externo, como google.com. Este comando é útil para identificar onde uma conexão pode estar falhando ao longo de seu percurso.
O comando traceroute pode não estar instalado por padrão. Primeiro, atualize sua lista de pacotes e depois o instale. É uma boa prática executar sudo apt-get update antes de instalar novos pacotes.
sudo apt-get update
Agora, instale a utilidade traceroute. O sinalizador -y responde "sim" automaticamente a quaisquer solicitações.
sudo apt-get install -y traceroute
Assim que a instalação for concluída, você pode executar o traceroute para google.com. Isso mostrará a sequência de roteadores (hops) pelos quais os pacotes passam para alcançar o destino.
traceroute google.com
A saída listará cada salto (hop), seu endereço IP e o tempo de ida e volta (round-trip time) para os pacotes chegarem até ele. A saída irá variar, mas será algo parecido com isto (truncamos para brevidade):
traceroute to google.com (142.250.191.46), 30 hops max, 60 byte packets
1 uswest5 (172.60.0.1) 0.031 ms 0.010 ms 0.010 ms
2 10.220.8.54 (10.220.8.54) 0.289 ms 10.220.8.38 (10.220.8.38) 0.275 ms 10.220.8.54 (10.220.8.54) 0.263 ms
3 11.73.4.217 (11.73.4.217) 2.134 ms 11.73.4.241 (11.73.4.241) 2.141 ms 11.73.4.185 (11.73.4.185) 1.409 ms
...
8 142.251.65.127 (142.251.65.127) 4.316 ms 2.849 ms 4.335 ms
9 nuq04s42-in-f14.1e100.net (142.250.191.46) 4.296 ms 1.556 ms 2.964 ms
Cada linha representa um roteador no caminho. Asteriscos * * * indicam que o roteador não respondeu à sonda a tempo.
Verificar Resolução DNS com o Comando nslookup google.com
Nesta etapa, você verificará a resolução do Domain Name System (DNS). O DNS é a lista telefônica da internet; ele traduz nomes de domínio legíveis por humanos (como google.com) em endereços IP legíveis por máquina (como 142.250.199.14). Se o DNS não estiver funcionando, você não conseguirá acessar sites pelo nome, mesmo que sua conexão de rede esteja funcionando corretamente.
O comando nslookup é uma ferramenta usada para consultar servidores DNS para obter essas informações.
Execute o seguinte comando para consultar o endereço IP de google.com:
nslookup google.com
A saída mostrará qual servidor DNS respondeu à sua solicitação e os endereços IP associados ao nome de domínio.
Server: 127.0.0.11
Address: 127.0.0.11#53
Non-authoritative answer:
Name: google.com
Address: 142.250.191.46
Name: google.com
Address: 2607:f8b0:4005:80f::200e
As linhas Server e Address mostram o resolvedor DNS que seu sistema está utilizando. A seção Non-authoritative answer fornece os endereços IPv4 (Address: 142.250.191.46) e IPv6 (Address: 2607:...) para google.com. Uma resposta bem-sucedida como esta confirma que a resolução DNS está funcionando corretamente.
Resolver Problemas de Conectividade com ip route show
Nesta etapa, você examinará a tabela de roteamento IP do kernel. A tabela de roteamento é um conjunto de regras que seu sistema usa para determinar para onde enviar o tráfego de rede. Uma rota incorreta ou ausente é uma causa comum de problemas de conectividade.
O comando ip route show (ou seu alias mais curto ip r) exibe a tabela de roteamento principal. Este é um dos comandos mais importantes para diagnosticar problemas de rede em um nível baixo.
Execute o comando para visualizar sua tabela de roteamento:
ip route show
A saída listará todas as rotas que seu sistema conhece.
default via 172.60.0.1 dev eth1
172.60.0.0/16 dev eth1 proto kernel scope link src 172.60.1.160
A linha mais crítica é a rota default (padrão).
default via 172.60.0.1 dev eth1: Esta linha significa que para qualquer destino não listado explicitamente na tabela, o tráfego será enviado para o gateway em172.60.0.1(que você usou no ping na Etapa 2) através da interface de redeeth1.
Se esta rota padrão estivesse ausente, seu sistema não saberia como enviar tráfego para a internet, e comandos como ping google.com falhariam com um erro de "Network is unreachable" (Rede inalcançável). Entender esta tabela é fundamental para resolver tais problemas, muitas vezes adicionando uma rota padrão correta usando um comando como sudo ip route add default via <gateway_ip>.
Resumo
Parabéns por completar este laboratório! Você aprendeu uma abordagem sistemática para testar e diagnosticar problemas de conectividade de rede em um sistema Linux.
Você praticou o uso dos seguintes comandos essenciais:
ping: Para testar a alcançabilidade (reachability) para a máquina local e o gateway de rede.ip route: Para encontrar seu gateway padrão e inspecionar a tabela de roteamento do sistema.traceroute: Para rastrear o caminho que os pacotes percorrem até um host remoto, identificando potenciais pontos de falha.nslookup: Para verificar se o Domain Name System (DNS) está resolvendo corretamente nomes de host para endereços IP.
Esta progressão lógica — de si mesmo, para a rede local, para a internet e, finalmente, verificando a resolução de nomes — fornece uma estrutura poderosa para solucionar praticamente qualquer problema de rede que você possa encontrar.



