Վերջին ձեռքսեղմման դատարկ դաշտը սովորաբար նշանակում է, որ ինտերֆեյսը բարձրանալուց հետո ոչ մի ձեռքսեղմում չի ավարտել, ինչը կոնֆիգուրացիայի մասին ավելի քիչ է ասում, քան թվում է։ WireGuard-ը լուռ է մնում, քանի դեռ փաթեթին պետք է դուրս գալ ինտերֆեյսից, ուստի ուղարկելու ոչինչ չունեցող պարապ peer-ը հենց այդ է հաղորդում։ Պարզեք՝ արդյոք իրականում ինչ-որ բան առաջարկվել է, նախքան բանալիները զննելը։

Փորձարկումը թույլատրելի փաթեթ է դեպի նպատակակետ, որը peer-ը պետք է կրի։ Այդ կարգավիճակի էկրանի մնացած ամեն ինչ նկարագրում է մտադրություն, ոչ թե ակտիվություն։

Պարապ ինտերֆեյսը հաղորդելու ոչինչ չունի

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

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

Գործարկեք երթևեկություն, որը peer-ին թույլատրված է կրել

Ընտրեք հասցե peer-ի թույլատրելի նախածանցերի ներսում՝ տեղական մեքենայի վրա, և հաստատեք, որ երթուղային աղյուսակը այն կուղարկի ինտերֆեյսով։ Այդ նախածանցերից դուրս նպատակակետը ստեղծում է սովորական երթուղավորված հարցում՝ ընդհանրապես առանց WireGuard-ի մասնակցության։ Օգտագործեք արագ պատասխանող ծառայություն, օրինակ ping կամ կարճ TCP միացում, որպեսզի փորձն ունենա տեսանելի սկիզբ և ավարտ։ Այնուհետև նորից կարդացեք ձեռքսեղմման տողը՝ էկրանին նայելու և սպասելու փոխարեն։

ip route get 10.60.9.5
ping -c 3 -W 2 10.60.9.5
wg show wg0 latest-handshakes
wg show wg0 transfer

Երթուղու հարցումն ավելի կարևոր է, քան ping-ը։ Եթե այն նշում է ֆիզիկական ինտերֆեյսը, փաթեթը երբեք չի մտել թունել, և դատարկ ձեռքսեղմումը երթուղային պատասխան է, ոչ թե գաղտնագրային։ Ուղղեք երթուղին, նախքան peer-ը վրիպազերծելը։

Համեմատեք բանալիների զույգը և վերջնակետը

Երբ երթևեկությունն իսկապես առաջարկվում է, հաջորդ ստուգումը ինքնությունն է։ Տեղական գաղտնի բանալին պետք է համապատասխանի հանրային բանալուն, որը լիազորում է մյուս կողմը, կարգավորված հեռավոր հանրային բանալին պետք է նույնականացնի նախատեսված peer-ին, և ցանկացած նախապես համօգտագործված բանալի պետք է համընկնի երկու ծայրերում։ base64 բանալու մեկ նշանի տարբերությունը ստեղծում է peer, որը կարգավորված է թվում և երբեք չի ավարտում փոխանակումը։ Համեմատեք մատակարարման գրառման հետ՝ բանալիները վերստեղծելու փոխարեն, քանի որ նոր բանալին անվավեր է դարձնում հինին վստահած յուրաքանչյուր peer-ի։

Վերջնակետը նույն զննումն է պահանջում. հոսթի անուն, հասցե, UDP պորտ և այն ընտանիքը, որով հասնում են դրան։ Հնացած հասցեն կամ սխալ պորտը հաղորդագրության փոխարեն լռություն է տալիս։

Հետևեք արտաքին UDP ուղուն

Ձեռքսեղմումը UDP-ով շարժվում է դեպի վերջնակետ, ուստի արտաքին ուղին պետք է կրի այն։ Ստորև բերված հրամանները ստուգում են՝ կա՞ լսող, արդյոք տեղական stack-ը ուղարկել է դատագրամը, և որ վերջնակետն է կարգավորված։ Գործարկեք որսումը երթևեկությունը գործարկելիս, ոչ թե դրանից առաջ։

ss -lunp | grep 51820
sudo tcpdump -ni eth0 udp port 51820
wg show wg0 endpoints
conntrack -L -p udp | grep 51820

Որսումը, որը ցույց է տալիս սկիզբն առանց պատասխանի, մատնանշում է մեքենայից դուրս, որովհետև հեռավոր ծայրը կամ չի լսում, կամ զտված է, կամ սխալ հասցեավորված է։ Որսումը, որն ընդհանրապես ոչինչ չի ցույց տալիս, նշանակում է՝ փաթեթը երբեք դուրս չի եկել, ինչը ձեզ վերադարձնում է երթուղուն և խաղի մեջ եղած ցանկացած socket-նշանի։ Եթե դուք կառավարում եք երկու ծայրերը, կապեք փորձը ժամանակի դրոշմանիշով սերվերի վրա նեղ որսման հետ, ոչ թե ընդհանուրի։ TCP պորտի թեստը այստեղ ոչինչ չի ապացուցում, քանի որ արձանագրությունը միայն UDP է։

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

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