VPN на Mac-у заглављен на „Искључује се“: шта заиста ради
Искључивање је прелаз, а не заустављен тунел. Проверите који део поседује расклапање, прочитајте руте и DNS и избегните масовно убијање процеса.
„Искључује се“ је стање које клијент пријављује док расклапа тунел, а не пресуда да је саобраћај стао. На Mac-у то расклапање тече као кратак низ, и ознака се мења тек пошто део који поседује везу одговори. Када неки корак чека помоћника, додатак или одлуку политике, ознака може остати ту и после нестанка интерфејса, или тунел може наставити да прослеђује док га мени још приказује. Третирајте текст као „расклапање у току, исход непознат“ и утврдите која је половина тачна.
Два квара изгледају исто са траке менија и траже супротне поступке. У једном тунел још носи пакете и само је приказ застарео. У другом тунела више нема, али засебна политика држи саобраћај блокиран, што је често намерно. Руте и стање DNS-а их раздвајају брже од било које радње у менију.
Шта ознака прати
VPN клијент држи малу машину стања, а трака менија је њена пројекција. За везу којом управља сам macOS, та машина се налази у системском оквиру VPN-а. За тунел којим управља апликација, она се налази у апликацији и њеном привилегованом помоћнику. Последњи корак заустављања није затварање сокета. То је ослобађање онога што је тунел чинило функционалним: интерфејса utun, рута које су показивале на њега, записа разрешивача које је клијент убацио и сваког правила заштитног зида или политике које је блокирало саобраћај док је веза била активна.
Ови кораци су одвојени, па заустављање може да се заглави на било ком од њих. Помоћник који престане да одговара, рута на коју полаже право и други интерфејс, или запис разрешивача који поседује други профил могу оставити клијента да чека. Ознака је извештај о сопственом напретку клијента, што је чини меродавном за намеру и непоузданом за мрежу.
Пронађите део који поседује везу
У изворним конфигурацијама, scutil --nc list исписује услуге које систем познаје и њихов статус, а scutil --nc status "Work VPN" даје појединости за једну услугу. Тунел који држи апликација треће стране можда се уопште неће појавити на том списку, па празан резултат није доказ да ништа није повезано.
Када профил припада апликацији, поуздајте се у њен приказ стања и документовану контролу „Искључи“. Затварање прозора није захтев за заустављање ако позадински помоћник поседује тунел; икона нестаје, а помоћник одржава интерфејс живим. Apple-ова референца за подешавања VPN-а обухвата изворне контроле и одакле долазе управљана подешавања.
Прочитајте интерфејсе, руте и DNS
Три провере одговарају на већину питања без дирања везе. Важно је тумачити их заједно, јер свака сама за себе обмањује.
scutil --nc list
netstat -rn -f inet | head -20
ifconfig | grep -A 3 '^utun'
scutil --dns | head -30
- интерфејс utun постоји, кроз њега иде подразумевана или подељена рута, разрешивач показује на провајдера: тунел је још подигнут и ознака је застарела.
- нема utun, обична подразумевана рута, DNS из DHCP-а, нема интернета: политика која блокира при искључењу ради свој посао.
- нема utun, нема руте, разрешивач још показује на провајдера: расклапање се зауставило на пола пута, а DNS је остатак који треба очистити.
Затим пошаљите један захтев унутрашњем домаћину који би требало да одговори само кроз тунел и један јавном домаћину. Достижност раздваја политику од преосталог стања без претварања провере у вежбу мерења. Прво сачувајте даљински рад ако пут још одговара, и обезбедите други пут улаза пре него што промените мрежу на машини којом управљате на даљину.
Зашто масовно убијање и брисање профила обмањују
Имена процеса као што су pppd, racoon и configd припадају одређеним имплементацијама. Њихово убијање може утицати на друге везе, оставља руте и utun интерфејсе и не даје вам запис о томе на ком кораку је заглављено. Ни старо име процеса није доказ да поседује тренутни профил.
Брисање и поновно стварање профила већа је промена од чишћења заглављеног прелаза. Може одбацити управљана подешавања и локални идентитетски материјал без објашњења шта није успело, а на надгледаном Mac-у може једноставно бити враћен. Задржите уклањање за заиста застарелу конфигурацију и уместо тога дијагностикујте прелаз.
Низ за заустављање који оставља траг
Редослед испод оставља сопствене контроле везе одговорним и ствара запис ако се заглављивање врати. Такође вас штити од тога да проблем приказа претворите у мрежну промену.
- Сачувајте даљински рад и потврдите да можете да дођете до Mac-а на други начин ако је даљински.
- Забележите име клијента, верзију и профил. Захватите кратак прозор помоћу
log show --last 5m --predicate 'subsystem == "com.apple.networkextension"'; старије верзије чувају мање историје, па то покрените убрзо после заглављивања. - Користите документовану контролу „Искључи“, сачекајте, па поновите провере интерфејса и рута.
- Ако је ознака застарела, али је тунел спуштен, оставите је и допустите клијенту да се освежи уместо да присиљавате процесе.
- Ако је расклапање заиста заглављено, поново покрените клијент, па испланирајте поновно покретање Mac-а када је рад сачуван. Управљане машине захтевају процедуру администратора.
После опоравка потврдите да су се обична подразумевана рута и DHCP разрешивач вратили и да је блокирани саобраћај или обновљен или намерно још блокиран. Забележите профил и верзију клијента са симптомом, да би се следећи случај започео доказима, а не претпоставком са траке менија.