quarta-feira, 29 de setembro de 2010

Identificando o Sistema Operacional usando o comando Ping

Você sabia que é possível identificar o S.O. usando o comando ping?

Parece piada mas é muito simples.
Cada S.O. tem o seu padrão de TTL (Time to Live), então basta pingá-lo.

Sistema / TTL
Unix =  255
Windows = 128
Linux = 64

Exemplo de um ping num servidor Windows:

ping microsoft.com.br

Disparando microsoft.com.br [198.66.137.165] com 32 bytes de dados:
Resposta de 198.66.137.165: bytes=32 tempo=152ms TTL=115
Resposta de 198.66.137.165: bytes=32 tempo=153ms TTL=115
Resposta de 198.66.137.165: bytes=32 tempo=153ms TTL=115
Resposta de 198.66.137.165: bytes=32 tempo=151ms TTL=115


Exemplo de um ping num servidor Linux: 

ping google.com.br

Disparando google.com.br [72.14.253.104] com 32 bytes de dados:
Resposta de 72.14.253.104: bytes=32 tempo=121ms TTL=53
Resposta de 72.14.253.104: bytes=32 tempo=125ms TTL=53
Resposta de 72.14.253.104: bytes=32 tempo=126ms TTL=53
Resposta de 72.14.253.104: bytes=32 tempo=126ms TTL=53


Exemplo de um ping num micro com Windows 7:

ping 127.0.0.1

Disparando 127.0.0.1 com 32 bytes de dados:
Resposta de 127.0.0.1: bytes=32 tempo<1ms TTL=128
Resposta de 127.0.0.1: bytes=32 tempo<1ms TTL=128
Resposta de 127.0.0.1: bytes=32 tempo<1ms TTL=128
Resposta de 127.0.0.1: bytes=32 tempo<1ms TTL=128


Cada vez que um "ping" passar por um roteador ele perderá um "TTL". Os roteadores decrementam o TTL, por isto nos exemplos acima não vemos 128 nem 64, mas vemos 115 e 53 quando pingamos os servidores Microsoft e Google. Isto significa que existem 13 roteadores entre meu computador e o server Microsoft e existem 11 roteadores entre o meu computador e o server Google.

Abs,
E até o próximo Post.