Az IPv6 hibáit sokkal gyakrabban kenik a protokollra, mint az őket okozó csomagméretre. A két család valóban másképp kezeli a túl nagy csomagot, és épp az alagút az, ami ezt a különbséget fontossá teszi. Az IPv4 útválasztók töredezhetik a csomagot, ha a szabályok engedik, míg az IPv6 útválasztók egyáltalán nem töredezhetnek az úton. Az IPv6 ehelyett szól a küldőnek, és a küldőtől reakciót várnak. Minden, ami utána rosszul megy, abból következik, hogy az az üzenet megérkezik-e.

Mit tesz az egyes családok

A táblázat a mechanizmus négy sorban, és egy sor megmagyarázza a zavar nagy részét.

BehaviourIPv4IPv6
Router fragments an oversized packetAllowed while DF is clearNever
Signal returned to the senderICMP Fragmentation NeededICMPv6 Packet Too Big
Size that must always work68 bytes1280 bytes
Fragmentation possibleRouters or sourceSource only

Az IPv6-nak nincs töredezése az úton és nincs törölhető DF jelzője sem, így nincs mihez visszanyúlni, ha egy csomag túl nagy. A küldőt tájékoztatni kell, és a küldőnek el kell hinnie.

Az alagút csendben szűkíti az útvonalat

A VPN külső fejléceket ad hozzá, a titkosított esetben integritási adatokat is, mielőtt a csomag elhagyja a gazdagépet. A belső csomag beleférhet az általa látott interfész MTU-ba, miközben a külső csomag túllépi a következő kapcsolat határát, és ezért jelenik meg ez először alagútban. Szándékosan csökkentse az alagút interfész MTU-ját, vagy szorítsa meg a TCP MSS-t az úton, és írja le, melyik számot választotta és miért.

Az ESP többlete a módtól és az algoritmusoktól függ, ezért a helyes alagút-MTU számítás, nem konvenció. Bármit is választ, helyet kell hagynia egy teljes 1280 bájtos belső IPv6 csomagnak, mert minden IPv6 kapcsolatnak ennyit kell szállítania. Az az alagút, amely nem képes 1280 bájt IPv6-ot szállítani, nem hangolási probléma; az törött útvonal annak a családnak. Ez a korlát az, ami eltűnik, amikor egy MTU-értéket csak IPv4-es telepítésből másolnak át.

Miért akadásként jelenik meg a tünet

A hiba nem tiszta hiba, és ezért diagnosztizálják rosszul. A TCP kézfogás lezajlik, a kis válaszok megérkeznek, és a kapcsolat megakad, amint egy nagy válasz vagy egy nagy feltöltés elkezdődik, mert azok az első csomagok, amelyek elég nagyok ahhoz, hogy eldobják őket. Az SSH csatlakozik, majd megakad az első nagy kimenetnél, és egy oldal fejléce betöltődik, miközben a törzs soha nem fejeződik be.

Ha az ICMPv6 túl nagy csomagra vonatkozó üzeneteit szűrik, a küldő soha nem tudja meg, és ugyanazt a méretet próbálgatja. Ez fekete lyuk, nem lassú útvonal, és a jele ismételhető mérethatár, nem véletlenszerű veszteség. A vonatkozó vezérlőforgalom engedélyezése egy működő IPv6-telepítés része, nem udvariasság.

Ne kapcsolja ki azokat az üzeneteket, amelyektől a saját útvonala függ, majd ne írja le az eredményt IPv6-hibaként. Ugyanez az érv vonatkozik az IPv4 Fragmentation Needed üzeneteire, amelyek a tűzfal-szerzők körében ugyanolyan népszerűtlenek és ugyanolyan szükségesek.

Mérje meg a határt, majd javítsa a réteget

Ellenőrizzen a találgatás helyett: használja a don't-fragment jelzőt IPv4-en és rögzített hasznos teher méreteket IPv6-on, és jegyezze fel, hol állnak meg a válaszok. ping -M do -s 1472 és ping -6 -s 1400 elegendő a probléma alakjának megállapításához, és tracepath jelenti az útközben felfedezett útvonal-MTU-t.

Ezután javítsa azt a réteget, amely a számot birtokolja: az alagút interfész MTU-ját, a TCP MSS szorítását vagy magát az útvonalat. Az IPv6 szabály referenciája az RFC 8200, és rövidebb olvasmány, mint az incidens, amelyet megelőz.

Azt a családot tesztelje, amelyet az alkalmazás ténylegesen használ, mert egy kettős verem nevű név az egyik családon válaszolhat, a másikon nem, és az alkalmazás hálózatváltozás után válthat. Jegyezze fel a tesztelt címet, mert az A rekord elleni eredmény semmit sem mond az AAAA rekordról.

Kezelje bizonyítékként a mérethatárt

Az ismételhető mérethatár az egyik kevés hálózati hiba, amely pontosan reprodukálható, ugyanannyi bájtnál, ugyanabból a forrásból, minden alkalommal. Ez ajándékká teszi, nem rejtéllyé, és azt is jelenti, hogy a javítás ellenőrizhető reménykedés helyett.

Írja a jegybe a felfedezett MTU-t, a beállított alagút-MTU-t és a különbséget bizonyító tesztet. A következő ember ugyanezzel az aritmetikával találkozik egy másik kapcsolaton.

Kapcsolódó cikkek