Միաժամանակ աշխատող երկու VPN հաճախորդ չեն ստեղծում ներդրված թունել, այլ ստեղծում են երկու թունել և վեճ երթուղայնության շուրջ։ Ներդրված թունել գոյություն ունի, երբ ներքին հաճախորդի կապն իր սեփական սերվերի հետ ինքն է տարվում արտաքին թունելով, և դա դիտավորյալ կառուցվող դասավորություն է։ Եթե ճիշտ լինի, ներքին սերվերը տեսնում է արտաքին սերվերի հասցեն, իսկ եթե սխալ լինի, մի հաճախորդ լուռ վերամիանում է մյուսի շուրջը։ Երեք պայման է որոշում՝ ներդրումը իրական է, թե պատահական։

Ներդրումը որոշում են երեք պայման

Առաջինն այն է, թե որ վերջնակետին որ ուղին է պետք։ Նշեք ներքին սերվերի հասցեն, նշեք արտաքին սերվերի հասցեն և հստակ ասեք, որ ներքին սերվերին հասանելի է միայն արտաքին թունելով։ Մնացած ամեն ինչ բխում է այդ նախադասությունից, ներառյալ, թե որ երթուղիներն են պատկանում որ աղյուսակին։

Երկրորդն այն է, թե կարող եք արդյոք տեսնել ուղին յուրաքանչյուր շերտում։ Եթե չեք կարող միջուկից հարցնել, թե որ երթուղին կօգտագործեր կոնկրետ նպատակակետը, դուք շղթան եզրակացնում եք վերջնական ելքային IP-ից, և դա հենց այն ապացույցն է, որը չի կարող տարբերել ներդրումը պատահականությունից։

Երրորդն այն է, թե ինչ է լինում, երբ ընկնում է արտաքին թունելը։ Ներքին թունելը կարող է կանգ առնել նրա հետ, վերամիանալ սովորական ցանցով կամ մնալ արգելափակված, մինչև արտաքին ուղին վերադառնա, և բոլոր երեքը պաշտպանելի քաղաքականություններ են։ Դրանք նույն քաղաքականությունը չեն, և հաճախորդների մեծ մասի լռելյայն վարքը երկրորդն է։ Հաճախորդը, որը վերամիանում է իր վերջնակետին ֆիզիկական ցանցով և միաժամանակ ցույց է տալիս առողջ կապ, ամենատարածված ուղին է, որով մտադրված շղթան լուռ դառնում է երկու անկապ թունել։

Առաջին պայման՝ որ վերջնակետին որ ուղին է պետք

ip route get 203.0.113.10 ուղղակիորեն պատասխանում է այդ հարցին. տպում է երթուղին, աղբյուրի հասցեն և ինտերֆեյսը, որը միջուկը հիմա կօգտագործեր այդ նպատակակետի համար։

Գործարկեք այն ներքին սերվերի համար ներքին հաճախորդի մեկնարկից առաջ և ևս մեկ անգամ դրանից հետո, և համեմատեք։ Եթե պատասխանը փոխվում է ֆիզիկական ինտերֆեյսից արտաքին թունելի ինտերֆեյսի, ներդրումը այդ պահին իրական է։ Եթե չի փոխվում, ներքին հաճախորդը միանում է ուղղակիորեն, ինչ էլ ասի վահանակը։ Կրկնեք արտաքին սերվերի հասցեի համար, որը դեռ պետք է լուծվի ֆիզիկական ինտերֆեյսով, քանի որ երթուղին, որը ռեկուրսիվորեն բռնում է երկու վերջնակետերը, այն խափանումն է, որը մեքենան ամբողջովին հանում է ցանցից։

Երկրորդ պայման՝ ստուգեք ուղին յուրաքանչյուր շերտում

Երթուղու ընտրությունը ժամանակակից հաճախորդում ավելին է, քան հիմնական աղյուսակը։ Քաղաքականության կանոնները կարող են նշված փաթեթներն ուղարկել այլ աղյուսակ, հաճախորդը կարող է իր սոքեթը կապել ինտերֆեյսի, իսկ կոնտեյները կամ անվանատարածքը ունի իր աղյուսակները։ ip rule-ը և ip route show table all-ը ուղին են պարզելու, թե այդ մեխանիզմներից որն է խաղի մեջ։

Հաճախորդը, որը իր սեփական սոքեթի վրա դնում է SO_MARK կամ կարգավորված է կապվելու կոնկրետ սարքի, շրջանցում է լռելյայն երթուղին, որը դուք կարծում էիք, թե կարգավորել եք։ Դա ֆունկցիա է, ոչ թե սխալ, և նշանակում է, որ միակ հուսալի ստուգումն այն է, որն աշխատում է նույն անվանատարածքում, ինչ հաճախորդը։ Եթե հաճախորդները աշխատում են կոնտեյներներում, ստուգումները կատարեք այդ կոնտեյներներում, ոչ թե հոսթի վրա։

Երրորդ պայման՝ ինչ է լինում, երբ ընկնում է արտաքին թունելը

Խափանման վարքը պահանջում է որոշում, ոչ թե լռելյայն արժեք։ Գրեք, թե ինչ պետք է լինի ներքին թունելի հետ, երբ արտաքինը անհետանա, ապա ստիպեք հաճախորդներին այդպես անել։

Տարբերակները կոնկրետ են։ Ներքին հաճախորդի կանգը, երբ արտաքին ուղին անհետանում է, տալիս է մաքուր շղթա և ակնհայտ ընդհատում։ Նրան ուղղակի վերամիանալ թույլ տալը տալիս է հասանելիություն և լուռ հեռացնում է այն հատկությունը, որի համար կառուցվել է շղթան։ Արգելափակելը մինչև արտաքին ուղու վերադարձը ամենախիստ և շահագործման մեջ ամենահոգնեցուցիչ տարբերակն է, քանի որ արտաքին թունելի յուրաքանչյուր տատանում դառնում է տեսանելի միջադեպ։

Փորձեք բոլոր երեքը անվտանգ երթևեկությամբ և արտաքին թունելի դիտավորյալ խափանումով, քանի որ կոնֆիգուրացիան կարդալը ձեզ չի ասի, թե որն ունեք։ Սպանեք արտաքին թունելը, դիտեք, թե ինչ է անում ներքին հաճախորդը, և կրկին ստուգեք երթուղին, մինչ այն իջեցված է։ Ապա վերադարձրեք արտաքին թունելը և հաստատեք, որ շղթան նորից ձևավորվում է, այլ ոչ թե ներքին հաճախորդին թողնում է այն ուղիղ ուղու վրա, որը նա ընտրել էր այդ ընթացքում։

Ինչ չի տալիս շղթան

Լրացուցիչ շերտերը ավելացնում են վերջնակետեր, բանալիներ և խափանման ռեժիմներ, բայց անանունության ոչ մի երաշխիք չեն ավելացնում և չեն խանգարում արտաքին օպերատորին տեսնել, որ թունել գոյություն ունի։ Ցանկացած պնդում, թե ինչից է պաշտպանում ներդրումը, պետք է նշի այն դիտորդին, որից այն պաշտպանում է։

Արդյունքը կարճ փաստաթուղթ է, ոչ թե աշխատող կապ. որ վերջնակետն որ ուղին է օգտագործում, ինչ է լինում արտաքին խափանման դեպքում և երեք հրամանները, որոնք ցույց են տալիս ընթացիկ վիճակը։ strongSwan-ի փոխանցման մասին փաստաթղթերը օգտակար աղբյուր են այն մասին, թե ինչպես է թունելի երթևեկությունը փոխանցվում ինտերֆեյսների միջև Linux հոսթում։ Կրկին գործարկեք ստուգումները յուրաքանչյուր հաճախորդի թարմացումից հետո, քանի որ լռելյայն արժեքները, որոնք ստեղծեցին ձեր շղթան, պայմանագիր չեն։ Ներդրված թունելը, որը չեք կարող ստուգել, լուր է կարգավիճակի լույսով։

Առնչվող հոդվածներ