Keepalive nuk është rilidhje: zgjidh sipas dështimit që ke
Një paketë e mban një hartëzim gjallë; një rilidhje e rindërton marrëdhënien. Përshtate mekanizmin me dështimin dhe pastaj verifiko me një kërkesë të vërtetë.
Keepalive dhe rilidhjet konfigurohen në të njëjtën frymë por zgjidhin probleme të ndryshme, prandaj rregullimi i njërës rrallë e rregullon tjetrën. Një keepalive dërgon trafik të vogël për të mbajtur gjallë një zë të gjendjes ose për të vënë re se një palë ndaloi së përgjigjuri. Një rilidhje rrëzon atë që është thyer dhe e rindërton marrëdhënien, duke përfshirë çelësat, adresat dhe rrugët. Zgjidh mekanizmin që përputhet me dështimin, jo atë çelësin e të cilit e njeh tashmë. Dy pyetje e vendosin: a është rruga e vdekur, apo diçka midis palëve po e harron?
Kur hartëzimi është problemi
Një tunel që vdes vetëm pas minutash heshtjeje zakonisht humbet një zë përkthimi dhe jo një palë. Opsioni PersistentKeepalive i WireGuard ekziston për gjendjen NAT dhe murin e zjarrit, dhe shënimet e vetë projektit e përshkruajnë pikërisht kështu, jo si kontroll shëndetësor. Një interval prej disa dhjetëra sekondash e mban zërin të ngrohtë, ndërsa një paketë çdo sekondë është vendim baterie dhe jo besueshmërie. OpenVPN arrin në të njëjtin vend përmes ping dhe ping-restart , të cilat fillimisht vënë re heshtjen dhe pastaj veprojnë mbi të.
Këto cilësime nuk janë as të këmbyeshme midis protokolleve. Rregulli i palës së vdekur i IKEv2, kohëmatësi ping i OpenVPN dhe keepalive i WireGuard përgjigjen të njëjtës pyetje me tre sintaksa dhe tre vlera të paracaktuara të ndryshme, prandaj kopjimi i një numri midis tyre është hamendje e veshur si rregullim.
Kur marrëdhënia ka ikur
Nëse pala ndryshon adresë, kredenciali skadon ose skaji i largët riniset, paketat e vogla nuk janë riparimi. Rilidhja duhet ta rindërtojë gjendjen : të marrë një adresë, të riinstalojë rrugët, të rinegociojë çelësat dhe në disa vendosje të riautentifikojë një përdorues.
Klientët që rilidhen pa mbikëqyrje mbajnë një certifikatë ose një sekret të ruajtur. Një klient që do të pyeste një njeri dështon pikërisht kur askush nuk është i pranishëm, dhe ky është skenari ku rilidhja kishte rëndësi. Është një vendim dizajni i marrë muaj më parë, jo një cilësim që mund ta ndryshosh gjatë një ndërprerjeje.
Çfarë nuk provon asnjëra
Një tunel mund të jetë i rilidhur, me çelësa dhe rrugë, ndërsa shërbimi pas tij është jashtë funksionit, dhe një keepalive mund ta mbajë një hartëzim të hapur për një sesion serveri i të cilit ka munguar prej orësh. Të dy mekanizmat mund të raportojnë sukses ndërsa ajo që ju intereson vërtet nuk është e disponueshme.
Prandaj testi përfundon me një kërkesë të vërtetë. Dërgo diçka përmes tunelit pas intervalit që ju intereson, pastaj provoko veçmas dështimin për të cilin ke projektuar: një periudhë papunësie për rastin e hartëzimit, një rinisje ose një ndryshim adrese për rastin e rilidhjes.
Bllokimi i trafikut të drejtpërdrejtë është vendim më vete
Një cikël rilidhjeje mund të jetë plotësisht i shëndetshëm ndërsa një aplikacion përdor në heshtje rrugën e zakonshme, dhe ky është rrjedhje, jo dështim. Nëse kërkesa është që asgjë të mos dalë jashtë tunelit, thuaje këtë shprehimisht në konfigurimin e klientit dhe vërtetoje duke e ulur tunelin dhe duke parë çfarë lidhet ende. Asnjëra mekanizëm nuk e nënkupton atë sjellje dhe asnjë disiplinë ripërpjekjesh nuk e vendos atë.
Shëno cili mekanizëm u ekzekutua dhe nëse një kërkesë e re pati sukses pas tij. Këto dy fakte janë ato që i duhen inxhinierit të ardhshëm, dhe asnjëra nuk shihet në një ikonë statusi. Një rresht log që thotë se klienti u rilidh nuk është i njëjtë me një kërkesë që funksionoi.
Shkruaj politikën, jo vetëm numrin
Vendos çiftin në një fjali: intervali i papunësisë, pragu i gjallërisë, çfarë shkakton një rindërtim , dhe çfarë bën klienti ndërsa riprovoi. Pa atë fjali, çdo incident i ardhshëm rihap të njëjtin debat nëse keepalive është shumë i shkurtër apo rilidhja shumë e ngadaltë.
Shënimet e WireGuard për kufizimet janë një kujtesë e dobishme se keepalive është një zgjidhje anashkaluese për kutitë e ndërmjetme dhe jo një dizajn i përgjithshëm gjallërie. Lexo atë kufizim përpara se të rritësh frekuencën si përgjigje ndaj një problemi që nuk mund ta zgjidhë.