Perché la riduzione dell'MTU da 1500 a 1499 mi consente di accedere alla maggior parte dei siti Web?


16

Ho avuto questo problema in cui ero in grado di connettermi a siti Web come google.com e ibm.com quando il mtu era impostato su 1500, ma se avessi provato a connettermi a qualsiasi altra cosa, avrebbe solo mostrato una pagina vuota. Quando il mtu fu abbassato a 1499, iniziò a funzionare. Sono curioso di sapere perché funziona e se avere il mtu impostato su 1499 potrebbe causare problemi in futuro? In realtà non ne so molto, ne ho appena sentito parlare e sto cercando una buona spiegazione.

Quando ottengo una spiegazione del motivo per cui l'MTU è stato eliminato di solo 1 byte, aggiornerò la mia domanda con la spiegazione.

Risposte:


19

Ciò potrebbe significare che qualche altro dispositivo a monte di te ha un mtu più piccolo e qualcuno ha configurato erroneamente un firewall per bloccare tutto l'ICMP impedendo il rilevamento MTU per il percorso.

Molti ingenui amministratori di rete sembrano credere che l'ICMP non abbia uno scopo e che tu possa bloccarlo completamente senza ripercussioni.


4
1499 sembra strano, però. MTU più piccoli sono in genere il risultato di virare su un'altra intestazione (ad esempio PPPoE, VPN, VLAN, ecc.) Che riduce l'MTU di un numero pari. Ad esempio 4 byte per 802.1q o 8 byte per PPPoE. Cosa consumerebbe solo 1 byte?
Gerald Combs,

@Gerald, questo è un bene, e anche il numero mi sembra strano. Forse qualcun altro offrirà una possibile spiegazione.
Zoredache,

Gerald, scoprirò perché era solo 1 byte.
Xaisoft,

L'ingegnere di rete wireless della mia azienda lo ha impostato su 1499, quindi scoprirò perché e te lo farò sapere. Sono totalmente ignaro di tutte queste cose, lol.
Xaisoft,

2
Potrebbe essere un router / firewall / ecc. Da qualche parte configurato in modo errato per catturare i pacchetti con 1500+ MTU anziché> 1500 MTU.
Chris S,

8

Per essere più specifici, ciò che sta accadendo è che i datagrammi IP hanno il flag DF (Don't Fragment) nelle loro intestazioni. Quindi hanno colpito un gateway da qualche parte lungo il percorso tra te e la destinazione che ha un MTU più piccolo di quello utilizzato dal mittente. Quel gateway ha bisogno di frammentare ulteriormente i datagrammi, quindi invia un messaggio ICMP di tipo 4, che essenzialmente significa "Ho bisogno di frammentare questi pacchetti, ma tu hai detto di no. Quindi la destinazione è quindi irraggiungibile".

Quei pacchetti ICMP non vengono ricevuti dal mittente originale perché alcuni gateway lungo il percorso sono stati configurati (in modo folle) per bloccare tutti gli ICMP. Quindi il mittente non sa che i suoi pacchetti non sono passati e rimane in attesa ... e in attesa. Alla fine qualcosa andrà in timeout. Di solito è l'umano che va in timeout per primo. :)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.