A VPN ping működik, de a webhely lefagy: ellenőrizze a méretet
Egy kis visszhangválasz nem tesztel TCP-figyelőt vagy nagy átvitelt. Válassza szét a hozzáférési szabályzatot és a csomagméretet, mielőtt csökkenti az alagút MTU-ját.
A visszhangválaszok megérkeznek, a távoli asztal működik, a böngésző pedig üres oldalon marad, amíg fel nem adja. Két magyarázat illik erre a mintára, és ezek nem egyetlen probléma változatai: egy szabályzat, amely soha nem engedélyezte a szolgáltatást, vagy csomagok, amelyek nem férnek be, amint az átvitel megnő. A visszhangválasz egyiket sem zárja ki.
Haladjon a legkisebb kérdéstől a legnagyobbig, és jegyezze fel, mit bizonyított valójában az egyes lépés.
A visszhangválasz sokkal kisebb kérdésre válaszol
A visszhangválasz azt mondja, hogy a cél IP-vereme válaszolt a forrásától érkező ICMP-kérésre. Nem mond semmit arról, hogy létezik-e TCP-figyelő a szükséges porton, engedélyezi-e egy szabályzat azt a portot, vagy a célgép az átjárótól függetlenül szűri-e a forgalmat. Egy átjáró, amely engedélyez egy szolgáltatást, eldobhat egy másikat, miközben mindkét cél válaszol a pingre. Olvassa a választ egyetlen tényként egyetlen csomagról és egyetlen irányról.
Erősítse meg a célt és a szolgáltatás portját, mielőtt bármi mást értelmez. A tesztelt cím és az alkalmazás által használt cím néha különböző rekordok, és egy név, amely két címre oldódik fel, ezt valószínűvé teszi.
Tudja meg, elindult-e a kapcsolat
Az azonnal elutasított kapcsolat a figyelő vagy a szabályzat válasza: valami válaszolt, és nemet mondott. Az a kapcsolat, amely megnyílik, majd megakad, amikor az adatok mozogni kezdenek, a méretre utal. Az a kapcsolat, amely soha nem fejezi be a kézfogást, általában szabályzat vagy útválasztás kérdése, és időtúllépésnek látszik, nem elutasításnak.
curl -v --max-time 10 https://internal.example/ -o /dev/null
ss -tn state established '( dport = :443 )'
Jegyezze fel, melyiket látta a három közül, mielőtt az MTU-beállításokhoz nyúl. Az alagút méretének módosítása egy elutasított kapcsolat javítására elpazarolja a változtatást, és egy ideig elrejti a valódi okot.
Mérje a méretet megadott számmal
Amikor az akadás terhelés alatt jelentkezik, teszteljen egy csomagméretet a töredezést tiltó bittel, és mondja ki a számítást, hogy az eredmény jelentsen valamit. Linuxon iputils-szel az 1392 bájtos hasznos teher plusz a 8 bájtos ICMP-fejléc és a 20 bájtos IPv4-fejléc pontosan 1420 bájtos belső csomagot ad. Mondja ki ezt a számítást a ticketben, mert a csupasz ping, amely eléri az átjárót, semmit sem bizonyít egy alkalmazásról.
ping -4 -M do -s 1392 10.44.0.10
ping -4 -M do -s 1372 10.44.0.10
Mindkét próba mérési pont, nem az alagút méretére vonatkozó javaslat. Ha az ICMP-t valahol az útvonalon szűrik, az időtúllépés semmit sem mond a méretről, mert a szűrés és a túl nagy csomag az ügyfél oldaláról egyformán néz ki. A siker sem mond semmit az ellenkező irányról vagy egy másik célról.
Számoljon a külső útvonallal
A beágyazás saját fejléceket ad hozzá, ezért a vezetéken lévő csomag nagyobb, mint az, amelyet az alagúton belül mért. A kettő közötti különbség teszi lehetővé egyszerre a működő kis kérést és a meghiúsuló nagyot.
Az IPv4 útvonal-MTU felderítése azokról a csomagokról szóló visszajelzéstől függ, amelyeket töredezés nélkül nem lehet továbbítani, az IPv6 pedig Packet Too Big üzeneteket használ. Az IPv4 specifikáció leírja ezt a mechanizmust. A visszajelzés szűrése megtöri a küldő tanulási képességét, és azt eredményezi, hogy újra és újra olyan csomagokat küld, amelyek soha nem férnek be. Ezért fér meg olyan kényelmesen egymás mellett a működő kis kérés és a meghiúsuló nagy.
Változtasson egy számon, és tesztelje újra az alkalmazást
Csökkentse az alagút MTU-ját, vagy korlátozza a TCP maximális szegmensméretét, majd ismételje meg az eredeti alkalmazástesztet a próba helyett. Egy változtatás után sikeres próba és egy még mindig akadó alkalmazás hasonló alakú, más probléma, és csak az alkalmazásteszt különbözteti meg őket.
Tartsa a számítást a változási rekordban: a mért méretet, a feltételezett többletköltséget és a beállított értéket. Aki később átnézi, ellenőrizheti a feltevést ahelyett, hogy újra levezetné egy ping képernyőképéből.
Ha az alkalmazás minden kipróbált méreten működik, hagyja abba a számok hangolását, és nézze meg azt a szabályzatot, amely elválasztja a működő szolgáltatást a meghiúsulótól.