Heimanets-VPN hefur ekkert að gera þegar fartölvan er þegar á því neti. Freistandi flýtileiðin er undirbúningsskipun sem hættir með núll-ólíkum kóða; það lætur eininguna mistakast og lætur hvert stjórnborð líta út fyrir að vera brotið. systemd hefur tilskipun fyrir nákvæmlega þessa tegund ákvörðunar, og hún aðgreinir viljandi sleppingu frá raunverulegri bilun. Að gera þetta rétt snýst að mestu um að skrifa niður hvað hver útgangskóði þýðir.

Hvers vegna mistakast forsenda er rangt form

ExecStartPre lítur á útgang sem er ekki núll sem ræsingarbilun, sem er rétt fyrir skipun sem undirbýr þjónustuna. Að nota hana sem skilyrði gerir stefnuákvörðun ógreinanlega frá brotinni ósjálfstæði. ExecCondition er til svo eining geti neitað að ræsast án þess að vera merkt sem mistekin.

Þessi aðgreining skiptir máli klukkan þrjú að nóttu, þegar enginn vill flokka rauða einingu sem hagaði sér eins og hönnuð var. Mistekin eining felur líka raunverulegar bilanir meðal viljandi bilananna.

Skrifaðu útgangskóðasamninginn fyrst

Skrifaðu samninginn fyrir skriftuna. Útgangur núll þýðir halda áfram, útgangur einn þýðir sleppa restinni af ræsiskipunum og útgangur 255 þýðir að skilyrðið sjálft gat ekki keyrt. Kóðar milli tveggja og 254 þýða venjulega líka sleppa, sem er auðvelt að gleyma þegar hjálparinn skilar handahófskenndum villukóða. Drop-in hér að neðan tengir hjálparann við raunverulegt einingarheiti.

[Service]
ExecCondition=/usr/local/libexec/should-start-home-vpn

Athugaðu virku eininguna fyrir erfdum SuccessExitStatus- eða stop-post-stillingum áður en þú gerir ráð fyrir sjálfgefinni merkingu. Prófaðu síðan hverja af þremur niðurstöðunum viljandi.

Netvísbending er ekki sönnun um staðsetningu

Aðgengilegt beinaborðsnetfang eða þekkt MAC getur gefið vísbendingu um rétta netið, og hvorugt sannar það. Annað net getur endurnýtt sama netfang, ARP-gögn geta verið gömul og auðkenni er hægt að herma eftir. Líttu á könnunina sem hagræðingu í samræmi við stefnu, ekki sem niðurstöðu auðkenningar.

Ákveddu fyrirfram hvað óvissa þýðir. Að ræsa VPN þegar þú ert ekki viss er öruggt fyrir biðlara sem myndi einfaldlega mistakast að tengjast; að sleppa því þegar þú ert ekki viss er það ekki. Gerðu könnunina takmarkaða og lestu virka tengið í stað þess að gera ráð fyrir því fyrsta á listanum. Könnun sem hangir er verri en sú sem svarar nei, því einingin bíður hennar.

Skráðu þessar forsendur við hlið einingarskrárinnar svo næsta manneskja viti hvað hjálparinn telur. Athugasemd efst í skriftunni er ódýrasti staðurinn til að geyma þær.

Höndlaðu flutninginn milli neta

Skilyrðið keyrir þegar þjónustan ræsist og er ekki endurmetið síðar. Sletta eining heldur áfram að vera sleppt eftir að fartölvan flyst á kaffihús, og gangandi göng heldur áfram að vera uppi eftir að fartölvan kemur heim. Tengdu lífsferil netbreytingar við ræsingar- og stöðvunarákvörðunina með sérstöku fyrirkomulagi.

systemctl cat home-vpn.service

Prófaðu fjögur tilvik: ræsingu heima, ræsingu fjarri, könnun sem getur ekki keyrt og flutning milli neta á meðan einingin er virk. Haltu ástæðu sleppingar sýnilegri í dagbókinni svo viljandi ákvörðun líti aldrei út eins og auðkenningarbilun. Þjónustuviðmiðið skjalfestir útgangsmerkingu og lágmarksútgáfu.

Tengdir greinar