Como Descobrir o tipo do Sistema Operacional Através do TTL - Time To Live

O TTL (Time to Live) é um valor presente em pacotes de rede que é utilizado para evitar a circulação infinita de pacotes na rede. Ele é decrementado a cada roteador que o pacote passa, e quando chega a zero, o pacote é descartado. O valor inicial do TTL é definido pelo sistema operacional que envia o pacote, e pode ser usado para identificar qual sistema operacional está enviando o pacote.

Alguns exemplos de valores padrão de TTL para alguns sistemas operacionais comuns são:
  • Windows: 128
  • Linux: 64
  • macOS: 64
  • iOS: 64
  • Android: 64
  • Cisco IOS: 255
Esses valores são apenas para fins de referência, pois eles podem ser alterados pelo administrador de rede ou pelo próprio sistema operacional. Ainda assim, eles podem ser usados como uma indicação geral de qual sistema operacional está sendo usado.

Além disso, existem ferramentas como o Nmap que podem usar o TTL para identificar o sistema operacional, mas é importante lembrar que essa técnica não é 100% confiável, pois o valor de TTL pode ser facilmente alterado.

Na tabela abaixo, estão todos os valores TTL padrão de diferentes dispositivos / Sistemas Operacionais:

Device / SO
Versão
Protocolo
TTL
AIX

TCP
60
AIX

UDP
30
AIX
3.2, 4.1
ICMP
255
BSDI
BSD/OS 3.1 and 4.0
ICMP
255
Compa
Tru64 v5.0
ICMP
64
Cisco

ICMP
254
DEC Pathworks
V5
TCP and UDP
30
Foundry

ICMP
64
FreeBSD
2.1R
TCP and UDP
64
FreeBSD
3.4, 4.0
ICMP
255
FreeBSD
5
ICMP
64
HP-UX
9.0x
TCP and UDP
30
HP-UX
10.01
TCP and UDP
64
HP-UX
10.2
ICMP
255
HP-UX
11
ICMP
255
HP-UX
11
TCP
64
Irix
5.3
TCP and UDP
60
Irix
6.x
TCP and UDP
60
Irix
6.5.3, 6.5.8
ICMP
255
juniper

ICMP
64
MPE/IX (HP)

ICMP
200
Linux
2.0.x kernel
ICMP
64
Linux
2.2.14 kernel
ICMP
255
Linux
2.4 kernel
ICMP
255
Linux
Red Hat 9
ICMP and TCP
64
MacOS/MacTCP
2.0.x
TCP and UDP
60
MacOS/MacTCP
X (10.5.6)
ICMP/TCP/UDP
64
NetBSD

ICMP
255
Netgear FVG318

ICMP and UDP
64
OpenBSD
2.6 & 2.7
ICMP
255
OpenVMS
07.01.2002
ICMP
255
OS/2
TCP/IP 3.0

64
OSF/1
V3.2A
TCP
60
OSF/1
V3.2A
UDP
30
Solaris
2.5.1, 2.6, 2.7, 2.8
ICMP
255
Solaris
2.8
TCP
64
Stratus
TCP_OS
ICMP
255
Stratus
TCP_OS (14.2-)
TCP and UDP
30
Stratus
TCP_OS (14.3+)
TCP and UDP
64
Stratus
STCP
ICMP/TCP/UDP
60
SunOS
4.1.3/4.1.4
TCP and UDP
60
SunOS
5.7
ICMP and TCP
255
Ultrix
V4.1/V4.2A
TCP
60
Ultrix
V4.1/V4.2A
UDP
30
Ultrix
V4.2 – 4.5
ICMP
255
VMS/Multinet

TCP and UDP
64
VMS/TCPware

TCP
60
VMS/TCPware

UDP
64
VMS/Wollongong
1.1.1.1
TCP
128
VMS/Wollongong
1.1.1.1
UDP
30
VMS/UCX

TCP and UDP
128
Windows
for Workgroups
TCP and UDP
32
Windows
95
TCP and UDP
32
Windows
98
ICMP
32
Windows
98, 98 SE
ICMP
128
Windows
98
TCP
128
Windows
NT 3.51
TCP and UDP
32
Windows
NT 4.0
TCP and UDP
128
Windows
NT 4.0 SP5-

32
Windows
NT 4.0 SP6+

128
Windows
NT 4 WRKS SP 3, SP 6a
ICMP
128
Windows
NT 4 Server SP4
ICMP
128
Windows
ME
ICMP
128
Windows
2000 pro
ICMP/TCP/UDP
128
Windows
2000 family
ICMP
128
Windows
Server 2003

128
Windows
XP
ICMP/TCP/UDP
128
Windows
Vista
ICMP/TCP/UDP
128
Windows
7
ICMP/TCP/UDP
128
Windows
Server 2008
ICMP/TCP/UDP
128

Comentários

  1. E se o valor do TTL for diferente dos que tem na tabela?

    Como proceder?

    EX:


    >ping www.uol.com.br

    Pinging homeuol.ipv6uol.com.br [200.147.67.142] with 32 bytes of data:
    Reply from 200.147.67.142: bytes=32 time=10ms TTL=244
    Reply from 200.147.67.142: bytes=32 time=10ms TTL=244
    Reply from 200.147.67.142: bytes=32 time=10ms TTL=244
    Reply from 200.147.67.142: bytes=32 time=10ms TTL=244

    Ping statistics for 200.147.67.142:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milli-seconds:
    Minimum = 10ms, Maximum = 10ms, Average = 10ms

    >ping www.terra.com.br

    Pinging www.terra.com.br [208.84.244.116] with 32 bytes of data:
    Reply from 208.84.244.116: bytes=32 time=121ms TTL=53
    Reply from 208.84.244.116: bytes=32 time=121ms TTL=53
    Reply from 208.84.244.116: bytes=32 time=121ms TTL=53
    Reply from 208.84.244.116: bytes=32 time=121ms TTL=53

    Ping statistics for 208.84.244.116:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milli-seconds:
    Minimum = 121ms, Maximum = 121ms, Average = 121ms

    ResponderExcluir
    Respostas
    1. Olá, OsniKniess!
      Bem observado. Nesse caso, você deve procurar na tabela o valor mais próximo.

      Exe:
      Sabemos que o valor 53 está próximo do valor padrão TTL de Sistemas Linux.
      E o TTL 254 está próximo de SO Unix.
      Logo, TTL=53 - Sistemas Linux e TTL 254 - Sistemas Unix.

      Vamos atualizar esse post. Obrigado pela contribuição.

      Excluir
    2. É a principio a quantidade de roteadores que passaram seus dados no caminho entre a maquina e o servidor (acabei de aprender na faculdade) :)

      Excluir

Postar um comentário

ATENÇÃO: Seu comentário é muito importante para nós e esperamos que você compartilhe suas opiniões e sugestões abaixo. No entanto, lembramos que é de inteira responsabilidade dos usuários seguir as dicas postadas no Blog DicasQueFunfa. Pedimos que evite comentários ofensivos, ilegais ou prejudiciais, pois esses não serão tolerados e serão removidos. Agradecemos sua colaboração e esperamos que suas contribuições enriqueçam ainda mais nosso conteúdo.

LEIA-ME

Desenvolver ferramentas e scripts que facilitem o seu trabalho diário, solucionar problemas e documentar tudo, criando passo a passos detalhados de como resolvê-los, é uma tarefa que requer tempo e dedicação. Por esse motivo, contamos com a sua contribuição.

Sua doação não é obrigatória, mas é muito importante para que possamos continuar mantendo o DicasQueFunfa funcionando e desenvolvendo soluções úteis para você.



Mais