Tre ulike ting kan gå gale med ein tunnel, og dei krev tre ulike reaksjonar. Motparten sluttar å svare, daemonprosessen døyr, eller applikasjonen bak tunnelen sluttar å tene. Ein konfigurasjon som startar tenesta på nytt ved kven som helst av dei, er ikkje nøye overvaking; det er éi grov handling brukt på urelaterte feil. Å samanlikne kva kvar mekanisme faktisk kan observere gjer arbeidsdelinga openber.

Tre feil som ser ut som éin

Stillheit frå motparten tyder på at den andre enden slutta å sende, og OpenVPN kan oppdage det sjølv fordi det eig hjarteslaget. Prosessdød tyder på at daemonen avslutta, noko tenestebehandlaren merkjer og OpenVPN ikkje kan. Applikasjonsfeil tyder på at tunnelen er fin og noko bak han ikkje, og ingen av dei to andre mekanismane har nokon måte å vite det på. Kvar av dei treng ein annan reaksjon, og ingen av dei er det same som å merkje at tunnelen er oppe.

Dette er ulike signal frå ulike lag, og kvar har ein eigar som kan handle på det utan å gjette. Å blande dei gir eit system som startar på nytt på symptom det ikkje kan tolke.

Skriv ned dei tre tilfella før du endrar nokon timer. Lista viser vanlegvis at éin mekanisme blir bede om å dekkje alle tre.

Kva keepalive faktisk utvidar til

Direktivet keepalive er ei forkorting, og utvidinga varierer etter modus. På ein server blir keepalive 10 60 eit lokalt ping kvart tiande sekund, ein lokal omstartfrist på 120 sekund og verdiane 10 og 60 som blir sende til klientar. Fristen til serveren blir medvite dobla slik at ein klient får sjanse til å starte på nytt før serveren gir opp. Les den utvida forma i den køyrande konfigurasjonen, ikkje forkortinga i profilen.

Den doblinga er grunnen til at kvar skildring som hevdar at båe endar startar på nytt etter seksti sekund, er feil. Det forklarer også kvifor dei to endane ikkje blafrar i takt når ein rute blir verre.

Hjarteslaget er OpenVPN-motpartstrafikk, ikkje ein ICMP-sondering av ein offentleg vert. Eit svar beviser berre at den fjerne enden av tunnelen lever. Det seier ingenting om databasen eller nettenesta brukaren faktisk treng.

Kva Restart=on-failure ikkje overvakar

Les den installerte eininga før du legg til ei overstyring. Restart=on-failure reagerer på dokumenterte prosessfeiltilstandar, som ikkje er det same som å overvake tilkoplingsstatusen. Ho utløysest ikkje fordi ein intern gjenoppkopling starta, og ei rein avslutting har ei anna tyding enn ein krasj.

Den skilnaden tyder noko fordi ein intern omstart held den same prosessen i live. Eininga ser ingenting, tunnelen kjem seg sjølv, og det er det rette resultatet.

Set RestartSec og startgrenser medvite, elles vil ei krasjløkke hamre på gatewayen og grave ned den eigentlege feilen under omstartsmeldingar. Ei omstartgrense som utløysest, lèt eininga stå i feil, noko som er synleg, medan ei ubunden løkke ikkje er det.

ping-restart og ping-exit kan ikkje bytast om

ping-restart utløyser den interne omstarten til OpenVPN og held prosessen. ping-exit avsluttar prosessen ved same type frist, noko som overlèt avgjerda til tenestebehandlaren. Dei utelukkar kvarandre, og å velje den andre endrar kven som eig gjenopprettinga. Skilnaden er kven som avgjer å prøve igjen, og kor mykje tilstand som overlever forsøket.

Viss du vel avslutting ved tidsavbrot, treng eininga ein omstartspolicy og handtering av avslutningsstatus som passar, elles ser ein levedyktigheitsfeil ut som ein permanent stopp. Persistensval kan også halde på grensesnitt og ruter gjennom ein intern omstart, men ikkje gjennom ei prosessavslutting.

Vel éin livssyklus per utrulling og skriv ned kvifor. Ein profil som ber båe direktiva, er ein profil som ikkje har avgjort seg.

Test kvar feil som sitt eige tilfelle

Simuler ein still motpart, ein drepen daemon og ein utilgjengeleg applikasjon i eit godkjent vindauge, og kontroller deretter kva gjenoppretting som blei utløyst. Ein still motpart bør gi ein intern gjenoppkopling, ein drepen prosess ein eining-omstart, og eit applikasjonsavbrot ingen av desse. Når to tilfelle gir same handling, er eigarskapet framleis blanda.

Gjenteke gjenoppretting er heller ikkje ein reparasjon. Avviste påloggingsdata eller to klientar som deler eitt effektivt namn, vil halde fram med å erstatte kvarandre, og raskare timarar gjer berre den blafringa raskare.

Relaterte artiklar