Varanlegar leiðir fyrir Mac-VPN: networksetup eða tengihook?
Leið sem slegin er inn eftir hverja endurtengingu er ekki stefna. Ákveðið hvort forskeytið tilheyrir VPN-þjónustunni, tímabundnu prófi eða hook fyrir vistföng sem eru aðeins þekkt eftir samningaviðræður.
Leið sem slegin er inn eftir hverja tengingu leysir andartakið en ekki vikuna. Á macOS er varanlega valið venjulega forskeyti sem geymt er með VPN-þjónustunni, því þjónustan setur það upp aftur við hverja tengingu og fjarlægir það þegar þjónustan er niðri. Valkostirnir eru tímabundið route add til prófunar og tengihook fyrir vistföng sem eru aðeins þekkt eftir samningaviðræður.
Ákveðið hvort leiðin tilheyrir þjónustunni eða setunni
Spyrjið hvað forskeytið er háð. Ef það er fast einkanet bak við innfædda VPN-þjónustu tilheyrir leiðin þeirri þjónustu. Ef það er háð jafningjavistfangi sem breytist við hverja tengingu getur hook eða stöðustýrt verk verið betri eigandi. Ef þið eruð aðeins að athuga slóð fyrir næstu fimm mínútur nægir tímabundin leið.
Þjónustubundna leiðin hefur hreinasta lífsferilinn. Hún birtist með þjónustunni og hverfur þegar þjónustan er ekki tengd, þannig að hún getur ekki lifað lengur en göngin sem hún bendir á. Þessi eiginleiki er meira virði en þægindin við eins línu skipun.
Setubundin leið tilheyrir viðmótinu og sú tala breytist án fyrirvara. Endurtenging getur gefið göngunum annað utun-heiti en fyrri setan notaði, sem gerir harðkóðaða skipun að leið sem bendir hvergi eða, verra, á önnur göng.
Lesið núverandi stöðu leiðar og þjónustu
Byrjið á heitunum sem kerfið notar í raun. Þjónustuheitið í nettengingum er auðkennið fyrir skipanirnar hér að neðan og núverandi leiðartafla sýnir hvað tengdi biðlarinn setti upp. Lesið bæði meðan göngin eru uppi.
scutil --nc list
networksetup -listnetworkserviceorder
netstat -rn | head -30
route get 10.20.5.5
Sú leit sýnir hvaða gátt og viðmót kjarninn myndi velja fyrir þetta vistfang á þessari stundu. Ef hann velur nú þegar göngin er forskeytið þekið og ný leið yrði óþörf. Ef hann velur staðbundna beininn vantar göngunum það forskeyti.
Takið eftir jafningjavistfanginu meðan tengt er. Það verður gáttargildið í þjónustubundnu leiðinni og er venjulega áfangastaðurinn sem sýndur er fyrir sjálfgefna leið ganganna í netstat -rn.
Geymið forskeytið með networksetup
Tólið networksetup tengir viðbótarleiðir við nettengingu. Fyrir þjónustu að nafni OfficeVPN og einkaforskeyti sem næst gegnum jafningja ganganna er formið:
sudo networksetup -setadditionalroutes OfficeVPN 10.20.0.0 255.255.0.0 10.8.0.6
networksetup -getadditionalroutes OfficeVPN
Hver þrenning eftir þjónustuheitið gefur áfangastað, netgrímu hans og jafningja ganganna sem gátt. Eitt kall getur borið nokkur forskeyti og tómt kall hreinsar geymda listann. Lesarinn er sannprófunarskrefið; ef listinn er tómur var stillingin ekki beitt á þjónustuna sem þið haldið.
Gáttin verður að vera jafningi ganganna, ekki líkamlegi beininn. Leið sem nefnir staðbundnu gáttina sendir einkaforskeytið út um líkamlega viðmótið, sem er upprunalega bilunin með viðbótarskrefum. Úreltur jafningi er algengasta ástæðan fyrir því að rétt útlitandi leið ber aldrei umferð. Lesið jafningjann aftur úr tengdri stöðu í stað þess að afrita vistfang úr gömlum minnispunkti.
Notið route add aðeins fyrir próf
Bein leið er gagnleg til að sanna að forskeyti virki áður en þið gerið það varanlegt. Viðmótsformið forðast gáttarleit:
sudo route -n add -net 10.20.0.0/16 -interface utun4
Leiðin hverfur við næstu endurtengingu og er háð viðmótsnúmerinu sem er til í dag. Það gerir hana að greiningu, ekki uppsetningu. Ef prófið virkar og þjónustubundna leiðin ekki, berið fyrst saman gáttargildið; það er reiturinn sem er oftast rangur.
Varið ykkur á ráðum sem skipta út sjálfgefinni leið VPN til að þvinga skiptingu. Biðlari sem þvingar full göng getur sett leiðir sínar upp aftur eftir endurtengingu eða stefnuhressingu, svo handvirk breyting er afturkölluð hljóðlaust. Nokkur einkaforskeyti er vandamál í leiðastýringu; að halda allri netumferð staðbundinni gegn stefnu um full göng er ákvörðun á þjóninum.
Veljið hook aðeins þegar samið er um vistfangið
Fyrir PPP-tengda hlekki eins og L2TP, keyrir macOS /etc/ppp/ip-up þegar hlekkurinn er kominn á. Skriftan fær viðmótsheitið og samið staðbundið og fjarlægt vistfang, svo hún getur bætt við leið sem er háð jafningjanum sem þjónninn úthlutaði. Það er einmitt tilfellið sem föst þjónustuleið getur ekki lýst.
IKEv2 og biðlarar framleiðenda nota kannski ekki þessa PPP-slóð yfirhöfuð, sem þýðir að skriftan getur þagað alla setuna. Þegar það gerist er launchd-verk sem spyr um scutil --nc status og bregst við stöðubreytingu jafngild aðferð, með litlum töfum.
Hvaða hook sem þið notið, gerið það idempotent og látið það fjarlægja aðeins leiðir sem það bjó sjálft til. Skriftan sem eyðir hverri leið sem nefnir göngin mun að lokum eyða leiðinni sem heldur VPN-þjóninum aðgengilegum og tengingin fer niður um leið og það tekst.
Ljúkið á að athuga einkaáfangastaðinn, venjulega vafrun og endurtengingar- eða svefnlotu. Skoðið svo scutil --dns, því nafnaupplausn er sér stefna og virk leið sannar ekki að einkanöfnin leysist.