Gall tair peth gwahanol fynd o chwith gyda thwnnel, ac mae angen tair ymateb gwahanol arnynt. Mae'r cymar yn rhoi'r gorau i ateb, mae proses y daemon yn marw, neu mae'r rhaglen y tu ôl i'r twnnel yn rhoi'r gorau i wasanaethu. Nid yw ffurfweddiad sy'n ailgychwyn y gwasanaeth ar unrhyw un ohonynt yn oruchwyliaeth ofalus; un weithred ddifeddwl yw hi a roddir ar fethiannau digyswllt. Mae cymharu'r hyn y gall pob mecanism ei arsylwi mewn gwirionedd yn gwneud y rhaniad gwaith yn amlwg.

Tair methiant sy'n edrych yn un

Mae distawrwydd y cymar yn golygu bod y pen arall wedi stopio anfon, a gall OpenVPN ganfod hynny ei hun oherwydd mai ef sy'n berchen ar y curiad. Mae marwolaeth y broses yn golygu bod y daemon wedi gadael, ac mae'r rheolwr gwasanaeth yn sylwi ar hynny ac ni all OpenVPN wneud hynny. Mae methiant y rhaglen yn golygu bod y twnnel yn iawn ac nad yw rhywbeth y tu ôl iddo felly, ac nid oes gan y naill na'r llall o'r ddau fecanism arall unrhyw ffordd o wybod. Mae angen ymateb gwahanol ar bob un, ac nid oes yr un ohonynt yr un fath â sylwi bod y twnnel i fyny.

Mae'r rhain yn signalau gwahanol o haenau gwahanol, ac mae gan bob un berchennog a all weithredu arno heb ddyfalu. Mae eu cymysgu yn cynhyrchu system sy'n ailgychwyn ar symptomau na all ei dehongli.

Ysgrifennwch y tri achos i lawr cyn newid unrhyw amserydd. Mae'r rhestr ei hun fel arfer yn dangos bod un mecanism yn cael ei ofyn i gwmpasu'r tri.

I beth mae keepalive mewn gwirionedd yn ehangu

Mae'r gyfarwyddeb keepalive yn llaw-fer, ac mae'r ehangiad yn amrywio yn ôl modd. Ar weinydd, mae keepalive 10 60 yn dod yn ping lleol bob deng eiliad, yn derfyn amser ailgychwyn lleol o 120 eiliad, ac yn werthoedd 10 a 60 a wthir at gleientiaid. Mae terfyn amser y gweinydd yn cael ei ddyblu'n fwriadol fel bod gan gleient gyfle i ailgychwyn cyn i'r gweinydd ildio. Darllenwch y ffurf ehangedig yn y ffurfweddiad sy'n rhedeg, nid y llaw-fer yn y proffil.

Y dyblu hwnnw yw'r rheswm mae unrhyw ddisgrifiad sy'n honni bod y ddau ben yn ailgychwyn ar ôl chwedeg eiliad yn anghywir. Mae hefyd yn egluro pam nad yw'r ddau ben yn fflapio gyda'i gilydd pan fydd llwybr yn dirywio.

Trafnidiaeth cymar OpenVPN yw'r curiad, nid prawf ICMP ar ryw westeiwr cyhoeddus. Mae ateb yn profi'n unig fod pen pell y twnnel yn fyw. Nid yw'n dweud dim am y gronfa ddata na'r gwasanaeth gwe y mae'r defnyddiwr ei angen mewn gwirionedd.

Yr hyn nad yw Restart=on-failure yn ei wylio

Darllenwch yr uned sydd wedi'i gosod cyn ychwanegu diheuad. Mae Restart=on-failure yn ymateb i amodau methiant proses a ddogfenwyd, ac nid yw hynny'r un fath â gwylio cyflwr y cysylltiad. Nid yw'n tanio oherwydd bod ailgysylltiad mewnol wedi dechrau, ac mae gan adael yn lân semanteg wahanol i chwalfa.

Mae'r gwahaniaeth hwnnw'n bwysig oherwydd bod ailgychwyn mewnol yn cadw'r un broses yn fyw. Nid yw'r uned yn gweld dim, mae'r twnnel yn adfer ei hun, a dyna'r canlyniad cywir.

Gosodwch RestartSec a therfynau cychwyn yn fwriadol, neu bydd dolen chwalfa yn taro'r giât a chladdu'r gwall go iawn o dan negeseuon ailgychwyn. Mae terfyn ailgychwyn sy'n tanio yn gadael yr uned yn methu, sy'n weladwy, tra nad yw dolen ddiderfyn felly.

Nid yw ping-restart a ping-exit yn gyfnewidiol

Mae ping-restart yn sbarduno ailgychwyn mewnol OpenVPN ac yn cadw'r broses. Mae ping-exit yn gorffen y broses ar yr un math o derfyn amser, sy'n rhoi'r penderfyniad i'r rheolwr gwasanaeth. Maent yn gyfyngedig i'w gilydd, ac mae dewis yr ail yn newid pwy sy'n berchen ar yr adferiad. Y gwahaniaeth yw pwy sy'n penderfynu ceisio eto, a faint o gyflwr sy'n goroesi'r ymgais.

Os dewiswch adael ar amser allan, mae angen polisi ailgychwyn a thriniaeth statws gadael sy'n cyd-fynd ar yr uned, neu bydd methiant bywiogrwydd yn edrych fel stop parhaol. Gall opsiynau dyfalbarhad hefyd gadw rhyngwynebau a llwybrau ar draws ailgychwyn mewnol, ond nid ar draws ymadawiad proses.

Dewiswch un cylch bywyd fesul defnyddiad ac ysgrifennwch pam. Mae proffil sy'n cario'r ddwy gyfarwyddeb yn broffil nad yw wedi penderfynu.

Profwch bob methiant fel ei achos ei hun

Efelychwch gymar distaw, daemon wedi'i ladd a rhaglen sydd ddim ar gael mewn ffenestr gymeradwy, yna gwiriwch pa adferiad a daniodd. Dylai cymar distaw gynhyrchu ailgysylltiad mewnol, proses wedi'i lladd ailgychwyn uned, a thoriad y rhaglen y naill na'r llall. Pan fydd dau achos yn cynhyrchu'r un weithred, mae'r berchenogaeth yn dal yn gymysg.

Nid yw adferiad dro ar ôl tro yn atgyweiriad chwaith. Bydd credlynnau a wrthodwyd neu ddau gleient yn rhannu un enw effeithiol yn parhau i ddisodli ei gilydd, ac mae amseryddion cynt yn gwneud y fflapio hwnnw'n gyflymach yn unig.

Erthyglau cysylltiedig