Como um servidor pode rastrear uma rota para um cliente?

3

Eu entendo como um cliente pode traçar uma rota para um servidor (usando traceroute ou tracert). Mas existe uma maneira de um servidor rastrear uma rota para um cliente?

O problema é que eu tenho um grupo de usuários de internet que vivem em uma área remota e eles estão reclamando que o acesso à internet é lento. Estou planejando criar um software que permita que eles executem um teste de download com facilidade e armazenem os resultados. Depois de coletarmos uma quantidade razoável de dados, esperamos encontrar um padrão.

Em conjunto com os dados de download, seria ótimo ter dados traceroute. Não consigo ver como eu poderia iniciar isso a partir do cliente sem escrever algum software cliente, o que é algo que não quero fazer. Assim, estou tentando encontrar um mecanismo que coleta informações de rota, mas é iniciado pelo servidor.

Minha preferência seria trabalhar com um servidor linux.

    
por Kim 30.12.2016 / 06:54

1 resposta

1

Você não quer fazer isso. Não é garantido que um traceroute executado do servidor para o cliente retorne o mesmo resultado que um executado do cliente para o servidor.

A rota que um pacote leva do Nó A para o Nó B pode ser facilmente diferente da rota percorrida na direção oposta. * A rota exata tomada por qualquer pacote IP é determinada pelos roteadores intermediários. ao longo do caminho do pacote. Um roteador pode ter várias rotas para a rede de destino (por exemplo, para redundância) e tem a liberdade de decidir qual rota usar com base em coisas como congestionamento da rede, links com falha, etc.

Portanto, não é possível iniciar um rastro significativo da rota de A para B do Nó B (isto é, o "servidor"), já que não há garantia de que a rota relatada seja a usada para pacotes enviado do nó A para B.

Se o servidor realmente "inicia" o traceroute do cliente para o servidor, o servidor deve simplesmente comandar o cliente para executar um traceroute no servidor. Isso, obviamente, não é diferente de haver um comando programado ou acionado configurado no cliente para fazer exatamente a mesma coisa.

* É até possível que alguns pacotes enviados do Nó A para o B tenham rotas diferentes de suas contrapartes, embora, na prática, isso geralmente não aconteça em redes de outra forma estáveis.

    
por 31.12.2016 / 03:38