OpenVPN taqa’ wara tiġdid DHCP: iżżomm ir-rotta tal-punt aħħari
Tiġdid DHCP jista’ jħalli l-punt aħħari tat-tunnel fuq gateway qadim, u r-rotot nofs default jibilgħu t-tunnel. Sejjaħ min jippossjedi dik ir-rotta, mhux il-metrika.
It-tunnel jikkonnettja, imbagħad tiġdid tal-kirja fuq il-ħolqa tal-aċċess joqtolha, u l-log jitfa’ t-tort fuq timeout minflok rotta. Xejn fil-konfigurazzjoni tal-VPN ma nbidel, u dan huwa l-ħjiel: xi ħaġa barra minnu nbidlet. Avveniment DHCP kiteb mill-ġdid l-indirizz jew il-gateway, u r-rotta tal-host li żammet il-punt aħħari tat-tunnel aċċessibbli issa tindika lejn hop li jmiss li m’għadux jeżisti. Din hija problema ta’ proprjetà qabel ma tkun problema ta’ routing.
Qabbel is-sintomu mar-rotot nofs default
B’redirect-gateway def1, OpenVPN jinstalla 0.0.0.0/1 u 128.0.0.0/1 minflok ma jissostitwixxi r-rotta default. Flimkien dawk it-tnejn ikopru l-ispazju kollu tal-indirizzi, u jegħlbu 0.0.0.0/0 biss bil-tul tal-prefiss. Għalhekk kull destinazzjoni mingħajr qbil aktar speċifiku tidħol fit-tunnel.
Il-punt aħħari jeħtieġ eċċezzjoni. OpenVPN iżid rotta tal-host lejn l-indirizz tas-server permezz tal-gateway tal-aċċess oriġinali qabel ma jidħlu n-nofs defaults, sabiex il-pakketti inkapsulati jkunu jistgħu joħorġu. Meta dik l-eċċezzjoni tisparixxi, jew iżżomm hop li jmiss li m’għadux jeżisti, il-pakketti ta’ barra tat-tunnel stess jaqblu ma’ nofs default u jintbagħtu lura fit-tunnel. Ir-riżultat huwa konnessjoni li tmut fil-keepalive jew handshake li jmiss, mingħajr xejn fil-log li jixbah żball ta’ routing.
Ikkonferma l-forma tat-tabella qabel ma tmiss xejn ieħor. ip route show għandu jelenka ż-żewġ nofsijiet flimkien ma’ rotta tal-host għall-indirizz tas-server; meta r-rotta tal-host tkun nieqsa, il-bqija tal-investigazzjoni għandha punt tat-tluq ovvju.
Għaliex in-nofs defaults jirbħu mingħajr bidla fil-metrika
Metrika aktar baxxa ma tegħlebx prefiss itwal. Ir-rotot /1 jirbħu għax il-kernel jaqbel l-ewwel mar-rotta l-aktar speċifika, għalhekk jogħla l-metrika fuq ir-rotta default ma jbiddel xejn dwar fejn tmur it-traffiku lejn it-tunnel. Li tiġri wara l-metriki huwa l-iżball l-aktar komuni f’din id-dijanjosi.
Iċċekkja l-għażla b’ip route get 203.0.113.10, billi tissostitwixxi l-indirizz veru tas-server. It-tweġiba ssemmi l-interface u l-hop li jmiss li l-kernel fil-fatt juża, li hija aktar informattiva milli taqra tabella u tirraġuna dwarha.
Esegwi dak il-kmand qabel ma jibda t-tunnel, waqt li jkun ħaj, u wara l-avveniment tal-kirja. Tliet tweġibiet minn kmand wieħed, u l-punt tad-diverġenza jsir viżibbli.
Ħu tliet snapshots, mhux waħda
Iġbor l-indirizz tal-aċċess, il-gateway tal-aċċess, id-destinazzjoni tal-punt aħħari, ir-rotta magħżula u kull regola ta’ politika fi tliet mumenti: wara li l-ħolqa tal-aċċess tiġi konfigurata, wara li l-VPN jikkonnettja, u wara l-avveniment tal-kirja jew tal-operatur. Kull snapshot hija ħafna kmandi, u għandhom sens biss flimkien. Snapshot waħda wara l-falliment tirrekordja l-istat u mhux it-tranżizzjoni. Ikteb il-kmandi fi skript żgħir sabiex kull snapshot jittieħed bl-istess mod.
Żomm is-snapshots f’faċċata waħda bi stampi tal-ħin, għax il-mistoqsija interessanti aktar tard hija l-ordni. L-avveniment DHCP wasal qabel jew wara li OpenVPN ġedded ir-rotta tiegħu? It-tweġiba tiddetermina min għandu jsewwiha. Stampa tal-ħin minn arloġġ żbaljat hija agħar minn ebda waħda, għalhekk ħuha mill-host li jippossjedi t-tabella tar-routing.
Meta l-punt aħħari huwa kkonfigurat bħala isem minflok indirizz, issolvih ukoll f’kull snapshot. Bidla fid-DNS fuq il-ħolqa tal-aċċess tista’ tmexxi l-punt aħħari mingħajr ma tmiss ebda rotta.
Iddeċiedi liema komponent iġedded l-eċċezzjoni
Fuq sistema dhcpcd, il-hooks jaħdmu mid-direttorju tal-hooks u mill-hook tal-ħruġ, u l-mod tal-maniġer ivarja fl-ambitu mill-mod għal kull interface. Tkun xi tkun li tagħmel il-hook, trid tkun idempotenti, għax it-tiġdid jista’ jasal f’daqqiet.
Il-proprjetarju affidabbli huwa l-integrazzjoni li diġà taf iż-żewġ naħat: maniġer tan-netwerk li jamministra l-konnessjoni VPN, jew unit ordnat wara li titla’ l-ħolqa tal-aċċess. Rotta statika miżjuda minn hook taħdem sa tibdil tal-gateway li jmiss, imbagħad tfalli bl-istess mod eżatt. Jekk tuża hook xorta waħda, ħallih jaqra l-gateway attwali fil-ħin tal-eżekuzzjoni minflok ma jikkodifika b’mod iebes dak li rajt illum.
Irreġistra l-proprjetarju fil-konfigurazzjoni. Il-persuna li jmiss li tiddenubja konnessjoni mill-ġdid trid tkun taf li huwa hook, mhux il-VPN, li huwa responsabbli għar-rotta tal-eċċezzjoni.
Ittestja ċ-ċiklu tal-ħajja, mhux biss il-konnessjoni mill-ġdid
Ġiegħel tiġdid b’dhcpcd -n eth0 jew billi teħles u terġa’ tieħu l-kirja, imbagħad iċċekkja mill-ġdid ip route get għall-punt aħħari. Agħmilha darbtejn, għax it-tieni pass jaqbad hooks li jżidu rotot doppji. Imbagħad erġa’ ibda, għax il-persistenza hija proprjetà differenti mill-korrettezza.
Tunnel li jgħaddi minn tiġdid u erġa’ ibda għandu proprjetarju u eċċezzjoni li taħdem. Dak li jgħaddi biss minn restart manwali m’għandux l-ebda waħda, u se jfalli fl-avveniment li jmiss li ma tistax tippjana.