Lavoro per un fornitore di servizi VoIP e sto riscontrando un problema con un cliente che dispone di una connessione Internet via cavo che mi sta gettando in loop.
Ha un singolo blocco, che pretendiamo sia 70.141.15.0/29, con gateway a .1 e router a .2 e .3. Entrambi i router sono collegati al suo modem via cavo che, per quanto ne sappiamo, è impostato su qualsiasi provider via cavo immagini che sia "modalità bridge".
Sto eseguendo il ping di entrambi questi router contemporaneamente dalla stessa scatola, che è un sistema Linux collegato alla fibra da (probabilmente) Level (3). Quindi, inutile dirlo, nessuno al mondo sa quanti nodi ci sono tra qui e là. Ma controlla i risultati del ping.
Al primo router:
64 bytes from 70.141.15.2: icmp_seq=2637 ttl=47 time=45.0 ms
64 bytes from 70.141.15.2: icmp_seq=2638 ttl=47 time=39.2 ms
64 bytes from 70.141.15.2: icmp_seq=2639 ttl=47 time=37.3 ms
64 bytes from 70.141.15.2: icmp_seq=2640 ttl=47 time=46.1 ms
64 bytes from 70.141.15.2: icmp_seq=2641 ttl=47 time=45.8 ms
64 bytes from 70.141.15.2: icmp_seq=2642 ttl=47 time=46.5 ms
64 bytes from 70.141.15.2: icmp_seq=2643 ttl=47 time=40.9 ms
Dal secondo:
64 bytes from 70.141.15.3: icmp_seq=631 ttl=239 time=54.7 ms
64 bytes from 70.141.15.3: icmp_seq=637 ttl=239 time=40.5 ms
64 bytes from 70.141.15.3: icmp_seq=638 ttl=239 time=40.3 ms
64 bytes from 70.141.15.3: icmp_seq=639 ttl=239 time=38.4 ms
64 bytes from 70.141.15.3: icmp_seq=640 ttl=239 time=44.9 ms
64 bytes from 70.141.15.3: icmp_seq=641 ttl=239 time=38.4 ms
64 bytes from 70.141.15.3: icmp_seq=642 ttl=239 time=38.8 ms
Scopri i valori TTL. ha senso? Questi dispositivi sono direttamente uno accanto all'altro, collegati a quel modem tramite porte switch separate. Come si può avere quasi 200 luppoli in più? Dal ping di altri siti ho l'impressione che il TTL non sia implementato come penso. Dubito che ci siano 200 hop tra me e 4.2.2.2, o woot.com, ma ottengo meno di 50 risultati TTL da entrambi.
Uno di questi router (quello con il TTL più alto) proviene da Fortinet, mentre l'altro è un dispositivo personalizzato basato su Linux. Sono abbastanza sicuro che Forti abbia uno stack di rete fatto in casa, mentre il box Linux usa tutto ciò che viene fornito con il tarball di origine scaricato dagli sviluppatori hardware. È probabile che l'eco ICMP sia implementato in una forma bizzarra su una di queste e invii deliberatamente tutte le risposte con un TTL di 50?
Noto anche che uno dei pochi siti che posso trovare che le risposte con un TTL dall'aspetto sano è slashdot e posso immaginare che i loro server e router potrebbero essere un po 'meno "qualunque cosa abbiamo trovato nel garage" rispetto al sito Web medio, che mi fa sentire come se potessi essere sulla strada giusta con l'ultima supposizione.
Per riassumere: TTL sul ping significa qualcosa di affidabile?