VPN na Macu obtiči na »Preklapljanje«: kaj v resnici teče
Preklapljanje je prehod, ne ustavljen tunel. Preverite, katera komponenta ima razgradnjo, preberite poti in DNS ter se izognite množičnemu ubijanju procesov.
»Preklapljanje« je stanje, ki ga odjemalec sporoči med razgradnjo tunela, ne sodba, da se je promet ustavil. Na Macu ta razgradnja poteka kot kratko zaporedje in oznaka se spremeni šele, ko se komponenta, ki ima povezavo, oglasi nazaj. Ko en korak čaka pomočnika, vtičnik ali odločitev politike, lahko oznaka ostane tam, potem ko vmesnika ni več, ali pa tunel še naprej posreduje, medtem ko ga meni še prikazuje. Besedilo obravnavajte kot »razgradnja poteka, izid neznan« in ugotovite, katera polovica drži.
Dve napaki sta z menijske vrstice videti enaki in zahtevata nasprotna odziva. Pri eni tunel še nosi pakete in zastarela je le prikaz. Pri drugi tunela ni več, a ločena politika drži promet blokiran, kar je pogosto namerno. Poti in stanje DNS ju ločita hitreje kot kakršno koli delo z menijem.
Čemu sledi oznaka
Odjemalec VPN ima majhen stroj stanj, menijska vrstica pa je njegova projekcija. Pri povezavi, ki jo upravlja sam macOS, ta stroj sedi v sistemskem okvirju VPN. Pri tunelu, ki ga upravlja aplikacija, sedi v aplikaciji in njenem privilegiranem pomočniku. Zadnji korak ustavitve ni zapiranje vtičnice. Je sprostitev tega, kar je tunel držalo pri delovanju: vmesnika utun, poti, ki so kazale nanj, vnosov razreševalnika, ki jih je vstavil odjemalec, in vsakega pravila požarnega zidu ali politike, ki je blokirala promet, dokler je bila povezava živa.
Ti koraki so ločeni, zato lahko ustavitev obtiči na katerem koli od njih. Pomočnik, ki preneha odgovarjati, pot, ki jo zahteva tudi drugi vmesnik, ali vnos razreševalnika, ki ga ima drug profil, lahko pustijo odjemalca v čakanju. Oznaka je poročilo o lastnem napredku odjemalca, zato je verodostojna glede namere in nezanesljiva glede omrežja.
Poiščite komponento, ki ima povezavo
Pri izvornih konfiguracijah scutil --nc list izpiše storitve, ki jih sistem pozna, in njihovo stanje, scutil --nc status "Work VPN" pa poda podrobnosti ene storitve. Tunel, ki ga drži aplikacija tretjega ponudnika, se na tem seznamu morda sploh ne pojavi, zato prazen izid ni dokaz, da ni nič povezano.
Ko profil pripada aplikaciji, se zanesite na njen pogled stanja in dokumentirani gumb »Prekini«. Zapiranje okna ni zahteva za ustavitev, če tunel drži pomočnik v ozadju; ikona izgine, pomočnik pa ohranja vmesnik živ. Appleov pregled nastavitev VPN pokriva izvorne kontrolnike in izvor upravljanih nastavitev.
Preberite vmesnike, poti in DNS
Trije pregledi odgovorijo na večino vprašanja, ne da bi se dotaknili povezave. Pomembno jih je razlagati skupaj, saj vsak sam zase zavaja.
scutil --nc list
netstat -rn -f inet | head -20
ifconfig | grep -A 3 '^utun'
scutil --dns | head -30
- vmesnik utun je prisoten, skozenj gre privzeta ali razdeljena pot, razreševalnik kaže na ponudnika: tunel je še gor in oznaka je zastarela.
- ni utun, običajna privzeta pot, DNS iz DHCP, ni interneta: politika, ki blokira ob prekinitvi, opravlja svoje delo.
- ni utun, ni poti, razreševalnik še kaže na ponudnika: razgradnja se je ustavila na pol poti in DNS je ostanek, ki ga je treba počistiti.
Nato pošljite eno zahtevo notranjemu gostitelju, ki bi moral odgovarjati le skozi tunel, in eno javnemu gostitelju. Dosegljivost loči politiko od preostalega stanja, ne da bi pregled spremenila v merilno vajo. Najprej shranite oddaljeno delo, če pot še odgovarja, in zagotovite drugo pot vstopa, preden spremenite omrežje na stroju, ki ga upravljate na daljavo.
Zakaj množično ubijanje in brisanje profila zavajata
Imena procesov, kot so pppd, racoon in configd, pripadajo določenim izvedbam. Njihovo ubijanje lahko prizadene druge povezave, pušča poti in vmesnike utun ter vam ne da nobenega zapisa o tem, kateri korak je obtičal. Tudi staro ime procesa ni dokaz, da ima trenutni profil.
Brisanje in ponovno ustvarjanje profila je večja sprememba kot čiščenje obtičanega prehoda. Lahko zavrže upravljane nastavitve in krajevno identitetno gradivo, ne da bi pojasnilo, kaj je spodletelo, na nadzorovanem Macu pa je lahko preprosto obnovljen. Odstranjevanje prihranite za res zastarelo konfiguracijo in namesto tega diagnosticirajte prehod.
Zaporedje ustavitve, ki pusti sled
Spodnji vrstni red pušča lastne kontrolnike povezave odgovorne in ustvari zapis, če se obtičanje vrne. Prav tako vas zadrži pred tem, da bi težavo prikaza spremenili v omrežno spremembo.
- Shranite oddaljeno delo in potrdite, da do Maca pridete drugače, če je na daljavo.
- Zabeležite ime odjemalca, različico in profil. Zajemite kratko okno z
log show --last 5m --predicate 'subsystem == "com.apple.networkextension"'; starejše izdaje hranijo manj zgodovine, zato to zaženite kmalu po obtičanju. - Uporabite dokumentirani gumb »Prekini«, počakajte in nato ponovite pregleda vmesnika in poti.
- Če je oznaka zastarela, a je tunel spuščen, jo pustite in pustite odjemalcu, da se osveži, namesto da bi silili procese.
- Če je razgradnja res obtičala, znova zaženite odjemalca in nato načrtujte ponovni zagon Maca, ko je delo shranjeno. Upravljani stroji potrebujejo postopek skrbnika.
Po obnovitvi potrdite, da sta običajna privzeta pot in razreševalnik DHCP nazaj in da je blokirani promet bodisi obnovljen bodisi namerno še vedno blokiran. Zabeležite profil in različico odjemalca skupaj s simptomom, da se bo naslednji pojav začel z dokazi in ne z ugibanjem v menijski vrstici.