Ping - Como identificar o Sistema Operacional

Publicado por Diego Mendes Rodrigues em 24/06/2018

[ Hits: 15.187 ]

Blog: https://www.linkedin.com/in/diegomendesrodrigues/

 


Ping - Como identificar o Sistema Operacional



Podemos utilizar o comando ping para identificar o sistema operacional utilizado por outro computador em nossa rede, ou na internet.

O ping trabalha com o protocolo ICMP, enviando mensagens. Quando uma máquina de destino recebe um Echo Request, ela retorna um Echo Reply.

Podemos descobrir o sistema operacional que está sendo utilizado por outro computador através do TTL (Time To Live). Este valor indica quanto tempo o pacote vai ficar circulando na rede antes de ser descartado.

Mas, e aí?

Então, cada sistema operacional trabalha com um TTL padrão (default) diferente, portanto, desta forma podemos identificar o tipo de sistema utilizado.

Veja os dois exemplos abaixo.

Exemplo A:

ping 127.0.0.10
PING 192.168.0.10 bytes of data.
64 bytes from 192.168.0.10: icmp_seq=1 ttl=64 time=0.029 ms
64 bytes from 192.168.0.10: icmp_seq=2 ttl=64 time=0.032 ms
64 bytes from 192.168.0.10: icmp_seq=3 ttl=64 time=0.027 ms


Exemplo B:

ping 192.168.0.11
PING 192.168.0.11 bytes of data.
64 bytes from 192.168.0.11: icmp_seq=1 ttl=128 time=0.192 ms
64 bytes from 192.168.0.11: icmp_seq=2 ttl=128 time=0.193 ms
64 bytes from 192.168.0.11: icmp_seq=3 ttl=128 time=0.187 ms


Cada um dos IPs (192.168.0.10 e 192.168.0.11) está respondendo com uma TTL diferente.
  • 192.168.0.10 - TTL = 64
  • 192.168.0.11 - TTL = 128

Como posso saber o sistema operacional através da TTL?

Segue a lista do valor TTL padrão para os principais sistemas operacionais.
  • Linux - 64
  • Windows - 128
  • UNIX - 255

Com estes valores você consegue determinar o sistema operacional dos exemplos acima.

No caso do exemplo A, o TTL=64 nos diz que o sistema utilizado é Linux, já no exemplo B, podemos dizer que o sistema usado é Windows.

Os roteadores são programados para decrementar o TTL, em cada pacote que passa por ele. Se uma máquina Windows for "pingada" e o valor TTL for 126 significa que antes de chegar ao destino existem 2 roteadores.

Veja esse novo exemplo:

ping www.uol.com.br
PING dftex7xfha8fh.cloudfront.net (52.84.179.215) 56(84) bytes of data.
64 bytes from server-52-84-179-215.gru50.r.cloudfront.net (52.84.179.215): icmp_seq=1 ttl=241 time=13.6 ms
64 bytes from server-52-84-179-215.gru50.r.cloudfront.net (52.84.179.215): icmp_seq=2 ttl=241 time=12.3 ms
64 bytes from server-52-84-179-215.gru50.r.cloudfront.net (52.84.179.215): icmp_seq=3 ttl=241 time=14.8 ms


O retorno da minha "pingada" possui um TTL=241, ou seja, o servidor possui um sistema operacional UNIX (TTL=255) e existem 14 roteadores entre o meu computador e o servidor.

Abraço!
Diego Mendes Rodrigues

Outras dicas deste autor

Executando comandos Linux com o timeout

Instalar o PuTTY no Linux

Instalar o Gambas 3

Listar os arquivos ordenados pelos seus tamanhos

Instalar o Maven no Ubuntu

Leitura recomendada

Usando apenas IPtables para bloquear tudo e liberar um domínio - Sistema de Acesso Quiosque

Acessando o Tim Web Pré com modem Sony Ericcson MD300 (original da Claro) no openSUSE 11.3

Aria2 - Agilizando downloads em diversos protocolos

Teste de estado de link do Velox

Wireless no Ubuntu

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts