WireGuard զուգընկերը դուրս է գալիս սխալ WAN-ով՝ հինգ ստուգում հերթականությամբ
Բազմաթիվ վերին կապեր ունեցող դարպասում ձեռքսեղմումը և փոխանցված հոսքը կարող են տարբեր ուղիներ բռնել։ Անցեք կանոն, նշան, թարգմանություն և պատասխան այդ հերթականությամբ։
Երկու վերին կապ, մեկ դարպաս և WireGuard զուգընկեր, որի երթևեկությունը շարունակաբար հայտնվում է պահուստային գծում։ Ձեռքսեղմումը մնում է առողջ ամբողջ ընթացքում։ Այդ պատճառով ախտանիշը հեշտ է սխալ կարդալ որպես WireGuard-ի խափանում, այլ ոչ թե երթուղավորման սխալ։
Կատարեք ստորև նշված ստուգումները հերթականությամբ։ Յուրաքանչյուրն ունի կանգառի պայման, և առաջ անցնելը սովորաբար տալիս է ինքնավստահ սխալ պատասխան։
Առանձնացրեք ձեռքսեղմումը փոխանցված հոսքից
Գաղտնագրված զուգընկերային փոխանակումն ունի վերջնակետային երթուղի դեպի սերվերի հանրային հասցեն։ Փոխանցված հաճախորդային երթևեկությունն ունի այլ նպատակակետ և կարող է ընտրվել նշաններով կամ քաղաքականության կանոններով։ Սրանք երկու երթուղային որոշումներ են, որոնք կիսում են մեկ ինտերֆեյս։ Մեկը մյուսի մասին ապացույց համարելը առաջին սխալն է։
Կանգ առեք հենց որ բռնեք ձեզ ձեռքսեղմումից տրամաբանելիս։ Այն ապացույց է միայն վերջնակետի ուղու մասին։
Կարդացեք քաղաքականության կանոնը, ոչ թե լռելյայն աղյուսակը
Լռելյայն աղյուսակը ցույց է տալիս, թե ինչ է տեղի ունենում, երբ ոչ մի քաղաքականության կանոն չի համապատասխանում։ Աղբյուրով, նշանով կամ նպատակակետով երթուղավորող դարպասում որոշիչ կանոնը ապրում է այլ տեղ։ Պարզ աղյուսակը կարող է բոլորովին ողջամիտ թվալ, մինչ իրական ընտրությունը կատարվում է դրա վերևում։
ip rule show
ip route show table main
ip -4 route get 203.0.113.9 from 10.30.8.2
Կարդացեք քաղաքականության կանոնները և այն աղյուսակները, որոնց նրանք մատնանշում են։ Այնուհետև հաստատեք, թե որ կանոնն է համապատասխանում ձեր փորձարկման հոսքին։ Այն կանոնը, որը հղում է անում ինտերֆեյսի, որն այլևս չի կրում նախատեսված վերին կապը, գտածո է, ոչ թե մանրուք։ Վերջում երթուղու որոնումը ցույց է տալիս պատասխանը շատ ավելի արագ, քան աղյուսակ կարդալն ու գուշակելը։
Ստուգեք նշանը և թարգմանությունը միասին
Քաղաքականության երթուղավորումը հիմնվում է շղթայում ավելի վաղ սահմանված փաթեթի նշանի վրա։ Եթե նշագրման կանոնը բաց թողնի ձեր երթևեկությունը, հոսքը ընկնում է հիմնական աղյուսակ և դուրս է գալիս այնտեղ լռելյայն եղածի միջով։ Փոխանցված փաթեթները հաճախ շրջանցում են տեղում ստեղծված երթևեկության համար գրված շղթաները։
nft list chain inet filter prerouting
conntrack -L -s 10.30.8.2 2>/dev/null | head
ip -s link show dev eth1
Թարգմանությունը պետք է համաձայնի հոսքը կրող վերին կապի հետ։ Այն կանոնը, որը թարգմանում է հիմնական հասցեին, մինչ փաթեթը դուրս է գալիս պահուստային գծով, ստեղծում է պատասխաններ՝ ուղղված ինտերֆեյսի, որը հոսքը երբեք չի օգտագործել։ Ստուգեք թարգմանության կանոնի սեփական ինտերֆեյսի պայմանը։ Անպայման կանոնը աշխատում է այնքան ժամանակ, քանի դեռ չի օգտագործվում երկրորդ վերին կապը, ապա ձախողվում է այնպես, որ ընդհատվող է թվում։
Ուշադրություն դարձրեք, թե որ ինտերֆեյսն է կրում պատասխանը
Գրավեք երկու վերին կապերում, մինչ մեկ հարցում է ընթանում։ Նշեք, թե որ ինտերֆեյսն է կրում հարցումը և որը՝ պատասխանը։ Ասիմետրիկ ուղիները շատ ավելի հեշտ է տեսնել, քան կանխատեսել։
Եթե պատասխանը գալիս է սխալ վերին կապով, խնդիրը տեղափոխվել է WireGuard-ից կապերի հետևման կամ թարգմանության։ Զուգընկերոջ կարգավորման ոչ մի փոփոխություն դա չի ուղղի։
Փոխեք մեկ բան՝ վերադարձի ճանապարհով
Պահեք վահանակի կամ գոտուց դուրս հասանելիություն նախքան դարպասում քաղաքականության կանոնները խմբագրելը։ Կատարեք մեկ փոփոխություն, փորձարկեք նույն թույլատրված նպատակակետը, ապա նորից միացեք և հաստատեք, որ ձեռքսեղմումը դեռ օգտագործում է նախատեսված վերջնակետային ուղին։ Ավելացրեք թվային փորձարկում երկրորդ հասցեների ընտանիքի վրա, որովհետև միայն v4-ի համար նախատեսված քաղաքականությունը թողնում է նույն սխալը հասանելի։
Գրանցեք, թե յուրաքանչյուր հոսք որ վերին կապն է օգտագործել։ Այդ գրառումը հաջորդ զեկույցը դարձնում է երկու րոպեի ստուգում՝ ամբողջ կեսօրի փոխարեն։ WireGuard-ի նշումները անվանատարածքների և երթուղավորման մասին նկարագրում են, թե ինչպես գիտակցաբար առանձնացնել վերջնակետային ուղին թունելավորված երթևեկությունից, ինչը սովորաբար ավելի մաքուր է, քան լռելյայն երթուղու շրջանցիկ լուծումը պատճենելը։