Sledujte, ako sa pobočka po výpadku spojenia vracia a brána vidí niečo, čo sa počas bežného dňa nikdy neobjaví: desiatky notebookov prichádzajú naraz z jednej verejnej adresy. Každý je legitímne zariadenie a každý začína výmenu IKE, ktorá sa ešte neskončila. Či ten nápor uspeje, závisí od limitov, ktoré nemajú nič spoločné s tým, koľko zamestnancov server unesie. Nápor je krátky a je to presne tá záťaž, pre ktorú bola cesta prijatia postavená.

Sledujte jeden notebook späť do siete

Klient odošle počiatočnú požiadavku a čaká, a kým sa výmena nedokončí, brána drží stav prijatia pre tento pokus. Ďalšie zariadenia za tou istou adresou prichádzajú, kým prvé ešte čaká, a radia sa za limit, ktorý počíta adresy, nie používateľov. Zvonka je príznakom hŕstka používateľov, ktorí sa pripoja, a väčšia skupina, ktorej vyprší čas.

Nič v tomto slede nie je porucha. Je to cesta prijatia, ktorá robí to, na čo bola nastavená.

Počítajte polootvorenú prácu ako vlastný zdroj

strongSwan oddeľuje dve populácie: asociácie, ktoré sú plne nadviazané, a pokusy, ktoré sa ešte pripájajú alebo čakajú na spracovanie. Prah blokovania platí pre polootvorené asociácie priradené jednej adrese partnera a prahy cookie platia globálne a pre každú adresu. Tieto počítadlá chránia démona pred spotrebovaním neautentizovanou prácou, čo je presne podoba búrky opätovného pripojenia. Nič z tohto stavu sa neobjavuje v zozname nadviazaných tunelov.

Čítať ich ako strop zamestnaneckých relácií je chyba, ktorá vedie k zvyšovaniu všetkého naraz. Server, ktorý unesie štyristo nadviazaných tunelov, nie je automaticky schopný pohltiť štyristo súčasných prvých paketov, pretože obe náklady dopadajú na rôzne miesta.

Latencia autentizácie rozhoduje o tom, ako dlho každý pokus zostáva v počte polootvorených. Backend, ktorý odpovedá pomaly, mení krátky nápor na dlhý rad, aj keď je miera príchodu skromná.

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

Prečítajte si nastavenia prijatia, kým ich zmeníte

Nájdite hodnoty, ktoré bežiaci démon skutočne načítal, kým si o nich vytvoríte názor. Konfigurácia je často rozdelená medzi hlavný súbor a adresár úryvkov pre jednotlivé pluginy, takže hodnota nastavená na jednom mieste môže byť prepísaná na inom. Nižšie uvedené hľadanie zobrazí každý súbor, ktorý tieto nastavenia spomína.

Potom rozhodnite, ktoré číslo je príliš malé. Ak jedna adresa legitímne predstavuje celú kanceláriu, prahom blokovania pre adresu je hodnota, ktorá musí pojať túto koncentráciu. Globálny prah cookie chráni démona pred širšou záplavou a nemal by sa uvoľňovať preto, že sa jedna lokalita znova pripája. Porovnajte túto hodnotu pre adresu s najväčšou lokalitou, ktorú skutočne máte.

Nechajte mechanizmus cookie zapnutý. Cookies nútia klienta preukázať, že dokáže prijímať na tvrdenej adrese, kým démon vydá skutočnú prácu na výmenu, a ich vypnutie nie je neutrálne navýšenie kapacity. Zvyšujte prah len s nameranou mierou príchodu a deklarovaným rozpočtom autentizácie za ním.

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

Plánujte návrat, nielen ustálený stav

Cieľ dostupnosti, ktorý počíta len nadviazané relácie, opisuje pokojné popoludnie, nie obnovu. Pýtajte sa namiesto toho, ako sa zamýšľaná populácia vracia po spoločnej sieťovej udalosti a či cesta prijatia dokáže pojať túto podobu.

Rozloženie opätovného pripojenia cez spravovanú flotilu je často lacnejšie než zväčšovanie limitov, pretože odstraňuje umelý nápor namiesto trvalej platby zaň. Sledujte polootvorený stav a udalosti prijatia vedľa úspešných nadviazaní a rastúci počet polootvorených pri plochých úspechoch berte ako včasné varovanie, nie ako zaujímavosť.

Referenciou dodávateľa pre tieto nastavenia je dokumentácia strongswan.conf, ktorá pomenúva počítadlá a vydanie, ktoré zaviedlo prah cookie pre adresu. Čítajte časť pre svoju nainštalovanú verziu, nie najnovšiu stránku, pretože predvolené hodnoty sa medzi vydaniami menia.

Súvisiace články