mDNS VPN-ի ներսում. ինչու .local անունները չեն լուծվում
Երթուղայնացված VPN-ը տեղափոխում է unicast փաթեթներ, ոչ թե հղումային-տեղական multicast։ Ստուգեք, թե ինչ է լուծվում, ինչու հարցումը երբեք չի հասնում և որ անվանման ձևավորումն է իրականում աշխատում։
Ձեր գրասենյակի տպիչը հայտնվում է ձեր սեղանի յուրաքանչյուր հավելվածում և անհետանում VPN-ում, թեև կարող եք pingել այն հասցեն, որը, ինչպես գիտեք, ունի։ Թունելում ոչինչ կոտրված չէ. հայտնաբերումը և հասանելիությունը առանձին ծառայություններ են, և լռելյայն դրանցից միայն մեկն է անցնում երթուղայնացված թունելով։ Ներքևի ստուգումները բաժանում են դրանք, նախքան երթուղիներ ավելացնելը։ Երթուղին չի կարող շտկել հարցումը, որը երբեք չի լքել հղումը։
Ստուգեք, թե ինչ է լուծվում այսօր, և ինչը միայն լուծված է թվում
Նախ բաժանեք երկու հարցերը. հոսթանվան unicast հարցումը հարցնում է լուծիչին, մինչդեռ _ipp._tcp-ի որոնումը հարցնում է տեղական հղմանը։ Linux-ում avahi-browse -a ցույց է տալիս, թե ինչ կարող է տեսնել multicast DNS-ը, իսկ resolvectl query name.local ցույց է տալիս, թե ինչ է անում լուծիչի կույտը այդ անվան հետ։ macOS-ում dns-sd -B _ipp._tcp թվարկում է հայտնաբերված ծառայությունները՝ առանց նախապես հասցեի կարիքի։
Եթե հասցեն պատասխանում է, իսկ անունը՝ ոչ, երթուղայնությունը աշխատում է, իսկ հայտնաբերումը՝ ոչ։ .local անունը կարող է պատասխանվել նաև հենց հոսթի վրա nss-mdns-ի միջոցով՝ առանց avahi-browse-ի տեղադրման, ուստի այդ անվան հաջող getent-ը կամ pingը ապացույց չէ, որ հայտնաբերումն անցել է թունելով. որոնման արդյունքը և լուծիչի արդյունքը տարբեր ապացույցներ են։ Հավելվածները պահում են քեշում այն, ինչ հայտնաբերել են, դրա համար էլ խափանումը հաճախ ի հայտ է գալիս միանալուց ժամեր անց, ոչ թե միանալիս։ Փակեք և նորից բացեք հավելվածը, ապա ստուգեք՝ քեշավորված գրառումը անուն է պարունակում, թե հասցե, որովհետև հասցեն շարունակում է աշխատել հայտնաբերման դադարելուց շատ ավելի ուշ։
Ինչու հարցումը երբեք չի անցնում թունելով
Multicast DNS-ը հարցումներն ուղարկում է 224.0.0.251 հասցեին՝ տեղական ցանցի կառավարման բլոկի ներսում, UDP 5353 պորտով։ Երթուղիչները չեն փոխանցում այդ բլոկի հասցեները, ուստի հարցումը մնում է այն հղումում, ուր ուղարկվել է։ Ուղարկողները նաև IP TTL-ը կամ IPv6 ցատկի սահմանը դնում են 255-ի, որպեսզի ստացողը կարողանա մերժել արդեն երթուղիչով անցած փաթեթը. այսպես է արձանագրությունը հայտնաբերում հղումից դուրս կեղծումը, ոչ թե այսպես է այն մնում տեղական։ Տեղայնությունը գալիս է նպատակակետ հասցեից, ոչ թե մեկ ցատկի TTL-ից։
Թունելի տեսակը նույնպես կարևոր է։ tun ոճի միջերեսը տեղափոխում է միայն IP փաթեթներ և ոչինչ ավելին, ուստի ոչ մի multicast խումբ չի վերապրում դրա միջով։ tap ոճի կամուրջը ընդլայնում է հենց հեռարձակման տիրույթը, դրա համար էլ որոշ հին ձևավորումներ երթուղայնացնելու փոխարեն կամրջում էին և ժառանգում կամրջի բերած բոլոր խնդիրները։
Վստահելի LAN-ի բացառությունը ոչինչ չի փոխում, որովհետև այն որոշում է, թե որ երթևեկությունը կարող է օգտվել թունելից, թունելին multicast փոխանցել սովորեցնելու փոխարեն։ Փաթեթը դեռ չունի ընդհանուր հատված, որտեղ լսելի լինի։
Ընտրեք անվանման ձևավորում, որը կարող եք պահել
Ընկերության ռեսուրսների համար կայուն պատասխանը երթուղայնացված հոսթանուն է, որը սպասարկում է VPN-ի մղած լուծիչը, բաժանված DNS-ով, որպեսզի ներքին անունները գնան ներքին սերվերներ, իսկ մնացածը՝ ոչ։ Windows-ը դա ներկայացնում է որպես անվան լուծման քաղաքականության աղյուսակ, macOS-ը օգտագործում է միջերեսով սահմանափակված լուծիչներ, և հաճախորդների մեծ մասն ունի համարժեք մղման կարգավորում։ Սարքը պահում է իր սովորական անունը ներքին DNS-ում, և հայտնաբերումը դադարում է ուղու մաս լինելուց։
Հայտնաբերման պրոքսին կամ mDNS անդրադարձիչը կարող է կամրջել այդ բացը, և դա իրական ձևավորում է իր հոսթով, իր ազդեցությամբ և իր հաճախորդի պահանջներով։ Այն չի հայտնվում այն պատճառով, որ դուք երթուղի ավելացրիք։ Երբեք մի՛ փոխանցեք .local հարցումները հանրային լուծիչին. տիրույթը վերապահված է տեղական multicast օգտագործմանը RFC 6762-ով, և այն դուրս ուղարկելը առաջացնում է դանդաղ խափանումներ և ավելորդ տվյալների բացահայտում։
Ստուգեք ծառայությունը, ոչ թե անունը
Որոնման ցանկում անունը ապացուցում է հայտնաբերման քայլը, ոչ թե այն, որ ծառայությունը պատասխանում է։ Բացեք տպագրության հերթը կամ վեբ միջերեսը և կատարեք իրական գործողություն, ապա կրկնեք այն վերամիանալուց հետո։
Հայտնաբերումն ագրեսիվորեն քեշավորում է անունները, ուստի հնացած գրառումը կարող է հաջողություն թվալ։ Եթե հայտնվում է վկայական կամ նույնականացման հուշում, դա հաջորդ շերտն է և առանձին խնդիր։ Գրեք, թե որ մեխանիզմը փոխեցիք՝ լուծիչը, թե հայտնաբերումը, որպեսզի հաջորդ մարդը ստիպված չլինի նորից բացել ամբողջ հարցը։