DIAGNOSTICA DELLE RETI • GUIDA 15

PPPoE e MTU: problemi di connessione e pacchetti frammentati

Alcuni problemi di rete sono strani: Internet funziona, ma certi siti non si aprono, una VPN si blocca o alcune connessioni sembrano fermarsi. In questi casi MTU, PPPoE e Path MTU Discovery possono diventare elementi importanti della diagnosi.

Livello: intermedio/avanzato PPPoE / IP MTU / MSS / PMTUD

Nella maggior parte delle reti Ethernet non pensiamo quasi mai alla dimensione dei pacchetti.

Tuttavia, ogni collegamento ha un limite alla quantità di dati che può trasportare in una singola unità. Questo limite viene indicato come MTU.

💡 Concetto chiave

Un problema MTU non rende necessariamente Internet completamente irraggiungibile. Può produrre una rete che sembra funzionare ma si blocca soltanto con determinati pacchetti, protocolli o destinazioni.

📦 Cos’è l’MTU

MTU significa Maximum Transmission Unit.

Indica la dimensione massima del pacchetto IP che può essere trasportato su una determinata interfaccia senza richiedere un trattamento aggiuntivo legato alla dimensione.

Su Ethernet un valore molto comune per l’MTU IP è:

1500 byte

🔗 Perché PPPoE cambia le cose

PPPoE significa Point-to-Point Protocol over Ethernet.

Aggiunge un proprio overhead all’interno della comunicazione Ethernet.

Nelle configurazioni PPPoE tradizionali, un valore MTU frequentemente utilizzato è:

1492 byte

perché una parte dello spazio viene occupata dall’incapsulamento PPPoE.

Ethernet 1500 e PPPoE 1492

1500 MTU IP molto comune su Ethernet.
1492 Valore tradizionalmente associato a PPPoE.
Path MTU La dimensione massima effettivamente sostenibile lungo tutto il percorso.

Il problema non è soltanto la tua interfaccia

Un pacchetto deve attraversare molti collegamenti prima di raggiungere una destinazione Internet.

PC
MTU 1500
Router
Tratta
MTU inferiore
Internet
Server

La dimensione massima utilizzabile end-to-end dipende dal collegamento più restrittivo presente lungo il percorso.

🔍 Cos’è il Path MTU

Il Path MTU è la dimensione massima che può attraversare l’intero percorso senza superare l’MTU di uno dei collegamenti intermedi.

Non coincide necessariamente con l’MTU configurato sulla scheda Ethernet del computer.

Cos’è Path MTU Discovery

Path MTU Discovery, spesso abbreviato in PMTUD, è il meccanismo che permette agli host di determinare quale dimensione dei pacchetti può attraversare il percorso.

L’obiettivo è evitare di inviare continuamente pacchetti troppo grandi per una tratta intermedia.

⚠️ Il problema dei messaggi ICMP bloccati

In IPv4, quando un router non può inoltrare un pacchetto perché troppo grande e la frammentazione non è consentita, può inviare un messaggio ICMP appropriato al mittente.

Se questi messaggi vengono bloccati in modo errato, il mittente potrebbe non capire che deve ridurre la dimensione dei pacchetti.

ICMP non serve soltanto al ping

Bloccare indiscriminatamente tutti i messaggi ICMP può compromettere alcuni meccanismi diagnostici e di rete, incluso il corretto funzionamento del Path MTU Discovery.

Cos’è un PMTU black hole

Una situazione particolarmente insidiosa può verificarsi quando i pacchetti piccoli passano regolarmente, ma quelli più grandi vengono scartati e il mittente non riceve le informazioni necessarie per adattarsi.

Questo comportamento viene spesso descritto come PMTU black hole.

I sintomi possono sembrare molto strani:

  • Il ping funziona.
  • Alcuni siti si aprono.
  • Altri siti restano caricando.
  • Alcune VPN hanno problemi.
  • Determinati trasferimenti si bloccano.

📏 Testare l’MTU con ping su Windows

Su Windows il comando ping permette di utilizzare l’opzione -f per impostare il flag Don’t Fragment su IPv4 e -l per definire la dimensione del payload ICMP.

Un esempio:

ping 1.1.1.1 -f -l 1472

Perché 1472?

Per un normale pacchetto ICMP IPv4, dobbiamo considerare anche gli header:

1472 payload + 20 byte header IPv4 + 8 byte header ICMP = 1500 byte

Test di esempio per PPPoE

Se vogliamo testare un percorso con MTU 1492, il payload ICMP corrispondente è normalmente:

1492 - 28 = 1464

quindi:

ping 1.1.1.1 -f -l 1464

Non prendere 1492 come valore universale

1492 è molto comune con PPPoE tradizionale, ma configurazioni e reti differenti possono comportarsi diversamente. Il test serve proprio a verificare il percorso reale.

Come trovare la dimensione massima

Possiamo procedere per tentativi.

01

Parti da un valore plausibile

ping 1.1.1.1 -f -l 1472
02

Se fallisce, riduci il payload

Prova valori progressivamente inferiori.

03

Trova il valore massimo che passa

Individua il payload più grande che attraversa il percorso senza richiedere frammentazione.

04

Aggiungi 28 byte

Nel caso di questo test ICMP IPv4, aggiungi gli header IP e ICMP per ottenere il valore complessivo.

Attenzione: il server può non rispondere al ping

Non tutte le destinazioni rispondono a ICMP.

Inoltre, policy di rete e filtri possono influenzare il comportamento.

Per questo un test MTU deve essere interpretato insieme ad altri elementi della diagnosi.

📦 Frammentazione IPv4

In IPv4 può esistere frammentazione quando un pacchetto deve attraversare una tratta che non può trasportarlo interamente.

Tuttavia, affidarsi alla frammentazione non è normalmente la strategia ideale per una rete moderna.

È preferibile che gli endpoint utilizzino dimensioni compatibili con il percorso.

IPv6 si comporta diversamente

In IPv6 i router intermedi non frammentano i pacchetti come può avvenire in IPv4.

Il mittente deve adattare la dimensione al percorso, rendendo importante il corretto funzionamento dei messaggi ICMPv6 necessari.

Non bloccare ICMPv6 indiscriminatamente

ICMPv6 svolge funzioni fondamentali nel funzionamento di IPv6. Filtrarlo senza comprendere il ruolo dei diversi messaggi può causare problemi difficili da diagnosticare.

🔧 Cos’è MSS

MSS significa Maximum Segment Size.

In TCP indica la quantità massima di dati TCP che un endpoint dichiara di voler ricevere in un singolo segmento.

MSS e MTU sono collegati, ma non sono la stessa cosa.

MTU e MSS

Parametro Descrizione
MTU Dimensione massima del pacchetto IP trasportabile sull’interfaccia o sul percorso.
MSS Quantità di payload TCP dichiarata dall’endpoint.

Perché si usa MSS Clamping

Alcuni router possono modificare l’MSS annunciato nelle connessioni TCP per evitare che gli endpoint generino segmenti troppo grandi rispetto al percorso.

Questa tecnica viene comunemente chiamata MSS Clamping.

È particolarmente rilevante in scenari con tunnel, VPN, PPPoE o altre forme di incapsulamento.

VPN e MTU

Una VPN aggiunge ulteriori header e incapsulamenti.

Questo riduce lo spazio disponibile per il pacchetto originale se il collegamento sottostante mantiene la stessa dimensione massima.

Per questo problemi MTU possono diventare più evidenti proprio quando viene attivata una VPN.

PPPoE su FTTH

Il fatto che una connessione utilizzi FTTH non significa automaticamente che PPPoE non venga utilizzato.

L’operatore può utilizzare PPPoE anche sopra un accesso in fibra ottica.

La tecnologia fisica e il metodo con cui viene stabilita la sessione IP sono due livelli differenti.

PPPoE e overhead

PPPoE introduce un overhead aggiuntivo.

Questo può incidere sia sulla dimensione massima dei pacchetti sia sul carico necessario al router per elaborare connessioni ad altissima velocità.

Su collegamenti Multi-Gigabit è quindi importante che il router disponga di hardware sufficientemente performante.

Jumbo Frame: aumentare MTU risolve?

No.

I Jumbo Frame sono utilizzati in alcune LAN per trasportare frame più grandi, ma richiedono supporto coerente lungo tutto il percorso locale.

Non sono una soluzione generica ai problemi MTU di una connessione Internet.

Non aumentare MTU a caso

Una MTU più grande non rende automaticamente Internet più veloce. Una configurazione non compatibile può invece creare nuovi problemi.

🛠️ Procedura pratica per sospetti problemi MTU

01

Verifica che Internet funzioni in generale

Controlla IP, gateway, DNS e raggiungibilità prima di modificare MTU.

02

Osserva se il problema è selettivo

Alcuni siti o servizi funzionano e altri no? Questo è più compatibile con un problema di percorso rispetto a un blackout totale.

03

Verifica se utilizzi PPPoE o tunnel

Controlla se esistono incapsulamenti che possono ridurre la dimensione disponibile.

04

Esegui test con Don’t Fragment

Cerca di determinare la dimensione che attraversa il percorso senza frammentazione.

05

Controlla firewall e ICMP

Assicurati che non esistano filtri che compromettano il funzionamento del PMTUD.

06

Modifica MTU solo con una motivazione concreta

Cambia un parametro alla volta e confronta il comportamento prima e dopo.

🧩 Interpretazione rapida

Sintomo Possibile interpretazione
Ping piccolo funziona, alcune connessioni grandi si bloccano Possibile problema MTU/PMTUD da verificare
Problema compare soltanto con VPN Controllare overhead del tunnel e MTU/MSS
PPPoE configurato con MTU 1500 senza supporto specifico Verificare compatibilità del percorso
Riducendo MTU il servizio torna a funzionare Forte indizio di problema legato alla dimensione dei pacchetti
Nessun sito funziona e gateway non risponde Probabilmente non è un problema MTU
Solo DNS non funziona Indagare prima la risoluzione DNS

🧠 Cosa devi ricordare

  • MTU indica la dimensione massima trasportabile senza superare il limite del collegamento.
  • 1500 byte è un valore comune su Ethernet.
  • PPPoE introduce overhead e tradizionalmente utilizza spesso MTU 1492.
  • Il Path MTU dipende dal tratto più restrittivo lungo il percorso.
  • PMTUD permette agli host di adattare la dimensione dei pacchetti.
  • Bloccare ICMP indiscriminatamente può creare problemi di PMTUD.
  • MSS e MTU sono collegati ma non sono la stessa cosa.
  • VPN e tunnel possono ridurre ulteriormente la dimensione disponibile.
  • Non modificare MTU a caso per cercare più velocità.

Domande frequenti

Cos’è l’MTU?

È la dimensione massima di un pacchetto IP che può essere trasportato su un’interfaccia senza superarne il limite.

Perché con PPPoE si parla spesso di MTU 1492?

Perché PPPoE aggiunge un proprio overhead all’interno del frame Ethernet. Nelle configurazioni PPPoE tradizionali questo porta spesso a utilizzare un MTU IP di 1492 byte.

Come posso testare l’MTU su Windows?

Su IPv4 puoi utilizzare ping con le opzioni -f e -l, variando la dimensione del payload per trovare il valore massimo che attraversa il percorso.

Perché si usa 1472 per testare MTU 1500?

Perché al payload ICMP bisogna aggiungere 20 byte di header IPv4 e 8 byte di header ICMP. 1472 + 28 produce quindi 1500 byte.

Cos’è un PMTU black hole?

È una situazione in cui pacchetti troppo grandi vengono scartati, ma il mittente non riceve correttamente le informazioni necessarie per ridurne la dimensione.

Cos’è MSS Clamping?

È una tecnica con cui un router modifica l’MSS annunciato nelle connessioni TCP per evitare segmenti troppo grandi rispetto al percorso.

Una VPN può creare problemi MTU?

Sì. L’incapsulamento della VPN aggiunge header e riduce lo spazio disponibile per i dati originali, quindi MTU e MSS possono diventare importanti.

Aumentare MTU rende Internet più veloce?

Non automaticamente. Una MTU deve essere compatibile con il percorso. Aumentarla senza motivo può creare problemi invece di migliorare le prestazioni.