Mac-ի լրացուցիչ VPN երթուղիներին տեր է պետք, ոչ թե մուտքի սկրիպտ
Մուտքի պահին մեկ անգամ ավելացված երթուղին վերակապակցման քաղաքականություն չէ։ Տվեք հեռավոր նախածանցներին տեր և որոշեք, թե ինչպես են դրանք հայտնվում, փոխվում և անհետանում այդ կապի հետ։
VPN-ի միջոցով մասնավոր նախածանցին հասնելը պահանջ է, որն ունի տևողություն՝ այն գործում է քանի դեռ այդ կապը օգտագործելի է, և ավարտվում է, երբ ավարտվում է կապը։ Մուտքի սկրիպտը չի կարող դա արտահայտել, որովհետև մուտքը և թունելի բարձրանալը տարբեր պահեր են, և մուտքի պահին գոյություն ունեցող թունելը կարող է այն չլինել, որը մեկ րոպե անց տրաֆիկ է տեղափոխում։ Առաջին որոշումը այն չէ, թե որ հրամանը գործարկել։ Այն է, թե որ բաղադրիչն է տիրապետում նախածանցին։
Նախածանցին տեր է պետք, ոչ թե պահ
Սկսեք պահանջը գրել ենթակա ունեցող նախադասությամբ՝ հասեք 10.77.0.0/24 գրասենյակի VPN-ի միջով, քանի դեռ այդ կապը վերևում է։ Այդ նախադասությունը նշում է նախածանցը, կապը և պայմանը, և անմիջապես բացառում է երկու տարածված փոխարինող՝ մուտքի կարթ և միջերեսի անուն, ինչպիսին է ppp0 կամ utun2։
Միջերեսների անունները տրվում են գործարկման պահին և կայուն չեն վերակապակցումների միջև։ Կարթը, որը համընկնում է անցյալ շաբաթ տեսած անվան հետ, կա՛մ չի գործարկվի, կա՛մ կգործարկվի ուրիշի միջերեսի դեմ։ Երկու արդյունքներն էլ երևում են որպես երթուղավորման սխալ, այլ ոչ որպես հնացած ենթադրություն, որ հանդիսանում են։ Նույն առարկությունը վերաբերում է ցանկացած սկրիպտի, որը կապված է անվան հետ, որը գոյություն ունի միայն մեկ կոնկրետ թունելի վերևում գտնվելու ընթացքում։
Օգտագործեք երթուղու մտադրության աջակցվող աղբյուր
Դարպասը, կառավարվող պրոֆիլը կամ տիրապետող հաճախորդի փաստաթղթավորված երթուղային մեխանիզմը դրա ճիշտ տեղն է, երբ այդ մեխանիզմը կարող է արտահայտել պահանջը։ Որն է կիրառվում, կախված է արձանագրությունից և մատակարարից, և բանալիները նրանց միջև չեն տեղափոխվում, ուստի պրոֆիլ կարգավորող արժեքը OpenVPN ոչինչ չի ասում բնիկ L2TP կամ IKEv2 հաճախորդի մասին։
| Mechanism | Can carry extra prefixes | Who owns the lifetime |
|---|---|---|
| Gateway-pushed routes | Often, if the gateway is configured for it | The connection |
| Managed profile settings | Depends on the client and profile format | The profile |
| Provider tunnel settings | Yes, as included and excluded routes | The provider process |
| Manual command | Yes, once | Nobody |
Փաթեթային թունելների մշակողների համար Apple-ի IPv4 թունելի կարգավորումները բացահայտորեն ցուցադրում են ներառված և բացառված երթուղիները, և IPv6-ն ունի իր համարժեքը։ Դրանք API-ներ են, որոնք օգտագործում է մատակարարը, ոչ թե ապացույց, որ յուրաքանչյուր բնիկ VPN վահանակ ադմինիստրատորին առաջարկում է կամայական երթուղիների ցանկ։ Եթե ներկա համակցությունը չի կարող արտահայտել ձեզ անհրաժեշտ նախածանցերը, հաջորդ քայլը օպերատորի կողմից աջակցվող կարգավորման ուղին է, այլ ոչ թե մեկ այլ հավելված, որը տեղադրվում է ավելի լավ վարվելու հույսով։
Կյանքի տևողությունը ներառում է մաքրում
Երբեմն արտաքին օգնականն իսկապես անհրաժեշտ է, և այդ դեպքում «ավելացրու երթուղին» նրա աշխատանքի ամենափոքր մասն է։ Նա պետք է իմանա, թե որ կապին է ծառայում և որ միջերեսն է օգտագործում այդ կապը, սպասի մինչև համապատասխան ցանցային վիճակը հանդարտվի, մնա իդեմպոտենտ, երբ գործարկվում է երկու անգամ անընդմեջ, և չմաքրի ոչինչ, ինչ ինքը չի տեղադրել։
Վերջին կետն է, որ ցավեցնում է։ Օգնականը, որը ջնջում է գրասենյակի նախածանցին համապատասխանող բոլոր երթուղիները, վաղ թե ուշ կջնջի մի երթուղի, որը ինքը չի ավելացրել։ Առաջացած խափանումը բարդվում է VPN հաճախորդի վրա, որովհետև հաճախորդն այն մասն է, որ տեսնում է օգտատերը։ Որոշել, թե ինչին է տիրապետում օգնականը, նախքան այն գրելը, ավելի էժան է, քան հետո բացատրելը, թե ինչու տեղական ենթացանցը դադարեց պատասխանել։
Վերակապակցման մրցավազքը
Պատկերացրեք արագ վերակապակցում։ A սեանսն ընկնում է, B սեանսը բարձրանում է և տեղադրում իր երթուղին, ապա A-ի ուշացած մաքրումը վերջապես գործարկվում է։ Եթե այդ մաքրումը հեռացնում է երթուղիները ըստ նախածանցի, այն իր հետ տանում է B-ի վավեր վիճակը, և մի վայրկյան առաջ աշխատող կապն այժմ երթուղավորում է դեպի ոչինչ։
Սա սեփականության մրցավազք է, և սկրիպտին քուն ավելացնելը փոխում է միայն այն, թե որ կողմը կհաղթի։ Լուծումը մաքրումը ինքնությանը պայմանավորելն է՝ համեմատեք օգնականի տեղադրած միջերեսն ու սեանսը դեռ գործողների հետ, և հեռացրեք միայն համընկնելիս։
Ինչ փորձարկել, և ինչ չի կարող անել երթուղին
Ընդունումը պետք է ծածկի չորս անցում՝ առաջին կապը, վերակապակցումը այլ միջերեսի, ձախողված կապի փորձը և վերջնական անջատումը։ Յուրաքանչյուրից հետո կարդացեք այն երթուղին, որ համակարգը փաստացի ընտրել է հեռավոր կողմի հասցեի համար, ոչ թե այն, ինչ սպասում էիք։
route -n get 10.77.0.5
netstat -rn -f inet
Ներառեք նաև անհարմար դեպքերը նույն փուլում՝ IPv6 այնտեղ, որտեղ պահանջվում է, տեղական նախածանց, որը համընկնում է հեռավորի հետ, և երթուղին դեպի հանրային VPN-ի վերջնակետը, որը պետք է շարունակի աշխատել քանի դեռ թունելը վերևում է։ Ապա գրեք, թե ինչ չէ երթուղին։ Այն ընտրում է փաթեթներ. այն թույլտվություն չի տալիս հեռավոր կողմում և հետադարձ ուղի չի ստեղծում, և դրանք մնում են առանձին պահանջներ՝ առանձին տերերով։
Ցանկալի արդյունքը նախածանցն է, որն իր աջակցվող կապի տիրոջը հետևում է յուրաքանչյուր անցման ընթացքում, այլ ոչ թե հրաման, որը պատահաբար մեկ անգամ հաջողվել է այն մեքենայում, որտեղ գրվել է։