Ձեռքսեղմումը կա, հասցեն՝ ոչ. WireGuard-ի երեք վիճակները
Թարմ ձեռքսեղմումը վկայում է, որ հեռակա կողմը պատասխանել է, ոչ թե այն, որ միջերեսը պահում է իր հասցեն կամ հաջորդ փաթեթը գնում է նախատեսված վերին ուղով։
WireGuard-ը կարող է միաժամանակ ունենալ թարմ ձեռքսեղմում և ոչ մի հասցե, և այդ վիճակը համահունչ է, ոչ հակասական։ Ձեռքսեղմումը հեռակա կողմի իրադարձություն է, հասցեն պատկանում է միջերեսին, իսկ երթուղին որոշում է, թե որ վերին ուղով է փաթեթը դուրս գալիս։ Երեք շերտ, երեք սեփականատեր, և յուրաքանչյուրը կարող է ձախողվել, մինչ մյուս երկուսը առողջ են երևում։
Դրանք որպես մեկ կարգավիճակ կարդալը հենց այն է, ինչը երկու րոպեի ախտորոշումը դարձնում է ծառայությունների վերագործարկման մի ամբողջ կեսօր։
Ձեռքսեղմումը հեռակա կողմի իրադարձություն է, ոչ թե հասցեավորման իրադարձություն
WireGuard-ի ձեռքսեղմումը վկայում է, որ կարգավորված հեռակա կողմը պատասխանել է վավեր բանալիով, և որ սեսիայի բանալիները ընթացիկ են։ Այն ոչինչ չի ասում միջերեսի տեղական հասցեի մասին, և ոչ էլ այն մասին, թե որևէ երթուղի այնտեղ է ուղղվում։ Հասցեն տրամադրում է օգնականը կամ ցանցի կառավարիչը, մինչ պրոտոկոլի կարգավորումը միայն անվանում է հեռակա կողմեր և բանալիներ։ Այս երկուսը շփոթելն այն է, ինչի պատճառով առողջ ձեռքսեղմումը կարդացվում է որպես աշխատող թունել։
Այդ պատճառով wg show կարող է հաղորդել վայրկյանների ձեռքսեղմում այնպիսի միջերեսի վրա, որը չի կարող ընդունել ոչ մի փաթեթ հավելվածից։
Միջերեսը վերստեղծող կառավարիչը կարող է գցել հասցեն՝ չդիպչելով հեռակա կողմի կարգավորմանը, և հաջորդ ձեռքսեղմումը անմիջապես հաջողվում է, որովհետև բանալիները երբեք չեն փոխվել։ Հաջող ձեռքսեղմումի մասին մատյանի տողը ճշգրիտ է և անկապ խափանմանը։
| Observation | Which layer it belongs to | Wrong conclusion it invites |
|---|---|---|
| Handshake a few seconds old | Peer and keys | The tunnel is usable for application traffic |
Address present on wg0 | Interface configuration | Traffic actually egresses through it |
Route points at wg0 | Forwarding table | The outer packet uses the intended uplink |
Միջերեսի հասցեն ունի իր սեփական տերը
Թունելային սարքի հասցեն կարող է գալ օգնականի Address տողից, միջերեսի վրա աշխատող DHCP հաճախորդից, կամ միացման պահին այն ստեղծող կառավարման դեմոնից։ Ինչ էլ որ լինի, այդ բաղադրիչն է տիրում հասցեին և կվերականգնի այն կամ ոչ՝ ըստ իր տրամաբանության։ Հասցեն առանց դրա տիրոջը նշելու կարդալը ձեզ թողնում է առանց բացատրության, թե ինչու այն անհետացավ։
Մեկ միջերեսի վրա երկու տեր դասական խափանում է։ Օգնականի և աշխատասեղանի ցանցի կառավարչի գործարկումը նույն սարքի վրա ստեղծում է մրցավազք, որտեղ մեկը հեռացնում է այն, ինչ մյուսը նոր էր կարգավորել, և վերջնակետը շարունակում է պատասխանել ամբողջ ընթացքում։
Ընտրեք մեկ տեր և թույլ տվեք մյուս գործիքին դիտել, այլ ոչ կառավարել։ Այդ որոշումը արժե գրի առնել, որովհետև ախտանիշը ի հայտ է գալիս շաբաթներ անց և նման է հասցեի պատահական կորստի։
Երթուղին է ընտրում վերին ուղը, ոչ միջերեսը
wg0-ին ուղղված ներքին երթուղին որոշում է, որ երթևեկությունը մտնում է թունել։ Առանձին որոշում է գաղտնագրված արտաքին փաթեթներն ուղարկում հեռակա կողմին, և մի քանի վերին ուղ ունեցող հոսթի վրա այդ որոշումը գալիս է փոխանցման աղյուսակից և քաղաքականության կանոններից։ Wi-Fi ռոումինգը կարող է փոխել արտաքին ուղին՝ չդիպչելով ներքին հասցեին։
Այսպիսով, աշխատող թունելը և անհասանելի հեռակա կողմը համատեղելի վիճակներ են, ինչպես նաև ճիշտ հեռակա կողմը և կոտրված ներքին երթուղին։ Երեք դիտարկումները պետք է վերցնել միասին, նույն պահին, այլապես համեմատությունն անիմաստ է։
Համեմատեք երեք վիճակները մեկ անցումով
Երեք միայն-ընթերցման հրամաններ պատասխանում են երեք հարցերին այն հերթականությամբ, որն ամենաարագ մեկուսացնում է խափանումը։ Գործարկեք դրանք՝ արանքում ոչինչ չփոխելով։
ip address show dev wg0
ip route get 10.80.0.1
wg show wg0 latest-handshakes transfer
Առաջինը ցույց է տալիս՝ արդյոք միջերեսն ընդհանրապես հասցե ունի, իսկ երկրորդը՝ թե կոնկրետ նպատակակետը հիմա որ սարքը կօգտագործեր։ Երրորդը հաղորդում է վերջին ձեռքսեղմումի ժամանակը և բայթերի հաշվիչները, և երեքից միակն է, որ նկարագրում է հեռակա կողմին, ոչ թե տեղական հոսթը։
Կարդացեք հաշվիչները ինչպես նաև ժամանակադրոշմը։ Ձեռքսեղմումը, որը շարունակ թարմացվում է, մինչ փոխանցումը մնում է հարթ, նշանակում է, որ հեռակա կողմը պատասխանում է, բայց ոչինչ օգտակար չի անցնում, ինչը մատնանշում է երթուղավորում կամ ACL, այլ ոչ բանալիներ։ Ժամանակադրոշմը, որը դադարում է առաջ շարժվել հասցեի առկայությամբ, ընդհակառակը մատնանշում է վերև։ Երկու ընթերցումներն էլ գալիս են ելքի նույն տողից, և ոչ մեկը տեսանելի չէ, եթե միայն ստուգում եք, որ ձեռքսեղմում գոյություն ունի։
Ուղղեք այն կոնկրետ վիճակը, որը սխալ է, ապա նորից փորձարկեք հավելվածը, այլ ոչ թունելը։ Թարմ ձեռքսեղմումը վկայություն է հեռակա կողմի մասին, և հեռակա կողմի մասին վկայությունը վկայություն չէ, որ ձեր դիտարկիչի հաջորդ հարցումը կգտնի հասցե, երթուղի և աշխատող վերին ուղ։ wg-quick-ի ձեռնարկը հստակ ասում է, թե դրանցից որն է օգնականը կարգավորում և որն է պատկանում պրոտոկոլին։