VPN با IP خصوصی در Azure روی ExpressRoute بدون NVA
Azure VPN Gateway میتواند IPsec را روی یک نشانی خصوصی از طریق ExpressRoute پایان دهد. هر دو پرچم را فعال کنید، سپس جلوی مسیرهای peering مستقیم را بگیرید تا تونل را دور نزنند.
افسانه این است که رمزگذاری ترافیک روی peering خصوصی ExpressRoute به یک دستگاه مجازی شبکه نیاز دارد. اینگونه نیست. Azure از یک Site-to-Site VPN Gateway پشتیبانی میکند که نقطه پایانی تونل آن یک نشانی خصوصی RFC1918 است که از طریق مدار حمل میشود، و دستگاه اختیاری است نه ساختاری. آنچه افسانه دستگاه پنهان میکند همان بخشی است که واقعاً درد دارد: فعالکردن نقطه پایانی خصوصی روی یک شیء بهجای دو، و اینکه بگذاریم یک مسیر peering مستقیم بیصدا بر مسیر رمزگذاریشده پیروز شود.
افسانه از کجا آمد
این ادعا پیشینهای محترم دارد. سالها دستور عملی IPsec روی peering خصوصی یک NVA بود، چون دروازه مدیریتشده فقط نقاط پایانی عمومی را ارائه میکرد. این تغییر کرد، و پاسخهایی که پیش از تغییر نوشته شدهاند هنوز در گفتوگوهایی نقل میشوند که کسی تاریخ را بررسی نمیکند. اصلاح باریک است: دروازه VPN با نشانی خصوصی وجود دارد، و نقطه پایانی را تغییر میدهد، نه منطق مسیریابی پیرامون آن را.
هیچکدام از اینها NVA را بازنشسته نمیکند. این فرض را بازنشسته میکند که دستگاه تنها راه تحقق نیاز است.
نقطه پایانی خصوصی را در هر دو سطح فعال کنید
از یک اتصال peering خصوصی ExpressRoute کارکننده شروع کنید که به VNet میزبان دروازه VPN متصل است. سمت محلی باید از قبل از طریق آن مدار به نشانیهای خصوصی مربوط دسترسی داشته باشد، چون تونل از آن نشانیها بهعنوان حمل استفاده خواهد کرد. سپس پیشنیاز دروازه: رویه Microsoft برای VPN با IP خصوصی به دروازهای ساختهشده روی منبع IP عمومی Standard نیاز دارد. نشانیدهی خصوصی تونل این نیاز را برنمیدارد، که کسانی را که گمان میکنند «خصوصی» یعنی «هیچ IP عمومی در هیچکجا»، شگفتزده میکند.
اکنون پرچم را در هر دو جا فعال کنید. پیکربندی دروازه کلید خودش را برای IPهای خصوصی دارد، و اتصال Site-to-Site جداگانه کلید دومی دارد که آن اتصال را وادار میکند نشانی خصوصی را به کار ببرد. تنظیم یکی و نه دیگری شایعترین پیکربندی ناقص است؛ تونل یا برقرار نمیشود یا به نقطه پایانی نادرست برقرار میشود.
az network vnet-gateway update -g rg-net -n vpngw-prod --set enablePrivateIpAddress=true
az network vpn-connection update -g rg-net -n conn-onprem --set enablePrivateIpAddress=true
az network vnet-gateway show -g rg-net -n vpngw-prod \
--query '{sku:sku,priv:enablePrivateIpAddress,active:activeActive}'
نام ویژگیها را با نسخه CLI نصبشده بررسی کنید، چون برچسبهای پورتال و ویژگیهای CLI همیشه یک عبارت ندارند. دروازه فعال-فعال دو نشانی تونل خصوصی ارائه میکند، و دستگاه محلی باید هر دو همتا را پیکربندیشده داشته باشد اگر میخواهید آن افزونگی معنایی داشته باشد. BGP فقط برای بالا آوردن این تونل با نشانی خصوصی لازم نیست، هرچند معمولاً بخشی از روش توزیع پیشوندهاست.
افسانه دوم: تونل برقرارشده ترافیک شما را رمزگذاری میکند
اکنون دو مسیر به شبکه برنامه میرسد: مسیر مستقیم peering خصوصی و مسیر از طریق VPN. هر دو کار میکنند. فقط یکی این لایه IPsec را اعمال میکند. Microsoft مستند میکند که وقتی پیشوندهای یکسان از طریق ExpressRoute و از طریق VPN اعلام میشوند، Azure مسیر مستقیم ExpressRoute را ترجیح میدهد، پس تونل سالم با شمارندههای سالم هیچ چیزی درباره مقصد بستههای برنامه اثبات نمیکند.
روشهای هدایت مستندشده عبارتاند از یک محدوده پوششی روی ExpressRoute با محدوده محافظتشده مشخصتر روی VPN، یا پیشوندهای ناهمپوشان روی دو مسیر. برای نمونه، peering خصوصی میتواند 10.40.0.0/16 را حمل کند در حالی که VPN پیشوند 10.40.12.0/24 را اعلام میکند. پیشوند مشخصتر برنده میشود و بقیه محدوده مستقیم میماند.
az network vnet-gateway list-advertised-routes -g rg-net -n vpngw-prod
az network vnet-gateway list-learned-routes -g rg-net -n vpngw-prod
az network vpn-connection show -g rg-net -n conn-onprem --query connectionStatus
همین بررسی را در جهت محلی انجام دهید، چون ترجیح مسیریاب شما تعیین میکند ترافیک خروجی از کدام راه خارج شود. و حملونقل خود تونل را روی مسیر ExpressRoute نگه دارید؛ مسیری که نقطه پایانی خصوصی دروازه را به داخل تونل بکشد، تونل را به خودش وابسته میکند.
تصمیم بگیرید وقتی تونل قطع میشود چه اتفاقی میافتد
یک مسیر VPN مشخصتر وقتی تونل قطع میشود ناپدید میشود، در حالی که مسیر مستقیم گستردهتر میماند. آنگاه ترافیک بدون رمزگذاری جریان مییابد و همهچیز سالم به نظر میرسد، که بدترین حالت شکست برای نیازی است که برای تضمین رمزگذاری وجود دارد. اگر نیاز آن عقبنشینی را ممنوع میکند، مسیریابی و سیاست دسترسی باید آن را صریح بگویند نه اینکه به دسترسپذیری تونل تکیه کنند.
بنویسید کدام پیشوندها میتوانند مستقیماً در دسترس بمانند و کدام باید وقتی مسیر رمزگذاریشده غایب است متوقف شوند. سپس حالت مجاز را با ترافیک واقعی بیازمایید و شمارندههای اتصال را مقایسه کنید، چون جدول مسیر بهتنهایی به شما نمیگوید آیا نیاز رمزگذاری هنوز برقرار است.
این چارچوب همچنین به شما امکان میدهد یک NVA را بر اساس ویژگیهای واقعیاش ارزیابی کنید، مانند چند تونل، توان عبوری یا بازرسی فروشنده، بهجای خرید یکی فقط چون نقطه پایانی خصوصی است.