Masharti matatu huamua kama mlinzi husaidia au hudhuru: kile uchunguzi unaweza kutofautisha, kushindwa kungapi mfululizo kunahalalisha hatua, na kama hatua ni kuunganisha upya au kubadilisha. Mstari wa cron unaopiga ping kwa anwani ya umma haujibu vyema hata moja yao. Huunganisha upya handaki zilizo sawa na kuacha zilizovunjika kama zilivyo, na hufanya yote mawili bila rekodi yoyote. Muundo unaostahili kubaki hufanya chaguo hizo tatu ziwe wazi.

Uchunguzi ndio sehemu inayoamua kila kitu kingine.

Ping kwenda intaneti inathibitisha nini kwa hakika

Kupiga ping kwa kitatuzi cha umma kunaonyesha kwamba njia ya ndani ya intaneti iko hai. Haimaanishi kwamba handaki inabeba trafiki, na katika wasifu wa handaki kamili ping yenyewe hupita ndani ya handaki, hivyo jibu salama na handaki lililovunjika vinaweza kuwepo pamoja wakati mteja bado anasambaza pakiti. Ikiwa wasifu unatuma utafutaji wa majina kupitia handaki, kushindwa kwa DNS husomwa kama kiungo kilichokufa na huanza kuunganisha upya ambako hakuwezi kurekebisha chochote.

Hakuna upande wowote wa hitilafu unaoonekana kwenye msimbo wa kutoka. Mlinzi uliojengwa juu ya ishara hiyo ni kurusha sarafu na ratiba ya cron.

Chunguza kitu kinachoishi nyuma ya handaki

ip -brief addr show tun0
ip route get 10.100.20.10
nc -z -w3 10.100.20.10 443

Chunguza kutoka ndani, ukaguzi wa bei nafuu kwanza. Kama kiolesura kipo, handaki iko juu; utafutaji wa njia kwa anwani ya ndani inayojulikana unaonyesha trafiki itaingia humo; uchunguzi wa TCP kwa mwenyeji upande wa pili unaonyesha kuwa kuna kitu kinajibu kweli. Maombi ya echo peke yake yanapotosha: wenyeji wengi wa ndani hujibu TCP kwa furaha lakini hutupa ICMP, hivyo mlinzi unaotegemea ping huunganisha upya handaki ambayo haikuacha kufanya kazi.

Weka uchunguzi ukiwa na kikomo cha muda na upe hali tofauti ya kutoka. Uchunguzi unaoning’inia kwa sekunde thelathini hugeuza mlinzi kuwa kigunduzi cha kukatika chenye ucheleweshaji uliojengwa ndani.

Chagua kati ya mstari mmoja na mzunguko

* * * * * nc -z -w5 10.100.20.10 443 || myvpn reconnect

Kipengele cha cron ni mstari mmoja usio na kumbukumbu, unaofaa kompyuta ya mkononi ambapo kuunganisha upya mara moja hakugharimu chochote. Mzunguko unaosimamiwa hushika kihesabu na huchukua hatua tu baada ya kukosa mara kadhaa, jambo linalozuia kiungo kisicho imara kusababisha dhoruba ya kuunganisha upya. Kwa vyovyote vile, iendeshe chini ya msimamizi ili istahimili kuanguka na iandike kwenye jarida. Chagua kwa kuzingatia kama kuunganisha upya kusiko kwa lazima ni muhimu, si kwa kuangalia toleo lipi ni fupi.

failures=0
while sleep 30; do
  if nc -z -w5 10.100.20.10 443; then failures=0
  else failures=$((failures+1)); fi
  if [ $failures -ge 3 ]; then myvpn reconnect; failures=0; fi
done

Mzunguko huo huhesabu kushindwa mfululizo badala ya sehemu ndani ya dirisha. Dirisha linahitaji saa na kumbukumbu ya sampuli, na hitilafu nyingi katika walinzi waliojengwa kwa mkono huishi katika hesabu hiyo.

Ubadilishaji wa seva ni uamuzi mwingine

Kubadilisha seva ni tofauti na kuunganisha upya. Vunja kwanza kiungo cha zamani, kwa sababu mteja wa pili anayeanza wakati wa kwanza bado anashikilia anwani atagongana. Hesabu kushindwa mfululizo kabla ya kubadilisha, weka kikomo cha majaribio, na uchunguze tena kiungo kipya kikiwa juu badala ya kuamini hali ya kutoka ya amri ya connect. Mipangilio isiyo sahihi haipaswi kuzunguka kila seva katika mzunguko.

Usichunguze anwani ya umma ya seva ya VPN yenyewe kutoka ndani ya handaki kamili. Uchunguzi huo unategemea kitu kinachojaribiwa, na huripoti mafanikio wakati njia iliyopaswa kuthibitishwa tayari imeondoka.

Rekodi ni uchunguzi upi uliendeshwa, ulirudisha nini na hatua ipi ilifuata. Rekodi hiyo hugeuza kuunganisha upya kwa ajabu kuwa tukio linaloweza kutambuliwa.

Makala zinazohusiana