Faka umshini ekulaleni, uwuvuse, bese uhlola izinto ezintathu ngalokhu kulandelana ngaphambi kokuthinta noma yikuphi ukulungiselela: ukuthi i-tun0 isekhona yini, ukuthi indlela eya kukheli wangaphakathi isayikhetha yini, nokuthi iseva isayibala yini le peer. Idivayisi ephuma ekulaleni ngesikhathi indlela ikhomba kwenye indawo iyinsalela, hhayi umhubhe. Uma indlela ilungile futhi ithrafikhi isifa noma kunjalo, iphutha lisezansi komhubhe futhi ukuqala kabusha iklayenti ngeke kukushintshe. Ukuzenzakalisa kokuqala kabusha kunengqondo kuphela ngemva kokuba ukuhlola ngesandla kukhombisile ukuthi iyiphi kulezi zimo ezintathu onawo.

ip -br address show tun0
ip route get 10.20.0.10
journalctl -u openvpn-client@office -b --no-pager | tail -30

Phinda ukukhala ngaphambi kokukwenza ngokuzenzakalela

Ukulala kuqeda isikhathi esibethelwe kaningi kunokukhipha idivayisi. Ukugeleza kwe-UDP obekugcina umhubhe uphila kuyama, iseva ingase ilahle i-peer, futhi iklayenti liphatha noma liqaphele bese lixhuma kabusha noma ligcine i-interface engenalutho ngemuva kwayo. Ukuhlola i-interface kukodwa akufakazi okuningi, ngoba idivayisi endala ibukeka ifana ncamashi nesisebenzayo kuze kube yilapho amaphakethe kufanele adlule kuyo. Gijimisa ukusesha kwendlela kanye nesicelo sangempela esisodwa ngomhubhe, bese ufunda ijenele eduze kwesikhathi sokukhala.

Uma iklayenti libuya ngokwalo, i-hook yengeza umsindo esikhundleni sokuthembeka. Uma lingalulami neze, ukuzenzakalisa iyisixazululo esithembekile.

I-hook yokulala ye-systemd ihlala kuphi ngempela

Imihlahlandlela eminingi endala ikhomba ku-/etc/pm/sleep.d, okuyisikhombisi esiphethwe yi-pm-utils futhi ukulala okusekelwe ku-systemd akukaze kubonane naso. I-systemd ifunda ama-hook ku-/usr/lib/systemd/system-sleep/ naku-/etc/systemd/system-sleep/, idlulisa isigaba kuqala bese umsebenzi, ngakho i-pre ne-post yiwona kuphela amanani i-hook ehlukanisa kuwo. Gcina ikhophi yendawo ngaphansi kwe-/etc esikhundleni sokuhlela ifayela eliphakishiwe, futhi khumbula ukuthi iskripthi sigijima njenge-root phakathi nenguquko, ngakho kufanele sibuye ngokushesha.

#!/bin/sh
case "$1" in
  post)
    systemctl --no-block try-restart [email protected]
    ;;
esac
exit 0

try-restart ithinta iyunithi kuphela uma isivele isebenza, ngakho umhubhe owawucisha ngamabomu uhlala ucishiwe phakathi nokukhala. I---no-block ivimbela i-hook ukuthi ilinde ngesikhathi iklayenti lixoxisana, okubalulekile uma inethiwekhi ingakanyuki. Ndawonye lezi zimpawu zimbili zisho i-hook ehluleka buthule esikhundleni sokubamba lonke ukulandelana kokukhala. Uma iyunithi isivele imisiwe akukho neze okwenzekayo, futhi yilowo mphumela owufunayo lapho.

Buyisela insizakalo, shiya i-tun0 iyodwa

Ukwehlisa i-tun0 ngesandla kushiya i-daemon igada i-interface engasayona, futhi ushintsho olulandelayo lwesimo lukhiqiza amaphutha adidayo. Khomba insizakalo noma iphrofayili yayo yokuxhumana esikhundleni se-interface; hlola igama eliqondile leyunithi kuqala, ngoba amaphakethe okusabalalisa, i-OpenVPN 3 ne-NetworkManager wonke akhetha ahlukile. Iphrofayili ye-NetworkManager ibuyela lapho lokho kuxhumana kujikiswa, ngakho iyunithi ye-systemd ayiyona into eqondiwe lapho. Noma yimuphi umshini, kufanele kube isenzo esifanayo naleyo oyiqinisekise ngesandla.

Ukuqala kabusha kufaka futhi imizila iklayenti eliyiphushile ngesikhathi lixhuma. Iningi lokukhala likufuna lokho. Umshini lapho wengeze khona imizila yakho awukufuni, ngakho hlola leyo futhi esikhundleni sokucabanga ukuthi ukubuyisela kuyibuyisele, futhi uyibhale lapho ukukhala okulandelayo kungayithola khona.

Bhekana nesikhathi ongakwazi ukusilawula

Ukuxhumana okungenantambo ne-DHCP kuvame ukuqeda ngemva kokuba i-hook isigijimile, ngakho ukuqala kabusha kungase kuhluleke ngesikhathi kungekho ndlela eya kuseva. Lindani kancane lelo kheli, zama futhi kanye, futhi bhala umphumela.

Ukuxazululwa kwamagama kuwumjaho ohlukile, ngoba isitaki senethiwekhi sedeskithophu singabuyisela i-DNS ngemva kokuba umhubhe usuvele uphakame. Hlola ukusesha ngokwahlukile nge-resolvectl query internal.example esikhundleni sokukucabangela kusukela kumzila osebenzayo. Umhubhe ohambisa kahle futhi ongaxazululi lutho yinkinga ye-DNS, hhayi inkinga ye-hook.

Gcina isinqumo se-hook sibonakala ngokubhala isigaba, igama leyunithi nomphumela kujenele. Bhala emibhalweni yomshini ukuthi yiluphi uhlelo lokukhala olugijimile, ukuze ukubuyisela okusebenzayo kwehlukaniswe nokunenhlanhla. Khetha isenzo esiphazamisa kancane esibuyisela insizakalo, futhi vumela iklayenti elilulama ngokwalo ukuthi lenze lokho. Ukuqala kabusha okuphelele kulahla izikhathi eziqhubekayo, okuyindleko yangempela ku-laptop evuka izikhathi eziningana ngosuku.

Izihloko ezihlobene