تكوين اتصال بوابة VPN من VNet-to-VNet باستخدام PowerShell
تساعدك هذه المقالة على الاتصال بالشبكات الظاهرية باستخدام نوع اتصال VNet-to-VNet. يمكن أن تكون الشبكات الافتراضية في نفس المناطق أو مناطق مختلفة ، ومن نفس الاشتراكات أو مختلفة. عند توصيل VNets من اشتراكات مختلفة، لا يلزم إقران الاشتراكات بنفس مستأجر Active Directory.
تنطبق الخطوات الواردة في هذه المقالة على نموذج نشر "إدارة الموارد" واستخدام PowerShell. يمكنك أيضا إنشاء هذا التكوين باستخدام أداة نشر مختلفة أو نموذج نشر مختلف عن طريق تحديد خيار مختلف من القائمة التالية:
حول توصيل VNets
هناك طرق متعددة لتوصيل VNets. تصف الأقسام أدناه طرقا مختلفة لتوصيل الشبكات الافتراضية.
اتصالات من VNet إلى VNet
يعد تكوين اتصال VNet-to-VNet طريقة جيدة لتوصيل VNets بسهولة. يشبه توصيل شبكة ظاهرية بشبكة ظاهرية أخرى باستخدام نوع اتصال VNet-to-VNet (VNet2VNet) إنشاء اتصال IPsec من موقع إلى موقع إلى موقع محلي. يستخدم كلا النوعين من الاتصال بوابة VPN لتوفير نفق آمن باستخدام IPsec / IKE ، وكلاهما يعمل بنفس الطريقة عند التواصل. الفرق بين أنواع الاتصال هو الطريقة التي يتم بها تكوين بوابة الشبكة المحلية. عند إنشاء اتصال VNet-to-VNet، لا تشاهد مساحة عنوان بوابة الشبكة المحلية. يتم إنشاؤه وتعبئته تلقائيا. إذا قمت بتحديث مساحة العنوان لأحد VNet، فإن VNet الآخر يعرف تلقائيا أنه يوجه إلى مساحة العنوان المحدثة. عادة ما يكون إنشاء اتصال VNet-to-VNet أسرع وأسهل من إنشاء اتصال من موقع إلى موقع بين VNets.
من موقع إلى موقع (IPsec)
إذا كنت تعمل مع تكوين شبكة معقدة، فقد تفضل توصيل VNets باستخدام خطوات الموقع إلى الموقع ، بدلا من خطوات VNet-to-VNet. عند استخدام خطوات من موقع إلى موقع، يمكنك إنشاء بوابات الشبكة المحلية وتكوينها يدويا. تتعامل بوابة الشبكة المحلية لكل VNet مع VNet الآخر كموقع محلي. يتيح لك ذلك تحديد مساحة عنوان إضافية لبوابة الشبكة المحلية من أجل توجيه حركة المرور. إذا تغيرت مساحة العنوان الخاصة ب VNet، فستحتاج إلى تحديث بوابة الشبكة المحلية المقابلة لتعكس التغيير. لا يتم تحديثه تلقائيا.
الإقران بين الشبكات الظاهرية
قد ترغب في التفكير في توصيل VNets باستخدام VNet Peering. لا يستخدم نظير VNet بوابة VPN وله قيود مختلفة. بالإضافة إلى ذلك ، يتم حساب تسعير نظير VNet بشكل مختلف عن تسعير بوابة VNet إلى VNet. لمزيد من المعلومات، راجع نظير VNet.
لماذا إنشاء اتصال VNet-to-VNet؟
قد ترغب في توصيل الشبكات الظاهرية باستخدام اتصال VNet-to-VNet للأسباب التالية:
التكرار الجغرافي عبر المناطق والوجود الجغرافي
- يمكنك إعداد النسخ المتماثل الجغرافي أو المزامنة الخاصة بك مع اتصال آمن دون تجاوز نقاط النهاية المواجهة للإنترنت.
- باستخدام Azure Traffic Manager وLoad Balancer، يمكنك إعداد عبء العمل المتوفر بشكل كبير مع التكرار الجغرافي عبر مناطق Azure المتعددة. أحد الأمثلة المهمة هو إعداد SQL التشغيل دائما مع مجموعات التوفر المنتشرة عبر مناطق Azure متعددة.
تطبيقات إقليمية متعددة المستويات مع عزل أو حدود إدارية
- داخل نفس المنطقة، يمكنك إعداد تطبيقات متعددة المستويات مع شبكات افتراضية متعددة متصلة معا بسبب العزلة أو المتطلبات الإدارية.
يمكن دمج اتصال VNet-to-VNet مع تكوينات متعددة المواقع. يتيح لك ذلك إنشاء طبولوجيات الشبكة التي تجمع بين الاتصال عبر المباني والاتصال بالشبكة الظاهرية.
ما هي خطوات VNet-to-VNet التي يجب أن أستخدمها؟
في هذه المقالة، سترى مجموعتين مختلفتين من الخطوات. مجموعة واحدة من الخطوات ل VNets التي توجد في نفس الاشتراك وأخرى ل VNets التي توجد في اشتراكات مختلفة. الفرق الرئيسي بين المجموعات هو أنه يجب عليك استخدام جلسات PowerShell منفصلة عند تكوين اتصالات VNets الموجودة في اشتراكات مختلفة.
لهذا التمرين ، يمكنك الجمع بين التكوينات ، أو مجرد اختيار التكوينات التي تريد العمل معها. تستخدم كافة التكوينات نوع اتصال VNet-to-VNet. تتدفق حركة مرور الشبكة بين VNets المتصلة مباشرة ببعضها البعض. في هذا التمرين، لا يتم توجيه حركة المرور من TestVNet4 إلى TestVNet5.
VNets الموجودة في نفس الاشتراك: تستخدم خطوات هذا التكوين TestVNet1 وTestVNet4.

VNets الموجودة في اشتراكات مختلفة: تستخدم خطوات هذا التكوين TestVNet1 و TestVNet5.

كيفية توصيل VNets الموجودة في نفس الاشتراك
قبل أن تبدأ
ملاحظة
تستخدم هذه المقالة الوحدة النمطية Azure Az PowerShell، وهي الوحدة النمطية PowerShell الموصى بها للتفاعل مع Azure. لبدء استخدام الوحدة النمطية Az PowerShell، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.
نظرا لأن إنشاء بوابة يستغرق 45 دقيقة أو أكثر، فستنتهي مهلة Azure Cloud Shell بشكل دوري أثناء هذا التمرين. يمكنك إعادة تشغيل Cloud Shell بالنقر فوق الجزء العلوي الأيسر من المحطة. تأكد من إعادة الإعلان عن أية متغيرات عند إعادة تشغيل المحطة الطرفية.
إذا كنت تفضل تثبيت أحدث إصدار من وحدة Azure PowerShell النمطية محليا، فراجع كيفية تثبيت Azure PowerShell وتكوينه.
الخطوة 1 - تخطيط نطاقات عناوين IP الخاصة بك
في الخطوات التالية، يمكنك إنشاء شبكتين ظاهريتين جنبا إلى جنب مع الشبكات الفرعية وتكوينات البوابات الخاصة بكل منهما. ثم تقوم بإنشاء اتصال VPN بين جهازي VNets. من المهم تخطيط نطاقات عناوين IP لتكوين الشبكة. ضع في اعتبارك أنه يجب عليك التأكد من عدم تداخل أي من نطاقات VNet أو نطاقات الشبكة المحلية بأي شكل من الأشكال. في هذه الأمثلة، لا نقوم بتضمين خادم DNS. إذا كنت تريد دقة الاسم لشبكاتك الظاهرية، فراجع دقة الاسم.
نستخدم القيم التالية في الأمثلة:
قيم TestVNet1:
- اسم VNet: TestVNet1
- مجموعة الموارد: TestRG1
- الموقع: شرق الولايات المتحدة الأمريكية
- TestVNet1: 10.11.0.0/16 10.12.0.0/16 &
- الواجهة الأمامية: 10.11.0.0/24
- الخلفية: 10.12.0.0/24
- بوابةالشبكة الفرعية: 10.12.255.0/27
- اسم البوابة: VNet1GW
- IP العام: VNet1GWIP
- VPNType: RouteBased
- اتصال(1to4): VNet1toVNet4
- الاتصال (1to5): VNet1toVNet5 (ل VNets في اشتراكات مختلفة)
- نوع الاتصال: VNet2VNet
قيم TestVNet4:
- اسم VNet: TestVNet4
- TestVNet2: 10.41.0.0/16 10.42.0.0/16 &
- الواجهة الأمامية: 10.41.0.0/24
- الخلفية : 10.42.0.0/24
- بوابةالشبكة الفرعية: 10.42.255.0/27
- مجموعة الموارد: TestRG4
- الموقع: غرب الولايات المتحدة
- اسم البوابة: VNet4GW
- IP العام: VNet4GWIP
- VPNType: RouteBased
- الاتصال: VNet4toVNet1
- نوع الاتصال: VNet2VNet
الخطوة 2 - إنشاء وتكوين TestVNet1
تحقق من إعدادات الاشتراك.
الاتصال إلى حسابك إذا كنت تقوم بتشغيل PowerShell محليا على جهاز الكمبيوتر الخاص بك. إذا كنت تستخدم Azure Cloud Shell، فأنت متصل تلقائيا.
Connect-AzAccountتحقق من الاشتراكات الخاصة بالحساب.
Get-AzSubscriptionإذا كان لديك أكثر من اشتراك واحد، فحدد الاشتراك الذي تريد استخدامه.
Select-AzSubscription -SubscriptionName nameofsubscriptionأعلن عن المتغيرات الخاصة بك. يعلن هذا المثال عن المتغيرات باستخدام قيم هذا التمرين. في معظم الحالات ، يجب عليك استبدال القيم بالقيم الخاصة بك. ومع ذلك، يمكنك استخدام هذه المتغيرات إذا كنت تعمل من خلال الخطوات لتصبح على دراية بهذا النوع من التكوين. قم بتعديل المتغيرات إذا لزم الأمر، ثم انسخها والصقها في وحدة تحكم PowerShell الخاصة بك.
$RG1 = "TestRG1" $Location1 = "East US" $VNetName1 = "TestVNet1" $FESubName1 = "FrontEnd" $BESubName1 = "Backend" $VNetPrefix11 = "10.11.0.0/16" $VNetPrefix12 = "10.12.0.0/16" $FESubPrefix1 = "10.11.0.0/24" $BESubPrefix1 = "10.12.0.0/24" $GWSubPrefix1 = "10.12.255.0/27" $GWName1 = "VNet1GW" $GWIPName1 = "VNet1GWIP" $GWIPconfName1 = "gwipconf1" $Connection14 = "VNet1toVNet4" $Connection15 = "VNet1toVNet5"إنشاء مجموعة موارد.
New-AzResourceGroup -Name $RG1 -Location $Location1إنشاء تكوينات الشبكة الفرعية ل TestVNet1. ينشئ هذا المثال شبكة ظاهرية تسمى TestVNet1 وثلاث شبكات فرعية، واحدة تسمى GatewaySubnet، وواحدة تسمى FrontEnd، وواحدة تسمى Backend. عند استبدال القيم ، من المهم أن تقوم دائما بتسمية الشبكة الفرعية للبوابة الخاصة بك على وجه التحديد GatewaySubnet. إذا قمت بتسميته شيئا آخر ، فشل إنشاء البوابة. لهذا السبب ، لا يتم تعيينه عبر المتغير أدناه.
يستخدم المثال التالي المتغيرات التي قمت بتعيينها مسبقا. في هذا المثال، تستخدم الشبكة الفرعية للبوابة /27. على الرغم من أنه من الممكن إنشاء شبكة فرعية للبوابة صغيرة مثل /29، إلا أننا نوصي بإنشاء شبكة فرعية أكبر تتضمن المزيد من العناوين عن طريق تحديد /28 أو /27 على الأقل. سيسمح ذلك بعناوين كافية لاستيعاب التكوينات الإضافية المحتملة التي قد تريدها في المستقبل.
$fesub1 = New-AzVirtualNetworkSubnetConfig -Name $FESubName1 -AddressPrefix $FESubPrefix1 $besub1 = New-AzVirtualNetworkSubnetConfig -Name $BESubName1 -AddressPrefix $BESubPrefix1 $gwsub1 = New-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -AddressPrefix $GWSubPrefix1إنشاء TestVNet1.
New-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1 ` -Location $Location1 -AddressPrefix $VNetPrefix11,$VNetPrefix12 -Subnet $fesub1,$besub1,$gwsub1اطلب تخصيص عنوان IP عام للبوابة التي ستقوم بإنشائها ل VNet الخاص بك. لاحظ أن طريقة AllocationMethod هي ديناميكية. لا يمكنك تحديد عنوان IP الذي تريد استخدامه. يتم تخصيصه ديناميكياً لبوابتك.
$gwpip1 = New-AzPublicIpAddress -Name $GWIPName1 -ResourceGroupName $RG1 ` -Location $Location1 -AllocationMethod Dynamicإنشاء تكوين البوابة. يحدد تكوين البوابة الشبكة الفرعية وعنوان IP العام المراد لاستخدامهما. استخدم المثال لإنشاء تكوين البوابة.
$vnet1 = Get-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1 $subnet1 = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet1 $gwipconf1 = New-AzVirtualNetworkGatewayIpConfig -Name $GWIPconfName1 ` -Subnet $subnet1 -PublicIpAddress $gwpip1إنشاء بوابة ل TestVNet1. في هذه الخطوة، يمكنك إنشاء بوابة الشبكة الظاهرية ل TestVNet1. تتطلب تكوينات VNet-to-VNet نوعا VpnType يستند إلى المسار. قد يستغرق إنشاء بوابة 45 دقيقة أو أكثر، اعتماداً على بوابة SKU المحددة.
New-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1 ` -Location $Location1 -IpConfigurations $gwipconf1 -GatewayType Vpn ` -VpnType RouteBased -GatewaySku VpnGw1
بعد الانتهاء من الأوامر، سيستغرق إنشاء هذه البوابة 45 دقيقة أو أكثر. إذا كنت تستخدم Azure Cloud Shell، فيمكنك إعادة تشغيل جلسة Cloud Shell بالنقر في الجزء العلوي الأيمن من محطة Cloud Shell، ثم تكوين TestVNet4. لا تحتاج إلى الانتظار حتى تكتمل بوابة TestVNet1.
الخطوة 3 - إنشاء وتكوين TestVNet4
بمجرد تكوين TestVNet1، قم بإنشاء TestVNet4. اتبع الخطوات أدناه ، واستبدل القيم بالقيم الخاصة بك عند الحاجة.
الاتصال المتغيرات الخاصة بك والإعلان عنها. تأكد من استبدال القيم بالقيم التي تريد استخدامها للتكوين.
$RG4 = "TestRG4" $Location4 = "West US" $VnetName4 = "TestVNet4" $FESubName4 = "FrontEnd" $BESubName4 = "Backend" $VnetPrefix41 = "10.41.0.0/16" $VnetPrefix42 = "10.42.0.0/16" $FESubPrefix4 = "10.41.0.0/24" $BESubPrefix4 = "10.42.0.0/24" $GWSubPrefix4 = "10.42.255.0/27" $GWName4 = "VNet4GW" $GWIPName4 = "VNet4GWIP" $GWIPconfName4 = "gwipconf4" $Connection41 = "VNet4toVNet1"إنشاء مجموعة موارد.
New-AzResourceGroup -Name $RG4 -Location $Location4إنشاء تكوينات الشبكة الفرعية ل TestVNet4.
$fesub4 = New-AzVirtualNetworkSubnetConfig -Name $FESubName4 -AddressPrefix $FESubPrefix4 $besub4 = New-AzVirtualNetworkSubnetConfig -Name $BESubName4 -AddressPrefix $BESubPrefix4 $gwsub4 = New-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -AddressPrefix $GWSubPrefix4إنشاء TestVNet4.
New-AzVirtualNetwork -Name $VnetName4 -ResourceGroupName $RG4 ` -Location $Location4 -AddressPrefix $VnetPrefix41,$VnetPrefix42 -Subnet $fesub4,$besub4,$gwsub4طلب عنوان IP عام.
$gwpip4 = New-AzPublicIpAddress -Name $GWIPName4 -ResourceGroupName $RG4 ` -Location $Location4 -AllocationMethod Dynamicإنشاء تكوين البوابة.
$vnet4 = Get-AzVirtualNetwork -Name $VnetName4 -ResourceGroupName $RG4 $subnet4 = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet4 $gwipconf4 = New-AzVirtualNetworkGatewayIpConfig -Name $GWIPconfName4 -Subnet $subnet4 -PublicIpAddress $gwpip4إنشاء بوابة TestVNet4. قد يستغرق إنشاء بوابة 45 دقيقة أو أكثر، اعتماداً على بوابة SKU المحددة.
New-AzVirtualNetworkGateway -Name $GWName4 -ResourceGroupName $RG4 ` -Location $Location4 -IpConfigurations $gwipconf4 -GatewayType Vpn ` -VpnType RouteBased -GatewaySku VpnGw1
الخطوة 4 - إنشاء الاتصالات
انتظر حتى تكتمل كلتا البوابتين. أعد تشغيل جلسة Azure Cloud Shell وانسخ المتغيرات والصقها من بداية الخطوة 2 والخطوة 3 في وحدة التحكم لإعادة إعلان القيم.
احصل على كل من بوابات الشبكة الافتراضية.
$vnet1gw = Get-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1 $vnet4gw = Get-AzVirtualNetworkGateway -Name $GWName4 -ResourceGroupName $RG4إنشاء اتصال TestVNet1 إلى TestVNet4. في هذه الخطوة، يمكنك إنشاء الاتصال من TestVNet1 إلى TestVNet4. سترى مفتاحاً مشتركاً مُشاراً إليه في الأمثلة. يمكنك استخدام قيمك للمفتاح المشترك. الشيء المهم هو أن المفتاح المشترك يجب أن يتطابق مع كلا الاتصالين. قد يستغرق إنشاء اتصال فترة قصيرة لإكماله.
New-AzVirtualNetworkGatewayConnection -Name $Connection14 -ResourceGroupName $RG1 ` -VirtualNetworkGateway1 $vnet1gw -VirtualNetworkGateway2 $vnet4gw -Location $Location1 ` -ConnectionType Vnet2Vnet -SharedKey 'AzureA1b2C3'إنشاء اتصال TestVNet4 إلى TestVNet1. تشبه هذه الخطوة الخطوة المذكورة أعلاه، إلا أنك تقوم بإنشاء الاتصال من TestVNet4 إلى TestVNet1. تأكد من تطابق المفاتيح المشتركة. سيتم تأسيس الاتصال بعد بضع دقائق.
New-AzVirtualNetworkGatewayConnection -Name $Connection41 -ResourceGroupName $RG4 ` -VirtualNetworkGateway1 $vnet4gw -VirtualNetworkGateway2 $vnet1gw -Location $Location4 ` -ConnectionType Vnet2Vnet -SharedKey 'AzureA1b2C3'تحقق من اتصالك. راجع القسم كيفية التحقق من اتصالك.
كيفية توصيل VNets الموجودة في اشتراكات مختلفة
في هذا السيناريو، يمكنك الاتصال TestVNet1 و TestVNet5. يوجد TestVNet1 و TestVNet5 في اشتراكات مختلفة. لا يلزم إقران الاشتراكات بنفس مستأجر Active Directory.
الفرق بين هذه الخطوات والمجموعة السابقة هو أنه يجب تنفيذ بعض خطوات التكوين في جلسة عمل PowerShell منفصلة في سياق الاشتراك الثاني. خاصة عندما ينتمي الاشتراكان إلى منظمات مختلفة.
نظرا لتغيير سياق الاشتراك في هذا التمرين ، قد تجد أنه من الأسهل استخدام PowerShell محليا على جهاز الكمبيوتر الخاص بك ، بدلا من استخدام Azure Cloud Shell ، عندما تصل إلى الخطوة 8.
الخطوة 5 - إنشاء وتكوين TestVNet1
يجب إكمال الخطوتين 1و2 من القسم السابق لإنشاء وتكوين TestVNet1 وبوابة VPN ل TestVNet1. لهذا التكوين، لست مطالبا بإنشاء TestVNet4 من القسم السابق، على الرغم من أنه إذا قمت بإنشائه، فلن يتعارض مع هذه الخطوات. بمجرد إكمال الخطوة 1 والخطوة 2 ، تابع الخطوة 6 لإنشاء TestVNet5.
الخطوة 6 - التحقق من نطاقات عناوين IP
من المهم التأكد من أن مساحة عنوان IP للشبكة الظاهرية الجديدة، TestVNet5، لا تتداخل مع أي من نطاقات VNet أو نطاقات بوابة الشبكة المحلية. في هذا المثال، قد تنتمي الشبكات الظاهرية إلى مؤسسات مختلفة. لهذا التمرين، يمكنك استخدام القيم التالية ل TestVNet5:
قيم TestVNet5:
- اسم VNet: TestVNet5
- مجموعة الموارد: TestRG5
- الموقع: شرق اليابان
- TestVNet5: 10.51.0.0/16 10.52.0.0/16 &
- الواجهة الأمامية: 10.51.0.0/24
- الواجهة الخلفية: 10.52.0.0/24
- بوابةالشبكة الفرعية: 10.52.255.0.0/27
- اسم البوابة: VNet5GW
- IP العام: VNet5GWIP
- VPNType: RouteBased
- اتصال: VNet5toVNet1
- نوع الاتصال: VNet2VNet
الخطوة 7 - إنشاء وتكوين TestVNet5
يجب أن تتم هذه الخطوة في سياق الاشتراك الجديد. قد يتم تنفيذ هذا الجزء من قبل المسؤول في مؤسسة مختلفة تمتلك الاشتراك.
أعلن عن المتغيرات الخاصة بك. تأكد من استبدال القيم بالقيم التي تريد استخدامها للتكوين.
$Sub5 = "Replace_With_the_New_Subscription_Name" $RG5 = "TestRG5" $Location5 = "Japan East" $VnetName5 = "TestVNet5" $FESubName5 = "FrontEnd" $BESubName5 = "Backend" $GWSubName5 = "GatewaySubnet" $VnetPrefix51 = "10.51.0.0/16" $VnetPrefix52 = "10.52.0.0/16" $FESubPrefix5 = "10.51.0.0/24" $BESubPrefix5 = "10.52.0.0/24" $GWSubPrefix5 = "10.52.255.0/27" $GWName5 = "VNet5GW" $GWIPName5 = "VNet5GWIP" $GWIPconfName5 = "gwipconf5" $Connection51 = "VNet5toVNet1"الاتصال الاشتراك 5. افتح وحدة تحكم PowerShell واتصل بحسابك. استخدم النموذج التالي لمساعدتك على الاتصال:
Connect-AzAccountتحقق من الاشتراكات الخاصة بالحساب.
Get-AzSubscriptionحدد الاشتراك الذي تريد استخدامه.
Select-AzSubscription -SubscriptionName $Sub5إنشاء مجموعة موارد جديدة.
New-AzResourceGroup -Name $RG5 -Location $Location5إنشاء تكوينات الشبكة الفرعية ل TestVNet5.
$fesub5 = New-AzVirtualNetworkSubnetConfig -Name $FESubName5 -AddressPrefix $FESubPrefix5 $besub5 = New-AzVirtualNetworkSubnetConfig -Name $BESubName5 -AddressPrefix $BESubPrefix5 $gwsub5 = New-AzVirtualNetworkSubnetConfig -Name $GWSubName5 -AddressPrefix $GWSubPrefix5إنشاء TestVNet5.
New-AzVirtualNetwork -Name $VnetName5 -ResourceGroupName $RG5 -Location $Location5 ` -AddressPrefix $VnetPrefix51,$VnetPrefix52 -Subnet $fesub5,$besub5,$gwsub5طلب عنوان IP عام.
$gwpip5 = New-AzPublicIpAddress -Name $GWIPName5 -ResourceGroupName $RG5 ` -Location $Location5 -AllocationMethod Dynamicإنشاء تكوين البوابة.
$vnet5 = Get-AzVirtualNetwork -Name $VnetName5 -ResourceGroupName $RG5 $subnet5 = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet5 $gwipconf5 = New-AzVirtualNetworkGatewayIpConfig -Name $GWIPconfName5 -Subnet $subnet5 -PublicIpAddress $gwpip5إنشاء بوابة TestVNet5.
New-AzVirtualNetworkGateway -Name $GWName5 -ResourceGroupName $RG5 -Location $Location5 ` -IpConfigurations $gwipconf5 -GatewayType Vpn -VpnType RouteBased -GatewaySku VpnGw1
الخطوة 8 - إنشاء الاتصالات
في هذا المثال، نظرا لأن البوابات موجودة في اشتراكات مختلفة، قمنا بتقسيم هذه الخطوة إلى جلستي PowerShell تم وضع علامة عليهما ك [اشتراك 1] و[اشتراك 5].
[الاشتراك 1] احصل على بوابة الشبكة الافتراضية للاشتراك 1. سجل الدخول واتصل بالاشتراك 1 قبل تشغيل المثال التالي:
$vnet1gw = Get-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1انسخ مخرجات العناصر التالية وأرسلها إلى مسؤول الاشتراك 5 عبر البريد الإلكتروني أو طريقة أخرى.
$vnet1gw.Name $vnet1gw.Idسيكون لهذين العنصرين قيم مشابهة لمخرجات المثال التالية:
PS D:\> $vnet1gw.Name VNet1GW PS D:\> $vnet1gw.Id /subscriptions/b636ca99-6f88-4df4-a7c3-2f8dc4545509/resourceGroupsTestRG1/providers/Microsoft.Network/virtualNetworkGateways/VNet1GW[الاشتراك 5] احصل على بوابة الشبكة الافتراضية للاشتراك 5. سجل الدخول واتصل بالاشتراك 5 قبل تشغيل المثال التالي:
$vnet5gw = Get-AzVirtualNetworkGateway -Name $GWName5 -ResourceGroupName $RG5انسخ مخرجات العناصر التالية وأرسلها إلى مسؤول الاشتراك 1 عبر البريد الإلكتروني أو طريقة أخرى.
$vnet5gw.Name $vnet5gw.Idسيكون لهذين العنصرين قيم مشابهة لمخرجات المثال التالية:
PS C:\> $vnet5gw.Name VNet5GW PS C:\> $vnet5gw.Id /subscriptions/66c8e4f1-ecd6-47ed-9de7-7e530de23994/resourceGroups/TestRG5/providers/Microsoft.Network/virtualNetworkGateways/VNet5GW[الاشتراك 1] إنشاء اتصال TestVNet1 إلى TestVNet5. في هذه الخطوة، يمكنك إنشاء الاتصال من TestVNet1 إلى TestVNet5. الفرق هنا هو أنه لا يمكن الحصول على $vnet 5gw مباشرة لأنه في اشتراك مختلف. ستحتاج إلى إنشاء كائن PowerShell جديد بالقيم التي تم توصيلها من الاشتراك 1 في الخطوات المذكورة أعلاه. استخدم المثال أدناه. استبدل الاسم والمعرف والمفتاح المشترك بقيمك الخاصة. الشيء المهم هو أن المفتاح المشترك يجب أن يتطابق مع كلا الاتصالين. قد يستغرق إنشاء اتصال فترة قصيرة لإكماله.
الاتصال إلى الاشتراك 1 قبل تشغيل المثال التالي:
$vnet5gw = New-Object -TypeName Microsoft.Azure.Commands.Network.Models.PSVirtualNetworkGateway $vnet5gw.Name = "VNet5GW" $vnet5gw.Id = "/subscriptions/66c8e4f1-ecd6-47ed-9de7-7e530de23994/resourceGroups/TestRG5/providers/Microsoft.Network/virtualNetworkGateways/VNet5GW" $Connection15 = "VNet1toVNet5" New-AzVirtualNetworkGatewayConnection -Name $Connection15 -ResourceGroupName $RG1 -VirtualNetworkGateway1 $vnet1gw -VirtualNetworkGateway2 $vnet5gw -Location $Location1 -ConnectionType Vnet2Vnet -SharedKey 'AzureA1b2C3'[الاشتراك 5] إنشاء اتصال TestVNet5 إلى TestVNet1. تشبه هذه الخطوة الخطوة المذكورة أعلاه، باستثناء أنك تقوم بإنشاء الاتصال من TestVNet5 إلى TestVNet1. تنطبق نفس عملية إنشاء كائن PowerShell استنادا إلى القيم التي تم الحصول عليها من الاشتراك 1 هنا أيضا. في هذه الخطوة، تأكد من تطابق المفاتيح المشتركة.
الاتصال إلى الاشتراك 5 قبل تشغيل المثال التالي:
$vnet1gw = New-Object -TypeName Microsoft.Azure.Commands.Network.Models.PSVirtualNetworkGateway $vnet1gw.Name = "VNet1GW" $vnet1gw.Id = "/subscriptions/b636ca99-6f88-4df4-a7c3-2f8dc4545509/resourceGroups/TestRG1/providers/Microsoft.Network/virtualNetworkGateways/VNet1GW " $Connection51 = "VNet5toVNet1" New-AzVirtualNetworkGatewayConnection -Name $Connection51 -ResourceGroupName $RG5 -VirtualNetworkGateway1 $vnet5gw -VirtualNetworkGateway2 $vnet1gw -Location $Location5 -ConnectionType Vnet2Vnet -SharedKey 'AzureA1b2C3'
كيفية التحقق من اتصال
هام
عند العمل مع الشبكات الفرعية للعبارة تجنب ربط مجموعة أمان شبكة اتصال (NSG) بالشبكة الفرعية للعبارة. قد يؤدي ربط مجموعة أمان شبكة اتصال بهذه الشبكة الفرعية إلى توقف عبارة الشبكة الظاهرية (VPN وعبارات Express Route) عن العمل كما متوقع. لمزيد من المعلومات حول مجموعات أمان الشبكة، يُرجى مراجعة ما هي مجموعة أمان الشبكة؟.
يمكنك التحقق من نجاح اتصالك باستخدام cmdlet "Get-AzVirtualNetworkGatewayConnection" ، مع أو بدون "-Debug".
استخدم مثال cmdlet التالي، لتكوين القيم لمطابقة قيمك. إذا طلب منك ذلك، فحدد "A" لتشغيل "الكل". في المثال، يشير "-Name" إلى اسم الاتصال الذي تريد اختباره.
Get-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 -ResourceGroupName TestRG1بعد انتهاء cmdlet، قم بعرض القيم. في المثال أدناه ، تظهر حالة الاتصال على أنها "متصل" ويمكنك رؤية بايت الدخول والخروج.
"connectionStatus": "Connected", "ingressBytesTransferred": 33509044, "egressBytesTransferred": 4142431
الأسئلة المتداولة حول VNet-to-VNet
تنطبق الأسئلة المتداولة حول VNet-to-VNet على اتصالات بوابة VPN. للحصول على معلومات حول نظير VNet، راجع نظير الشبكة الظاهرية.
هل يفرض Azure رسوما على حركة المرور بين VNets؟
حركة مرور VNet-to-VNet داخل نفس المنطقة مجانية لكلا الاتجاهين عند استخدام اتصال بوابة VPN. يتم فرض رسوم على حركة مرور الخروج من VNet إلى VNet عبر المناطق بمعدلات نقل البيانات الصادرة بين VNet استنادا إلى مناطق المصدر. لمزيد من المعلومات، راجع صفحة تسعير بوابة VPN. إذا كنت تقوم بتوصيل VNets باستخدام نظير VNet بدلا من بوابة VPN، فراجع تسعير الشبكة الظاهرية.
هل تنتقل حركة مرور VNet-to-VNet عبر الإنترنت؟
كلا. تنتقل حركة مرور VNet-to-VNet عبر العمود الفقري ل Microsoft Azure، وليس عبر الإنترنت.
هل يمكنني إنشاء اتصال VNet-to-VNet عبر مستأجري Azure Active Directory (AAD (دليل Azure النشط))؟
نعم، تعمل اتصالات VNet-to-VNet التي تستخدم بوابات Azure VPN عبر AAD (دليل Azure النشط) المستأجرين.
هل حركة مرور VNet-to-VNet آمنة؟
نعم ، إنه محمي بتشفير IPsec / IKE.
هل أحتاج إلى جهاز VPN لتوصيل VNets معا؟
كلا. لا يتطلب توصيل شبكات Azure الظاهرية المتعددة معا جهاز VPN ما لم يكن الاتصال عبر المباني مطلوبا.
هل يجب أن تكون أجهزة VNets الخاصة بي في نفس المنطقة؟
كلا. يمكن أن تكون الشبكات الظاهرية في نفس مناطق (مواقع) Azure أو مختلفة.
إذا لم تكن VNets في نفس الاشتراك، فهل يجب أن تكون الاشتراكات مقترنة بنفس مستأجر Active Directory؟
كلا.
هل يمكنني استخدام VNet-to-VNet لتوصيل الشبكات الظاهرية في مثيلات Azure منفصلة؟
كلا. يدعم VNet-to-VNet توصيل الشبكات الظاهرية داخل نفس مثيل Azure. على سبيل المثال، لا يمكنك إنشاء اتصال بين Azure العمومي ومثيلات Azure الحكومية الصينية/الألمانية/الأمريكية. فكر في استخدام اتصال VPN من موقع إلى موقع لهذه السيناريوهات.
هل يمكنني استخدام VNet-to-VNet جنبا إلى جنب مع اتصالات متعددة المواقع؟
نعم. يمكن استخدام اتصال الشبكة الافتراضية في وقت واحد مع الشبكات الافتراضية الخاصة متعددة المواقع.
كم عدد المواقع المحلية والشبكات الافتراضية التي يمكن لشبكة افتراضية واحدة الاتصال بها؟
راجع جدول متطلبات البوابة .
هل يمكنني استخدام VNet-to-VNet لتوصيل الأجهزة الظاهرية أو الخدمات السحابية خارج VNet؟
كلا. يدعم VNet-to-VNet توصيل الشبكات الافتراضية. لا يدعم توصيل الأجهزة الظاهرية أو الخدمات السحابية غير الموجودة في شبكة افتراضية.
هل يمكن لخدمة سحابية أو نقطة نهاية موازنة التحميل أن تمتد عبر VNets؟
كلا. لا يمكن أن تمتد الخدمة السحابية أو نقطة النهاية لموازنة الأحمال عبر الشبكات الافتراضية، حتى إذا كانت متصلة معا.
هل يمكنني استخدام نوع VPN قائم على السياسة للاتصالات من VNet إلى VNet أو اتصالات متعددة المواقع؟
كلا. تتطلب اتصالات VNet-to-VNet ومتعددة المواقع بوابات Azure VPN مع أنواع VPN المستندة إلى المسار (التي كانت تسمى سابقا التوجيه الديناميكي).
هل يمكنني توصيل VNet بنوع VPN يستند إلى المسار بشبكة VNet أخرى بنوع VPN قائم على السياسة؟
لا، يجب أن تستخدم كلتا الشبكتين الظاهريتين شبكات VPN قائمة على المسار (كانت تسمى سابقا التوجيه الديناميكي).
هل تشترك أنفاق VPN في النطاق الترددي؟
نعم. تشترك جميع أنفاق VPN الخاصة بالشبكة الافتراضية في النطاق الترددي المتاح على بوابة Azure VPN ونفس اتفاقية مستوى الخدمة (SLA) لوقت تشغيل بوابة VPN في Azure.
هل الأنفاق الزائدة عن الحاجة مدعومة؟
يتم دعم الأنفاق الزائدة بين زوج من الشبكات الظاهرية عند تكوين بوابة شبكة ظاهرية واحدة على أنها نشطة ونشطة.
هل يمكنني الحصول على مساحات عناوين متداخلة لتكوينات VNet-to-VNet؟
كلا. لا يمكن أن يكون لديك نطاقات عناوين IP متداخلة.
هل يمكن أن تكون هناك مساحات عناوين متداخلة بين الشبكات الافتراضية المتصلة والمواقع المحلية المحلية؟
كلا. لا يمكن أن يكون لديك نطاقات عناوين IP متداخلة.
الخطوات التالية
- بمجرد اكتمال الاتصال، يمكنك إضافة أجهزة ظاهرية إلى شبكاتك الظاهرية. راجع وثائق الأجهزة الظاهرية لمزيد من المعلومات.
- للحصول على معلومات حول BGP، راجع نظرة عامة على BGP و كيفية تكوين BGP .