Du skriptoj batalantaj pri la sama itinero estas la kutima formo de Linux-VPN-problemo, kiun oni registras kiel itineran cimon. Unu komponanto kreas la tunelan aparaton, alia aldonas implicitan itineron, tria reskribas la agordon de la solvilo, kaj kvara reŝargas la regulojn de la fajrmuro. Ĉiu el ili povas malfari la laboron de alia, kaj la venkinto estas simple tiu, kiu ruliĝis laste. La demando inda je respondo ne estas, kiun pakaĵon instali, sed kiu komponanto rajtas pri ĉiu peco de stato.

Skribu tiun mapon unufoje, kaj plej multaj rekonektaj malsukcesoj ĉesas esti misteraj. Kvar objektoj gravas: la aparato kaj ĝiaj adresoj, la itineroj kaj politikaj reguloj, la DNS-agordo kaj la fajrmuro.

La aparato kaj ĝiaj adresoj

Tunela aparato estas kreata aŭ de administranto, kiu konas la profilon, aŭ de demono, kiun iu startigis permane. Ambaŭ aranĝoj funkcias memstare; ilin miksi ne. Se NetworkManager posedas la profilon, lasu ĝin posedi ankaŭ la aparaton, kaj ne startigu OpenVPN procezon sen administrado kontraŭ la sama tunela nomo.

Notu, kiu forigas la aparaton, kiam la seanco finiĝas. Aparato, kiu postvivas sian seanson, estas la plej ofta fonto de eksdataj adresoj kaj de la konfuzo, kiu sekvas.

Itineroj kaj politikaj reguloj

Ĝuste ĉe la itineroj posedaj konfliktoj kaŭzas videblan damaĝon. Kunigadministrilo instalas implicitan itineron por la tunelo plus pli specifan itineron por la fora reto; permane skribita skripto poste aldonas sian propran implicitan itineron kun malsama metriko kaj silente venkas aŭ malvenkas depende de la tempo. Decidu, kiuj eroj estas ligitaj al la konekto, kiuj estas konstanta politiko, kaj kiu komponanto refreŝigas ilin post rekonekto. Poste tenu la aliajn komponantojn ekster tiu tabelo.

Politikaj reguloj meritas la saman klarecon, ĉar regulo montranta al tabelo, kiun neniu plenigas, produktas nigran truon, kiu aspektas ekzakte kiel morta tunelo. Se regulo ekzistas por devigi trafikon ie, la tabelo, kiun ĝi elektas, devas esti prizorgata de la sama posedanto.

DNS ĉiam estas aparta posedanto

Solvila demono ruliĝas kiel propra procezo sub propra identeco, do ĝi ne hazarde heredas la itinerajn decidojn de la tunelo. Kiam la VPN puŝas DNS-servilojn, io devas traduki tion en agordon por ĉiu ligo, kiun la solvilo respektas, kaj io devas forpreni ĝin poste.

La mito ĉi tie estas, ke skribi nomservilon en la profilon ŝanĝas, kien iras la demandoj. Ĝi ŝanĝas, kion oni diras al la solvilo, ne kiun ingon la solvilo uzas supren. Testu per demando plus itinera serĉo anstataŭ fidi la dosieron.

Fajrmura stato, kaj kiu restaŭras ĝin

Fajrmuraj reguloj estas la objekto plej ofte superskribata sur VPN-gastiganto. Administranto povas aldoni NAT- aŭ plusendajn regulojn por ĉiu konekto, dum fajrmura servo ĉe ŝargo reŝargas konservitan regularon kaj forviŝas ilin. Elektu unu aŭtoritaton por politiko kaj faru la alian konsumanto de ĝi, aŭ akceptu, ke restartigo silente ŝanĝas la konduton. Konekto-ligitaj esceptoj apartenas al dosiero, kiun ŝargas la sama posedanto, ne al iptables-komando tajpita dum problemserĉado.

Se reguloj devas postvivi rekonekton, diru tion eksplicite. Se ne, diru ankaŭ tion, ĉar la sekva inĝeniero supozos la pli oportunan respondon.

Vivociklo: ŝargo, rekonekto, malmuntado

Donu al ĉiu el tiuj tri momentoj posedanton. Ĉe ŝargo, decidu, kio preparas la antaŭkondiĉojn kaj en kiu ordo. Ĉe milda restartigo, memoru, ke la aparato povas postvivi dum la seanca stato ne, do validigilo devas ruliĝi anstataŭ kreinto. Ĉe malmuntado, forigu nur tion, kion kreis ĉi tiu konekto, ĉar restarigi ĉiun itineron aŭ malplenigi la tutan fajrmuron ne samas kiel retiri unu tunelon.

Por observado, ip monitor link address route montras kernajn ŝanĝojn dum ili okazas, sed ĝi raportas eventojn anstataŭ intencon: forigita itinero diras nenion pri tio, kiu procezo forigis ĝin. Paru ĝin kun la posedmapo, kaj konfuza malŝalto fariĝas mallonga listo de kandidatoj.

Esceptoj ankaŭ havas koston. Marki tutan aparatan klason kiel neadministrata por eskapi konflikton transdonas tiun staton al neniu, kio estas decido, ne korekto.

Rilataj artikoloj