Երկկույտ VPN. հաճախորդն է ընտրում հասցեների ընտանիքը, ոչ դուք
Մեկ անուն, երկու ընտանիք, երկու տարբեր ուղի։ Թունելը կարող է առողջ լինել, բայց հարցումը ձախողվել, քանի որ հաճախորդն ընտրել է թեկնածու, որը դուք երբեք չեք երթուղավորել։
Թունելը միացված է, IPv4 կայքերը բեռնվում են, և մեկ հոսթի անուն ժամանակավերջ է ստանում։ Ակնթարթային եզրակացությունն այն է, որ VPN-ը կոտրված է կամ հավատարմագրերը սխալ են, և սովորաբար ոչ մեկը ճիշտ չէ։ Անունը վերադարձրել է և՛ IPv4, և՛ IPv6 հասցե, հավելվածն ընտրել է մեկը, և այդ թեկնածուներից միայն մեկն ուներ աշխատող ուղի։ Ընտրության որոշումը կայացրել է հաճախորդը. թունելը պարզապես չէր ծածկում այն, ինչ նա ընտրել էր։
Ընտրությունը ծածկույթի խոստում չէ
RFC 6724-ում նկարագրված լռելյայն հասցեի ընտրությունը որոշում է, թե որ աղբյուր-նշանակետ զույգն է հոսթը նախընտրում, երբ մի քանիսը հասանելի են։ Happy Eyeballs-ը դրա վրա ավելացնում է կապի ռազմավարություն. այն սկսում է փորձեր երկու ընտանիքներում և պահում է այն, որն առաջինն է պատասխանում, որպեսզի օգտատերը չսպասի կոտրված ընտանիքի ժամկետի լրանալուն։
Մեխանիզմներից ոչ մեկը երթուղի չի ստեղծում։ Եթե ձեր թունելը տեղափոխում է միայն IPv4, AAAA թեկնածուն դեռ օրինական նշանակետ է, որը հաճախորդը կարող է փորձել, և ձախողումը երևում է որպես դանդաղ բեռնում, ոչ որպես սխալ, քանի որ բրաուզերը հետ է ընկել։ Օգտատերը հաղորդում է դանդաղ կայքի մասին, ոչ կոտրվածի, և աջակցության տոմսը ժառանգում է այդ անորոշությունը։ Կրկնեք դա ֆիքսված ընտանիքով, և զեկույցը կդառնա կոնկրետ։
Այդ հետընկն է պատճառը, որ ախտանիշը տարբեր հավելվածներում անհամապատասխան է։ Բրաուզերը թաքցնում է ուշացումը. ֆիքսված ընտանիքով հրամանի տողի հաճախորդը ձեզ անմիջապես ցույց է տալիս իրական ձախողումը։
Գտեք, թե որ ընտանիքն է իրականում օգտագործել հարցումը
Սկսեք անունից, ոչ թունելից։ Հարցրեք երկու տեսակի գրառումները և նշեք, թե ինչ վերադարձավ.
dig +short A example.com
dig +short AAAA example.com
curl -4 -sS -o /dev/null -w '%{http_code}\n' https://example.com
curl -6 -sS -o /dev/null -w '%{http_code}\n' https://example.comԵթե v4 հարցումը հաջողվում է, իսկ v6 հարցումը ձախողվում, դուք վերարտադրել եք խնդիրը վրիպազերծելի ձևով։ Եթե երկուսն էլ հաջողվում են shell-ից, իսկ բրաուզերը դեռ ձախողվում է, նայեք հավելվածի սեփական լուծիչին կամ պահված պատասխանին՝ նախքան թունելին դիպչելը։
Պահեք ընտանիքը և նշանակետը ձեր նշումներում։ Տոմսը, որն ասում է, թե կայքը չի բեռնվում VPN-ի միջով, ոչ ոք չի կարող ստուգել, մինչդեռ տոմսը, որն ասում է, թե AAAA-ն ձախողվում է, իսկ A-ն աշխատում է, մատնանշում է կոնկրետ երթուղի։
Ստուգեք այդ ընտանիքի երթուղին
Ձախողվող ընտանիքի համար հարցրեք միջուկին, թե որ ուղին կօգտագործի, և համեմատեք այն թունելի կարգավորված հասցեների հետ։ Linux-ում ip -6 route get նշանակետի համար ցույց է տալիս ինտերֆեյսը և աղբյուրը, որոնք կընտրվեին։
Այնուհետև ստուգեք հենց թունելը։ WireGuard հավասարները կրում են թույլատրված IP-ների ցանկ, և 0.0.0.0/0 գրառումը ոչինչ չի ասում IPv6-ի մասին։ Եթե հավասարի ցանկում IPv6 նախածանց չկա, հաճախորդը պատճառ չունի AAAA երթևեկությունն ուղարկել թունել, և փաթեթը դուրս է գալիս այն ճանապարհով, որով հոսթը հակառակ դեպքում կգնար։
Հրդեհային պատի կանոնները և NAT քաղաքականությունը արժանի են նույն ստուգմանը յուրաքանչյուր ընտանիքի համար։ IPv4-ի համար գրված կանոնը ոչ մի հարթակում չի ծածկում IPv6-ը, և սա է ամենատարածված պատճառը, թե ինչու մի ընտանիք աշխատում է, իսկ մյուսը՝ ոչ։
Մի անջատեք IPv6-ը՝ էկրանի պատկերը պարզեցնելու համար
IPv6-ը համակարգով անջատելը կվերացնի ախտանիշը և ձեզ կթողնի առանց ախտորոշման։ Այն նաև կոտրում է ցանկացած նշանակետ, որը միայն IPv6 է, և թաքցնում է նույն սխալը հաջորդ հավելվածի համար։ Եթե մեքենան իսկապես չպետք է օգտագործի IPv6, դա գիտակցված քաղաքականություն է՝ սեփականատիրոջ և թեստի հետ։ Միջադեպի ընթացքում այն անջատելը ոչ մեկն է։
Որոշեք, թե հաճախորդն ինչ պետք է անի ընտանիքի հետ, և կարգավորեք դա բացահայտ. անցկացրեք այն թունելով, կամ արգելափակեք աջակցվող եղանակով, որպեսզի ընտրությունը երբեք անհասանելի թեկնածու չառաջարկի։ Երկուսն էլ օրինական նախագծեր են։ Համընդհանուր անջատումը ոչ մեկը չէ, քանի որ այն ընդհանրապես նախագիծ չէ։
Ինչ գրել տոմսում
Գրանցեք չորս բան՝ հոսթի անունը, ձախողված ընտանիքը, միջուկի ընտրած երթուղին և ընտանիքին հատուկ հարցման արդյունքը։ Այդ հավաքածուն բավական է, որպեսզի ուրիշը վերարտադրի ձախողումը՝ չգուշակելով, թե երկու ուղիներից որն էիք նկատի ունեցել։
RFC 6724 հասցեի ընտրության կանոնները բացատրում են, թե ինչու հաճախորդը նախընտրեց այն թեկնածուն, որին նախընտրեց, և RFC 8305-ը բացատրում է մրցավազքի վարքը, որը թաքցրեց ուշացումը։ Դրանցից ոչ մեկը ձեզ համար փաթեթ չի երթուղավորի, և հենց այդ մասը պետք է անի թունելը։