Azure UDR-ден VPN шлюзіне: бір межелі орын, бүкіл шығыс емес
Барлық шығысты жылжытпай, бір Azure префиксін VPN шлюзіне бағыттаңыз. Әрекетті маршруттарды оқып, жұмыс жүктемесінің ішкі желісін тіркеңіз, содан кейін қайтару жолын аяқтаңыз.
Сіз бір сыртқы префикс үшін пайдаланушы анықтаған маршрут қосасыз, оны VPN шлюзіне бағыттайсыз, ал трафик әлі де Azure-дың интернет жолымен шығады. Немесе ол дұрыс шығады да, жауап ешқашан қайтпайды. Екі нәтиже де бір қатеден туындайды: Azure-дың келесі секірісін бүкіл дизайн деп санау. Маршрут кестесі тек пакеттің Azure ішінде қай шығысты алатынын шешеді. Туннельден кейін оған не болатыны және жауаптың қалай қайтатыны — сіз құруға тиіс екінші жарты.
Келесі секіріс — шлюз, құрылғының IP-сі емес
UDR сәйкес префиксті келесі секіріс түріне жібереді, ал VirtualNetworkGateway — түр, мекенжай емес. Адамдар шлюздің жеке IP-сін VirtualAppliance маршрутына жапсырып, сосын неге ештеңе сәйкес келмейтінін сұрайды, өйткені бұл түр орнына NIC немесе ішкі жүктеме теңгерушісін күтеді. Microsoft-тың маршруттау құжаттамасы да шлюздің келесі секірісін шлюзі VPN шлюзі болып табылатын виртуалды желімен шектейді. ExpressRoute, Route Server және Virtual WAN хабы бұл опциямен мекенжайланбайды.
Маршрутты жазбас бұрын виртуалды желінің шын мәнінде не бар екенін тексеріңіз. Егер дизайн хаб арқылы маршруттаса, маршрут хабтың маршруттау иесіне тиесілі, сіз кездейсоқ өңдеп жатқан спокқа емес.
Бірдеңені өзгертуден бұрын әрекетті маршрутты оқыңыз
Azure жүйелік маршруттарды, BGP арқылы үйренген префикстерді және UDR-лерді әр NIC үшін әрекетті маршрут кестесіне біріктіреді, ал ең ұзын сәйкес префикс қайдан келгеніне қарамастан жеңеді. Бір префикс үшін UDR BGP маршрутын жеңеді. Дәл осы реттілік бұрынғы эксперименттен қалған ескірген UDR туннель арқылы жаңа үйренген префиксті үнсіз басып кетуіне себеп.
Алдымен әрекетті кестені қараңыз, содан кейін маршрут қосасыз ба әлде біреуін алмастырасыз ба, шешіңіз:
az network nic show-effective-route-table \
--resource-group rg-net --name vm-web-nic -o tableПрефикспен қатар дереккөз бағанын да оқыңыз. Дұрыс префиксі және қате дереккөзі бар маршрут қай нысанды өңдеу керектігін айтады және біріншісіне жеңілетін екінші маршрут қосудан сақтайды.
Маршрутты нақты префикс пен ішкі желіге сәйкес жазыңыз
Форум жазбасынан көшірілген жалпыға ортақ диапазонның орнына шын мәнінде жететін қызметтен алынған межелі орынның нақты префиксін пайдаланыңыз. Барлық шығысты жылжытатын әдепкі маршрутты қарастырмас бұрын бір бекітілген қызметтен бастаңыз. Содан кейін маршрут кестесін жұмыс жүктемесінің ішкі желісіне тіркеңіз. Шлюз ішкі желісінің өз талаптары бар, ал кестені сонда тіркеу жүктемені бағыттаудың орнына шлюзді бұзады.
Маршрутты жасаңыз, содан кейін кестені жұмыс жүктемесі орналасқан ішкі желіге байланыстырыңыз:
az network route-table route create --resource-group rg-net --route-table-name rt-egress \
--name to-partner --address-prefix 203.0.113.0/24 --next-hop-type VirtualNetworkGateway
az network vnet subnet update --resource-group rg-net --vnet-name vnet-app \
--name snet-web --route-table rt-egressТарату да маңызды. Осы кестеде BGP тарату қосулы болса, үйренген префикстер сіз жазғандармен қатар көрінеді, ал нақтырақ үйренген префикс кеңірек UDR-ді жеңуі мүмкін. Таратуды тек UDR жиынтығы сол ішкі желі үшін өкілетті болуын қалағанда өшіріңіз.
Жергілікті жартысын аяқтаңыз, әйтпесе ағын сонда өледі
Жергілікті шлюз Azure дереккөзін қабылдауы, оны межелі орынға жіберуі және қосымшаға рұқсат беруі керек. Оның әрі қарайғы жолы интернет шығысы немесе басқа жеке секіріс болуы мүмкін, бірақ бұл шешім Azure маршрут кестесінде емес, жоспарда. Әдеттегі сәтсіздік — қайтару. Интернет межелі орын жеке Azure дереккөзін сізге қарай маршруттамайды, сондықтан жауап өзінің әдепкі шлюзіне барып өледі немесе мүлде шықпайды.
Екі дизайн мұны шешеді және олар бірін-бірі алмастырмайды. Дереккөзді шығыста аударыңыз, сонда межелі орын жергілікті желіге тиесілі жалпыға ортақ мекенжайға жауап береді. Немесе дереккөзді сақтап, жауаптар туннель арқылы қайтатындай маршрутталған қайтару қатынасын құрыңыз. Біреуін таңдап, қосымша қай мекенжайды көретінін жазып қойыңыз.
Селекторлар мен рұқсат тізімдері мұның бәрінен бөлек. Azure келесі секірісін таңдау VPN трафик селекторларын кеңейтпейді және сыртқы қызметтің дереккөз рұқсат тізімін өзгертпейді.
Межелі орын көретін дереккөзбен тексеріңіз
Сұранысты басқа ішкі желідегі секіріс хосттан емес, нақты жұмыс жүктемесінен жіберіңіз, содан кейін межелі орын көрген дереккөз мекенжайын оқыңыз. Сол бір мән екі қайтару дизайнының қайсысы орнатылғанын айтады. Содан кейін жауап жолын тексеріп, VM-ге қарай әдеттегі басқару трафигі әлі жұмыс істейтінін растаңыз, өйткені кездейсоқ қосылған әдепкі маршрут бұзылған қосымша ретінде көрінуден әлдеқайда ерте бұзылған SSH сессиясы ретінде көрінеді.
Таңдалған префикс арқылы транзит мәжбүрлі туннельдеуден әлдеқайда тар өзгеріс. Оны тар ұстаңыз, кері қайтару — бір маршрутты жою.