Tunnel bilan uch xil narsa noto'g'ri ketishi mumkin va ular uch xil javob talab qiladi. Sherik javob berishni to'xtatadi, daemon jarayoni o'ladi yoki tunnel orqasidagi ilova xizmat ko'rsatishni to'xtatadi. Ulardan birortasi sabab xizmatni qayta ishga tushiradigan konfiguratsiya ehtiyotkor nazorat emas; bu bog'liq bo'lmagan nosozliklarga qo'llaniladigan bitta qo'pol harakat. Har bir mexanizm aslida nimani kuzata olishini solishtirish mehnat taqsimotini ravshan qiladi.

Bitta ko'rinadigan uchta nosozlik

Sherikning jimligi boshqa tomon yuborishni to'xtatganini bildiradi va OpenVPN buni o'zi aniqlay oladi, chunki yurak urishi unga tegishli. Jarayon o'limi daemon chiqib ketganini bildiradi; buni xizmat menejeri sezadi, OpenVPN esa sezmaydi. Ilova nosozligi tunnel yaxshi, lekin uning orqasidagi narsa yaxshi emasligini bildiradi va qolgan ikki mexanizmning hech birida buni bilish yo'li yo'q. Har biri boshqa javob talab qiladi va hech biri tunnel ishlayotganini payqash bilan bir xil emas.

Bular turli qatlamlardan kelgan turli signallar va har birining taxmin qilmasdan harakat qila oladigan egasi bor. Ularni aralashtirish talqin qila olmaydigan belgilarga qayta ishga tushadigan tizim yaratadi.

Har qanday taymerni o'zgartirishdan oldin uchta holatni yozib qo'ying. Ro'yxatning o'zi odatda bitta mexanizmdan uchtasini qoplash talab qilinayotganini ko'rsatadi.

keepalive aslida nimaga kengayadi

keepalive direktivasi qisqartma va kengayish rejimga qarab farq qiladi. Serverda keepalive 10 60 har o'n soniyada mahalliy pingga, 120 soniyalik mahalliy qayta ishga tushish taymautiga va mijozlarga yuboriladigan 10 va 60 qiymatlariga aylanadi. Server taymauti ataylab ikki barobar oshiriladi, shunda mijoz server taslim bo'lishidan oldin qayta ishga tushish imkoniyatiga ega bo'ladi. Profildagi qisqartmani emas, ishlab turgan konfiguratsiyadagi kengaytirilgan shaklni o'qing.

Ana shu ikki barobar oshirish oltmish soniyadan keyin ikkala tomon ham qayta ishga tushadi deb da'vo qiluvchi har qanday tavsifning nima uchun xato ekanini tushuntiradi. Shuningdek, yo'l yomonlashganda ikki tomon nima uchun bir ritmda tebranmasligini ham izohlaydi.

Yurak urishi OpenVPN sherik trafigi, biron jamoat hostiga ICMP tekshiruvi emas. Javob faqat tunnelning uzoq tomoni tirikligini isbotlaydi. Foydalanuvchiga aslida kerak bo'lgan ma'lumotlar bazasi yoki veb-xizmat haqida u hech narsa demaydi.

Restart=on-failure nimani kuzatmaydi

Qayta yozish qo'shishdan oldin o'rnatilgan unitni o'qing. Restart=on-failure hujjatlashtirilgan jarayon nosozligi shartlariga javob beradi, bu ulanish holatini kuzatish bilan bir xil emas. U ichki qayta ulanish boshlangani uchun ishga tushmaydi va toza chiqishning semantikasi halokatdan farq qiladi.

Bu farq muhim, chunki ichki qayta ishga tushirish o'sha jarayonni tirik saqlaydi. Unit hech narsani ko'rmaydi, tunnel o'z-o'zidan tiklanadi va bu to'g'ri natija.

RestartSec va ishga tushish chegaralarini ataylab belgilang, aks holda halokat tsikli shlyuzni urib, haqiqiy xatoni qayta ishga tushish xabarlari ostiga ko'madi. Ishlab ketgan qayta ishga tushish chegarasi unitni muvaffaqiyatsiz qoldiradi, bu ko'rinadi, cheksiz tsikl esa ko'rinmaydi.

ping-restart va ping-exit bir-birini almashtira olmaydi

ping-restart OpenVPNning ichki qayta ishga tushishini qo'zg'atadi va jarayonni saqlaydi. ping-exit xuddi shu turdagi taymautda jarayonni tugatadi, bu qaror xizmat menejeriga o'tadi. Ular o'zaro istisno va ikkinchisini tanlash tiklanish egasini o'zgartiradi. Farq shundaki, yana urinishga kim qaror qiladi va urinishda qancha holat omon qoladi.

Agar taymautda chiqishni tanlasangiz, unitga mos qayta ishga tushirish siyosati va chiqish holatini qayta ishlash kerak, aks holda hayotiy nosozlik doimiy to'xtashga o'xshaydi. Saqlash variantlari ichki qayta ishga tushirish davomida interfeys va marshrutlarni saqlab qolishi mumkin, ammo jarayon chiqishi davomida emas.

Har bir joylashtirish uchun bitta hayot tsiklini tanlang va sababini yozing. Ikkala direktivani olib yuruvchi profil hal qilmagan profildir.

Har bir nosozlikni alohida holat sifatida sinang

Tasdiqlangan oynada jim sherik, o'ldirilgan daemon va mavjud bo'lmagan ilovani simulyatsiya qiling, so'ng qaysi tiklanish ishga tushganini tekshiring. Jim sherik ichki qayta ulanishni, o'ldirilgan jarayon unit qayta ishga tushishini, ilova uzilishi esa ularning hech birini keltirmasligi kerak. Ikki holat bir xil harakatni keltirsa, egalik hali aralash.

Takroriy tiklanish ham ta'mirlash emas. Rad etilgan hisob ma'lumotlari yoki samarali nomni bo'lishadigan ikki mijoz bir-birini almashtirishda davom etadi va tezroq taymerlar bu tebranishni faqat tezlashtiradi.

O'xshash maqolalar