Mac-ի VPN-ը կախված է «Անջատվում է»-ում. ինչ է իրականում աշխատում
Անջատումը անցում է, ոչ թե կանգնած թունել։ Ստուգեք, թե որ բաղադրիչն է տիրապետում քանդմանը, կարդացեք երթուղիներն ու 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 լուծիչը վերադարձել են, և որ արգելափակված երթևեկությունը կա՛մ վերականգնվել է, կա՛մ դիտավորյալ դեռ արգելափակված է։ Գրանցեք պրոֆիլը և հաճախորդի տարբերակը ախտանիշի հետ, որպեսզի հաջորդ դեպքը սկսվի ապացույցից, այլ ոչ թե ընտրացանկի գոտու ենթադրությունից։