Implementações diferentes de traceroute no sistema operacional

0

Dado que diferentes sistemas operacionais podem usar diferentes tipos de pacotes (por exemplo: pacotes UDP, pacotes TCP, solicitações de eco ICMP), posso ter certeza de que uma sessão ativa do navegador seguirá o mesmo caminho que uma chamada traceroute seguiria?

Em outras palavras, se eu estiver navegando ativamente www.stackexchange.com, posso ter certeza de que minha sessão está sendo roteada através dos nós retornados pelo traceroute para www.stackexchange.com simultaneamente à sessão ativa do navegador?

    
por TL7 05.07.2016 / 00:53

2 respostas

2

Se você ainda não entender o roteamento IP, os resultados do traceroute não informarão nada. A rota entre dois nós pela Internet mais ampla pode mudar de segundo para segundo. E a rota em uma direção não é a mesma que a rota de retorno. E isso nem é contabilizar o fato de que o caso específico que você menciona usa um CDN, o que significa que não apenas a rota pode mudar, mas as máquinas reais com as quais você está falando podem ser diferentes.

Dito isto, não há garantia de que a rota que você obtém do traceroute é a mesma que a sua aplicação está usando. Isso pode ser por vários motivos (provavelmente mais de uma dúzia, se você contar casos obscuros), incluindo:

  • um ISP no caminho que propositadamente roteia pacotes traceroute de maneira diferente para ocultar sua topologia

  • a topologia muda de alguma forma entre o traceroute e o TCP SYN

  • existe alguma forma de balanceador de carga ou CDN que propositadamente redireciona algum tráfego

Esses são os mais prováveis que eu posso explicar sem aprofundar como a rede funciona.

E, a propósito, seu comentário "sistemas operacionais diferentes podem usar diferentes tipos de pacotes" está incorreto. Todos os sistemas conectados à Internet usam todos esses tipos de pacotes, você não pode operar na rede sem eles.

    
por 05.07.2016 / 08:39
1

Normalmente, o traceroute usa a mensagem ICMP. Se usarmos a mensagem TCP ou UDP, o traceroute não poderá conhecer os serviços em execução no computador de destino, o que significa que é difícil determinar a porta na mensagem TCP ou UDP. Mas a mensagem ICMP deve estar OK se não houver firewall bloqueando a mensagem ICMP.

can I be certain that an active browser session will follow the same path that my traceroute call makes?

Em resumo, não. Se houver um balanceador de carga entre o computador e o computador de destino, o caminho poderá ser diferente porque o traceroute e o navegador estão usando duas sessões (depende das regras do balanceador de carga).

    
por 05.07.2016 / 01:36