LFCA: Aprenda Comandos Básicos de Rede – Parte 4

Em qualquer momento em que estiver usando seu PC conectado a um roteador, você fará parte de uma rede. Seja em um ambiente de escritório ou simplesmente trabalhando de casa, seu computador estará em uma rede.

O que é uma Rede de Computadores?

A computer network is defined as a group of 2 or more computers that are connected and can electronically communicate with each other. The computers are identified using their hostnames, IP, and mac addresses.

A simple home or office network is referred to as a LAN, short for Local Area Network. A LAN covers a small area such as a home, office, or restaurant network. In contrast, a WAN (Wide Area Network) spans a large geographical region. WAN is mostly used to connect various sites such as office buildings in different locations.

Este artigo é Parte 4 da série LFCA, aqui nesta parte, você se familiarizará com comandos gerais de rede e como eles podem ser benéficos na resolução de problemas de conectividade.

1. Comando hostname

O comando hostname exibe o nome do host de um sistema Linux. Isso geralmente é definido ou configurado durante a instalação. Para verificar o nome do host, execute o comando:

$ hostname

tecmint

2. Comando ping

Abreviação de packet internet groper, o comando ping é usado para verificar a conectividade entre 2 sistemas ou servidores. Ele envia uma solicitação de eco ICMP para um host remoto e aguarda uma resposta. Se o host estiver ativo, a solicitação de eco é refletida pelo host remoto e enviada de volta à origem, informando ao usuário que o host está ativo ou disponível.

O comando ping tem a sintaxe mostrada.

$ ping options IP address 

Por exemplo, para fazer ping em um host na minha rede local com o IP de 192.168.2.103, eu executaria o comando:

$ ping 192.168.2.103

PING 192.168.0.123 (192.168.0.123) 56(84) bytes of data.
64 bytes from 192.168.2.103: icmp_seq=1 ttl=64 time=0.043 ms
64 bytes from 192.168.2.103: icmp_seq=2 ttl=64 time=0.063 ms
64 bytes from 192.168.2.103: icmp_seq=3 ttl=64 time=0.063 ms
64 bytes from 192.168.2.103: icmp_seq=4 ttl=64 time=0.061 ms
64 bytes from 192.168.2.103: icmp_seq=5 ttl=64 time=0.062 ms

O comando ping continua enviando o pacote de ping ICMP até que você o interrompa pressionando Ctrl + C no teclado. No entanto, você pode limitar os pacotes enviados usando a opção -c.

No exemplo abaixo, estamos enviando 5 pacotes de solicitação de eco, e uma vez feito, o comando ping para.

$ ping 192.168.2.103 -c 5

PING 192.168.0.123 (192.168.0.123) 56(84) bytes of data.
64 bytes from 192.168.2.103: icmp_seq=1 ttl=64 time=0.044 ms
64 bytes from 192.168.2.103: icmp_seq=2 ttl=64 time=0.052 ms
64 bytes from 192.168.2.103: icmp_seq=3 ttl=64 time=0.066 ms
64 bytes from 192.168.2.103: icmp_seq=4 ttl=64 time=0.056 ms
64 bytes from 192.168.2.103: icmp_seq=5 ttl=64 time=0.066 ms

--- 192.168.2.103 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4088ms
rtt min/avg/max/mdev = 0.044/0.056/0.066/0.008 ms

Além disso, você também pode fazer ping no nome de domínio de um host ou servidor. Por exemplo, você pode fazer ping no Google como mostrado.

$ ping google.com

PING google.com (142.250.183.78) 56(84) bytes of data.
64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=1 ttl=117 time=2.86 ms
64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=2 ttl=117 time=3.35 ms
64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=3 ttl=117 time=2.70 ms
64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=4 ttl=117 time=3.12 ms
...

Também, você pode fazer ping no DNS. Por exemplo, você pode fazer ping no endereço do Google que é 8.8.8.8.

$ ping 8.8.8.8 -c 5

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=118 time=3.24 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=118 time=3.32 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=118 time=3.40 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=118 time=3.30 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=118 time=2.92 ms

--- 8.8.8.8 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 2.924/3.237/3.401/0.164 ms

A failed ping test is pointed to one of the following:

  • A host that is offline.
  • Falha geral de rede.
  • Presença de um firewall que está bloqueando solicitações ICMP.

3. Comando traceroute

O comando traceroute exibe a rota que um pacote de ping ICMP percorre do seu dispositivo até o host ou servidor de destino. Ele mostra os endereços IP dos dispositivos pelos quais o pacote passa antes de chegar ao destino remoto.

Na linha 2, a saída mostra um sinal de asterisco * na viagem de ida e volta. Isso indica que o pacote foi descartado e nenhuma resposta foi recebida. Isso mostra que o pacote de ping foi descartado pelo roteador, e isso pode ser por uma variedade de razões, como congestionamento da rede.

O comando Traceroute é um comando de diagnóstico interessante que você pode usar para solucionar problemas na rede onde o comando ping apresenta resultados falhos. Ele mostra o dispositivo no qual os pacotes estão sendo descartados.

$ traceroute google.com
Traceroute – Network Diagnostic Tool

4. Comando mtr

O comando mtr (my trace route) combina as funcionalidades dos comandos ping e traceroute. Ele exibe uma série de estatísticas, incluindo o host por onde cada pacote passa, e os tempos de resposta para todas as etapas da rede.

$ mtr google.com
mtr – network analysis and troubleshooting tool

5. Comando ifconfig

O comando ifconfig lista as interfaces de rede conectadas ao PC, juntamente com outras estatísticas, como os endereços IP associados a cada interface, máscara de sub-rede e MTU, para mencionar apenas alguns.

$ ifconfig
ifconfig – lists network interfaces

O parâmetro inet mostra o endereço IPv4 da interface de rede, enquanto inet6 aponta para o endereço IPv6. Você pode ver os detalhes de uma única interface especificando a interface conforme mostrado:

$ ifconfig enp0s3
Check Network Interface

6. Comando IP

Outra maneira de visualizar estatísticas de interface é usando o comando ip address como mostrado.

$ ip address
IP Network Configuration Tool

7. Comando ip route

O comando ip route imprime a tabela de roteamento do seu PC.

$ ip route 
OR
$ ip route show
List Network Routing Table

8. Comando dig

O utilitário dig ( abreviação de Domain Information Groper ) é uma ferramenta de linha de comando para sondar servidores de nomes DNS. Ele recebe um nome de domínio como argumento e exibe informações como o endereço do host, registro A, registro MX (mail exchanges), servidores de nomes, etc.

Resumidamente, o comando dig é uma utilidade de consulta DNS e é usado principalmente por administradores de sistemas para solução de problemas DNS.

$ dig ubuntu.com
dig – Network Administration Tool

9. Comando nslookup

O utilitário nslookup é mais uma ferramenta de linha de comando que é usada para fazer pesquisas DNS na tentativa de recuperar nomes de domínio e registros A.

$ nslookup ubuntu.com
Domain Name Server Lookup

10. Comando netstat

O comando netstat imprime as estatísticas da interface de rede. Ele pode exibir a tabela de roteamento, portas em que vários serviços estão ouvindo, conexões TCP e UDP, PID e UID.

Para exibir as interfaces de rede conectadas ao seu PC, execute:

$ netstat -i

Kernel Interface table
Iface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
enp1s0    1500        0      0      0 0             0      0      0      0 BMU
lo       65536     4583      0      0 0          4583      0      0      0 LRU
wlp2s0    1500   179907      0      0 0        137273      0      0      0 BMRU

Para verificar a tabela de roteamento, use a opção -r conforme mostrado.

$ netstat -r

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
default         _gateway        0.0.0.0         UG        0 0          0 wlp2s0
link-local      0.0.0.0         255.255.0.0     U         0 0          0 wlp2s0
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 wlp2s0

Para examinar conexões TCP ativas, invoque o comando:

$ netstat -ant
List Active TCP Connections

11. Comando ss

O comando ss é uma ferramenta de rede que é usada para exibir estatísticas de soquetes e mostrar métricas de rede do sistema de forma semelhante ao comando netstat. O comando ss é mais rápido que o netstat e exibe mais informações sobre estatísticas de TCP e rede do que o netstat.

$ ss     #list al connections
$ ss -l  #display listening sockets 
$ ss -t  #display all TCP connection
Resumo

Essa foi uma visão geral dos comandos básicos de rede que serão úteis especialmente ao solucionar problemas menores de rede em seu ambiente doméstico ou de escritório. Experimente-os de vez em quando para aprimorar suas habilidades de solução de problemas de rede.

Source:
https://www.tecmint.com/basic-networking-commands/