Жергиликтүү тармактагы сервер Azure VMге жеке дарек аркылуу жетет, бирок анын жеке хост атын чече албайт, бул адамдарды бузулган туннелди издөөгө түртөт. Туннель жакшы. Жетишпегени — DNS чек арасы: жергиликтүү тарапта белгилүү бир Azure жеке зонасына VNet ичиндеги resolver жооп бериши керектигин эч ким билбейт. Бул боштукту эки долбоор жабат жана алар акырында эмнени башкарарыңыз менен айырмаланат, суроолор иштеши менен эмес.

Туннель суроолорду ташыйт, зона жөнүндө билимди эмес

Site-to-site байланышы пакеттерге эки тармактын ортосунда маршрут берет. Ал жергиликтүү DNS серверине кайсы ат мейкини Azureга таандык экенин же кайсы дарек жооп бериши керектигин айтпайт, ошондуктан суроо же интернетке чыгып бош кайтат, же жергиликтүү resolverден эч качан чыкпайт.

Оңдоонун оңой бөлүнүүчү эки жарымы бар. Бир жарымы — туннелден келген суроолорду кабыл алган VNet ичиндеги resolver. Экинчиси — так бир ат мейкинин ошол resolverге жөнөткөн жергиликтүү тараптагы шарттуу forwarder. Эч бир жарым жалгыз иштебейт.

Бул сүрөттөмөнүн калган бөлүгү үчүн зона cloud.corp.example деп эсептеңиз жана ар бир даректи мисал катары караңыз.

A варианты: башкарылуучу кирүү акыркы чекити

Azure DNS Private Resolver VNetтин сыртынан келген DNS суроолорун кабыл алган кирүү акыркы чекитин сунуштайт. Сиз аны атайын делегацияланган кошумча тармакка жайгаштырасыз, жеке зонаны ошол VNetке байланыштырасыз жана кызмат берген кирүү дарегин жазып аласыз.

Андан кийин жергиликтүү DNS серверинде так ат мейкини үчүн ошол дарекке багытталган шарттуу forwarder түзөсүз:

Namespace: cloud.corp.example
Forward to: 10.20.2.4

Microsoftтун гибриддик DNS процедурасы зонаны байланыштырууну да, forwarder кадамын да документтештирет. Башкарылуучу жол сизге жамоо үчүн DNS программасын калтырбайт, ал эми акыркы чекиттин дареги ресурстун бүт өмүрү бою туруктуу бойдон калат.

Баасы — эми сизде resolver ресурсу, анын кошумча тармак делегациясы жана анын чыгымы бар, бул суроолордун көлөмү өтө аз болсо да реалдуу.

B варианты: VNet ичиндеги forwarder VM

Эски долбоор DNS программасын VNetтеги кадимки VMде иштетет: Windows DNS, BIND же dnsmasq, жеке зона же жергиликтүү жайгаштырылат, же 168.63.129.16 дарегиндеги Azure resolverине жөнөтүлөт. Жергиликтүү шарттуу forwarder ошол VMдин жеке дарегине шилтеме жасайт.

Бул вариант DNS серверлерин буга чейин башкарган командаларга тааныш жана журналдоо же split-horizon жооптору сыяктуу кошумча логиканы көтөрө алат. Ал ошондой эле DNS серверинин бардык операциялык милдеттерин мураска алат: жамоо, жеткиликтүүлүк үчүн экинчи нуска, мониторинг жана VM алмаштырылып, анын дареги өзгөргөндө кайра куруу жолу.

Кадимки VNet хосту кызмат орнотулуп, ошол кардарларга жооп берүүгө уруксат алынмайынча DNS прокси эмес, жана VM клондоодо адамдар ушул кадамды өткөрүп жиберет.

Кайсысы сиздин ишиңизге туура келет

Салыштыруу кайсы долбоор тезирээк дегенде эмес. Ал DNS программасын такыр башкарууну каалайсызбы жана суроолордун көлөмү акыркы чекит жана суроо боюнча эсептеле турган башкарылуучу ресурсту актайбы дегенде.

QuestionManaged inbound endpointForwarder VM
Software to patchNoneThe DNS service on every instance
Address stabilityFixed for the resource lifetimeTied to the VM or its reserved address
Availability workHandled by the serviceSecond instance, health checks, failover
Extra logicLimited to resolver featuresWhatever the DNS software supports

Кайсы сап чечсе да, жергиликтүү forwarder эрежеси бирдей көрүнөт. Ушул бөлүк эки долбоордо тең болушу керек жана адам Azure ичинен чечүү иштейт, кеңседен иштебейт деп билдиргенде эң көп жетишпеген бөлүк да ушул.

Жолду тартиби менен текшериңиз

Зона resolver бар VNetке байланганын жана жергиликтүү forwarder ата-доменди эмес, ат мейкинин атаарын ырастаңыз. corp.example үчүн forwarder, resolver өзү делегациялабаса, cloud.corp.example менен дал келбейт, ал эми бул дал келбөөчүлүк жоголгон жазууга окшош таза терс жооп берет.

Андан кийин суроонун акыркы чекитке жеткенин текшериңиз: жергиликтүү булакка resolver дарегине маршрут жана кайтуу жолу керек, ал эми 53 порту UDP жана TCP боюнча саясат уруксат берген жерде ачык болушу керек. NSG жоголгон зона жазуусун бере албайт, ал эми туура зона эч качан келбеген суроого жооп бере албайт.

Диагностика учурунда талап кылынган FQDNди тандалган resolverдин жанында кармаңыз жана тайм-аутту терс жооптон ажыратыңыз. Тайм-аут — жол же саясат маселеси. Терс жооп суроо келгенин жана ат мейкини дал келбегенин билдирет. Иш тартиби: зонаны байланыштырыңыз, шарттуу forwarder кошуңуз, 53 портун эки багытта ачыңыз, жергиликтүү тараптан бир атты текшериңиз, ошондон кийин гана колдонмонун өз авторизациясын караңыз.

Тектеш макалалар