Ping - Como identificar o Sistema Operacional

Publicado por Diego Mendes Rodrigues em 24/06/2018

[ Hits: 3.524 ]

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

Listar os arquivos ordenados pelos seus tamanhos

Como alterar a versão default (padrão) do Python no Linux

Instalar o Maven no Ubuntu

Instalar o PuTTY no Linux

Leitura recomendada

Ubuntu - compartilhando conexão via cabo crossover

Limpando o cache do Squid no Fedora Core

Para os fãs de cinema...

Bloqueando o Ultrasurf 10.04

Atualização do novo Firefox para Ubuntu e derivados

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts