O Tracert (traceroute) é uma ferramenta que permite a partir da linha de comandos, obter informações sobre o encaminhamento dos pacotes até um determinado destino (site, servidor,…).
Através do envio de pacotes ICMP (Internet Control Message Protocol) e resposta dos diferentes equipamentos da rede será possivel detetar a rota dos pacotes e identificar problemas de comunicação / roteamento.
Sintaxe do comando Tracert
tracert [-d] [-h máximo_de_saltos] [-j lista_de_hosts] [-w tempo_limite] [-R] [-S srcaddr] [-4] [-6] [nome_do_destino]
Parâmetros:
- -d – Impede que tracert tente resolver os endereços IP de roteadores intermediários para os respectivos nomes, acelerando a exibição dos resultados de tracert.
- -h máximo_de_saltos – Especifica o número máximo de saltos no caminho para pesquisar o destino. O padrão é 30 saltos.
- -j lista_de_hosts – Especifica que as mensagens de solicitação de eco utilizem a opção Rota ampliada de origens no cabeçalho IP com o conjunto de destinos intermediários especificado em lista_de_hosts. Com o roteamento ampliado de origens, é possível separar destinos intermediários sucessivos por um ou vários roteadores. O número máximo de endereços ou nomes na lista de hosts é 9. A lista_de_hosts é uma sequência de endereços IP (em notação decimal pontilhada) separados por espaços (apenas IPv4).
- –w tempo_limite – Especifica o tempo, em milissegundos, de espera pela mensagem ICMP do tipo “Time Exceeded” (Término de tempo) ou “Echo Reply” (Resposta ao eco) que corresponde a uma determinada mensagem de solicitação de eco a ser recebida. Se a mensagem não for recebida no tempo limite, será exibido um asterisco (*). O tempo limite padrão é 4000 (4 segundos).
- -R – Trace round-trip path (IPv6-only)
- -S – Source address to use (IPv6-only)
- -4 – Force using IPv4.
- -6 – Force using IPv6.
- nome_do_destino – Especifica o destino, identificado pelo endereço IP (ex. 195.22.9.122) ou pelo nome do host (kbase.pt).
- /? Exibe ajuda no prompt de comando.
Como utilizar Tracert
Aceder à linha de comandos no Windows
Para executar o comando necessita de aceder à linha de comandos do sistema operativo, em que neste artigo será utilizado o Windows 10. No teclado pressionar a tecla Windows + r (opção Executar / Run) e digitar cmd e teclar Enter (ou clique em OK).
Exemplos de comandos tracert
Tracert (com resolução dos nomes)
Inserir tracert domínio/ip (no exemplo abaixo foi inserido o parâmetro -4 para forçar ligação através de ipv4 ao Google.com) e teclar Enter
tracert -4 www.google.com
Como pode ser verificado abaixo, foram apresentados 9 saltos que correspondem aos equipamentos que compõem a rede entre o meu router (1) até ao servidor da Google (2).
Tracert (sem resolução dos nomes)
Podemos executar o comando novamente mas acrescentando o parâmetro –d para evitar a resolução dos nomes associados aos IP’s, desta forma o comando é executado com maior rapidez.
tracert -d -4 www.google.com
Tracert (Request timed Out)
No exemplo abaixo para o sapo, verificamos que no saltos 7, 8 e 9 foram apresentados * “Request timed out.”, Significa que os equipamentos de rede não respondem aos pedidos ICMP, que por vezes são configurados para não dar resposta a pedidos.
Mas como podemos verificar no passo 10 conseguimos chegar ao servidor de destino do www.sapo.pt que tem o IP 213.13.146.142.
tracert -d -4 www.sapo.pt
Nota: caso seja necessários mais de 30 saltos (valor por defeito) para chegar ao destino, podemos aumentar o numero de saltos, acrescentado o parâmetro –h e especificar o numero de saltos (ex. 60): tracert –h 60 kbase.pt
Outras ferramentas de diagnóstico: