Sledujte, jak se pobočka po výpadku spoje vrací a brána vidí něco, co se během běžného dne nikdy neobjeví: desítky notebooků přicházejí najednou z jedné veřejné adresy. Každý je legitimní zařízení a každý zahajuje výměnu IKE, která ještě neskončila. Zda ten nápor uspěje, závisí na limitech, které nemají nic společného s tím, kolik zaměstnanců server unese. Nápor je krátký a je to přesně ta zátěž, pro kterou byla cesta přijetí postavena.

Sledujte jeden notebook zpět do sítě

Klient odešle počáteční požadavek a čeká, a dokud se výměna nedokončí, brána drží stav přijetí pro tento pokus. Další zařízení za stejnou adresou přicházejí, zatímco první stále čeká, a řadí se za limit, který počítá adresy, nikoli uživatele. Zvenčí je příznakem hrstka uživatelů, kteří se připojí, a větší skupina, které vyprší čas.

Nic v této posloupnosti není závada. Je to cesta přijetí, která dělá to, k čemu byla nastavena.

Počítejte polootevřenou práci jako vlastní zdroj

strongSwan odděluje dvě populace: asociace, které jsou plně navázané, a pokusy, které se ještě připojují nebo čekají na zpracování. Prah blokování platí pro polootevřené asociace přiřazené jedné adrese protějšku a prahy cookie platí globálně a pro každou adresu. Tyto počítadla chrání démona před spotřebováním neautentizovanou prací, což je přesně podoba bouře opětovného připojení. Nic z tohoto stavu se neobjevuje v seznamu navázaných tunelů.

Číst je jako strop zaměstnaneckých relací je chyba, která vede ke zvyšování všeho najednou. Server, který unese čtyři sta navázaných tunelů, není automaticky schopen pohltit čtyři sta současných prvních paketů, protože obě náklady dopadají na různá místa.

Latence autentizace rozhoduje o tom, jak dlouho každý pokus zůstává v počtu polootevřených. Backend, který odpovídá pomalu, mění krátký nápor na dlouhou frontu, i když je míra příchodu skromná.

swanctl --stats
swanctl --list-sas | grep -c ESTABLISHED

Přečtěte si nastavení přijetí, než je změníte

Najděte hodnoty, které běžící démon skutečně načetl, než si o nich uděláte názor. Konfigurace je často rozdělena mezi hlavní soubor a adresář úryvků pro jednotlivé pluginy, takže hodnota nastavená na jednom místě může být přebita na jiném. Níže uvedené hledání ukáže každý soubor, který tato nastavení zmiňuje.

Pak rozhodněte, které číslo je příliš malé. Pokud jedna adresa legitimně představuje celou kancelář, prahem blokování pro adresu je hodnota, která musí tuto koncentraci pojmout. Globální prah cookie chrání démona před širší záplavou a neměl by se uvolňovat proto, že se jedna lokalita znovu připojuje. Porovnejte tuto hodnotu pro adresu s největší lokalitou, kterou skutečně máte.

Nechte mechanismus cookie zapnutý. Cookies nutí klienta prokázat, že dokáže přijímat na tvrzené adrese, než démon vydá skutečnou práci na výměnu, a jejich vypnutí není neutrálním navýšením kapacity. Zvyšujte prahovou hodnotu jen se změřenou mírou příchodu a deklarovaným rozpočtem autentizace za ní.

grep -rn -E 'block_threshold|cookie_threshold' /etc/strongswan.conf /etc/strongswan.d/
swanctl --stats | grep -i half

Plánujte návrat, ne jen ustálený stav

Cíl dostupnosti, který počítá jen navázané relace, popisuje klidné odpoledne, nikoli obnovu. Ptejte se místo toho, jak se zamýšlená populace vrací po společné síťové události a zda cesta přijetí dokáže tuto podobu pojmout.

Rozprostření opětovného připojení přes spravovanou flotilu je často levnější než zvětšování limitů, protože odstraňuje umělý nápor místo trvalé platby za něj. Sledujte polootevřený stav a události přijetí vedle úspěšných navázání a rostoucí počet polootevřených při plochých úspěších berte jako včasné varování, nikoli jako zajímavost.

Referencí dodavatele pro tato nastavení je dokumentace strongswan.conf, která pojmenovává počítadla a vydání, jež zavedlo prahovou hodnotu cookie pro adresu. Čtěte část pro svou nainstalovanou verzi, ne nejnovější stránku, protože výchozí hodnoty se mezi vydáními mění.

Související články