É normal que um ISP tenha o mesmo IP duas vezes em uma rota?

8

Se eu traçar rota fora da minha rede doméstica, vejo o mesmo IP duas vezes seguidas logo após o meu roteador:

  1     1 ms     1 ms     1 ms  router
  2    17 ms    16 ms    16 ms  217.0.117.61
  3    16 ms    16 ms    16 ms  217.0.117.61
  4    17 ms    17 ms    17 ms  87.186.233.102
  5    26 ms    24 ms    24 ms  217.239.39.2
  6    24 ms    24 ms    25 ms  ...

Isso é normal ou pode ser uma configuração incorreta em nome do ISP?

Adam Lindberg
fonte
3
Se o IP estiver em saltos não adjacentes, é provável que haja uma configuração incorreta. mas, no seu caso, eles são adjacentes, o que pode significar que este dispositivo simples reduz o TTL do pacote duas vezes.
Robert

Respostas:

14

Se isso acontecer uma vez ou raramente

Todos os pacotes IP possuem um campo de tempo de vida ( TTL ). Este campo é decrementado em um por cada roteador que encaminha um pacote. Se um roteador diminuir o TTL para 0, ele descarta o pacote e gera um pacote de erro excedido TTL ICMP e o envia de volta ao remetente.

O Traceroute usa esse recurso para enviar pacotes com TTLs que aumentam sequencialmente. Isso permite ao traceroute criar uma imagem do caminho entre a origem e o destino.

No seu caso, provavelmente havia dois caminhos possíveis do roteador para o 217.0.117.61, sendo que um era mais longo que o outro. Então, o que aconteceu foi:

  1. O pacote enviado com TTL = 1 chegou ao seu roteador, que respondeu.
  2. O pacote enviado com TTL = 2
    • chegou ao seu roteador, que diminuiu o TTL para 1 e o enviou,
    • chegou a 217.0.117.61, que respondeu.
  3. O pacote enviado com TTL = 3
    • chegou ao seu roteador, que diminuiu o TTL para 2 e o enviou,
    • chegou a um roteador desconhecido, que diminuiu o TTL para 1 e o enviou,
    • chegou a 217.0.117.61, que respondeu.

É por isso que você tem a mesma entrada duas vezes. Poderia ter sido pior, com cada IP listado duas vezes, mas aparentemente o roteador para dar a primeira resposta 217.0.117.61 nunca participou novamente do rastreamento, portanto, todos os pacotes a seguir passaram pelo roteador desconhecido cujo IP nunca foi retornado.

Se isso sempre acontece

Então é por causa da maneira que seu ISP configurou sua rede. Os IPs da sua lista pertencem à Deutsche Telekom AG, que possui uma enorme rede interna com nós sofisticados de alto desempenho, dos quais um parece responder duas vezes.

Existem algumas explicações possíveis:

  • O ISP possui um firewall que responde a solicitações de traceroute. Um firewall corporativo é um computador especializado por si só. Ele pode responder a solicitações de tracroute, se programado, com o endereço IP programado, que pode ser o do nó que está protegendo.

  • Um roteador corporativo pode responder de suas interfaces interna e externa. Esse roteador de alta velocidade e alta taxa de transferência é na verdade uma rede em caixa com sub-roteadores especializados como componentes. As respostas podem vir dos sub-roteadores para frente e para trás, respondendo com o mesmo IP.

harrymc
fonte
É sempre duas vezes no caminho. Como é possível que ele não passe pelo roteador desconhecido no segundo caso?
Adam Lindberg
2
Se isso sempre acontece, é por causa da maneira como seu ISP configurou sua rede. Existem algumas outras explicações que não mencionei porque são menos prováveis: (1) O ISP possui um firewall que responde a solicitações de traceroute, (2) a solicitação passa um NAT no ISP e você recebe uma resposta de ambos e interfaces externas, mas a interface interna está mapeando seu IP para o externo.
harrymc
Todos os IPs listados estão dentro da Deutsche Telekom AG. É lógico que eles têm uma rede interna enorme, com muitas traduções,
harrymc
1

Como está ocorrendo de forma consistente, acho que a causa mais provável é um bug no firmware de um dos roteadores, causando falha ao descartar o pacote de rastreamento (e enviar um relatório "TTL excedido") quando deveria ou enviá-lo antes dele. devemos. Aqui está um exemplo do primeiro problema da página de manual do BSD traceroute :

A sample use and output might be:

 [yak 71]% traceroute nis.nsf.net.
 traceroute to nis.nsf.net (35.1.1.48), 30 hops max, 56 byte packet
 1 helios.ee.lbl.gov (128.3.112.1)  19 ms 19 ms  0 ms
 2 lilac-dmc.Berkeley.EDU (128.32.216.1)  39 ms  39 ms  19 ms
 3 lilac-dmc.Berkeley.EDU (128.32.216.1)  39 ms  39 ms  19 ms
 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23)  39 ms  40 ms  39 ms
 [...]

Note that lines 2 & 3 are the same.  This is due to a buggy kernel on the
2nd hop system - lbl-csam.arpa - that forwards packets with a zero ttl (a
bug in the distributed version of 4.3 BSD).

Neste exemplo, é o segundo roteador que possui o bug, e o terceiro roteador acaba sendo listado como nº 2 e nº 3.

Por outro lado, considere o que aconteceria se o segundo roteador tivesse um bug que o fez soltar pacotes quando o TTL atingiu 1 em vez de 0:

  1. O pacote de rastreamento enviado com TTL = 1 é diminuído para 0 no primeiro roteador, o que o elimina e relata que o TTL foi excedido e, portanto, aparece como salto 1. Tudo bem aqui.
  2. O pacote enviado com TTL = 2 é diminuído para 1 no primeiro roteador; o segundo roteador o decrementa para 0, descarta e relata, e aparece como salto 2. Mais uma vez, tudo de bom aqui.
  3. O pacote enviado com TTL = 3 é diminuído para 2 no primeiro roteador; o segundo roteador o reduz para 1 e, erroneamente, o deixa cair e o reporta, e aparece como salto 3.

Novamente, é o segundo roteador que possui um bug, mas, neste caso, é o segundo roteador listado duas vezes (no exemplo na página de manual, é o terceiro listado duas vezes).

Gordon Davisson
fonte