قم بتكوين اتصال بوابة VNet-to-VNet VPN باستخدام PowerShell
تساعدك هذه المقالة على الاتصال بالشبكات الظاهرية باستخدام نوع اتصال VNet-to-VNet. يمكن أن تكون الشبكات الافتراضية في نفس المناطق أو مناطق مختلفة، ومن نفس الاشتراكات أو مختلفة. عند توصيل الشبكات الظاهرية من اشتراكات مختلفة، لا تحتاج الاشتراكات إلى أن تكون مقترنة بنفس المستأجر. إذا كان لديك بالفعل شبكات ظاهرية تريد توصيلها وكانت في نفس الاشتراك، فقد تحتاج إلى استخدام خطوات مدخل Microsoft Azure بدلا من ذلك لأن العملية أقل تعقيدا. لاحظ أنه لا يمكنك توصيل VNets من اشتراكات مختلفة باستخدام مدخل Microsoft Azure.
في هذا التمرين، يمكنك إنشاء الشبكات الظاهرية المطلوبة (VNets) وبوابات VPN. لدينا خطوات لتوصيل VNets ضمن نفس الاشتراك، بالإضافة إلى الخطوات والأوامر للسيناريو الأكثر تعقيدا لتوصيل VNets في اشتراكات مختلفة. PowerShell cmdlet لإنشاء اتصال هو New-AzVirtualNetworkGatewayConnection.
-ConnectionType
هو Vnet2Vnet
.
نبذة عن ربط الشبكات الظاهرية
هناك طرق متعددة لتوصيل VNets. تصف الأقسام التالية طرقا مختلفة لتوصيل الشبكات الظاهرية.
اتصالات من VNet إلى VNet
يعد تكوين اتصال VNet-to-VNet طريقة جيدة لتوصيل VNets بسهولة. يشبه توصيل شبكة افتراضية بشبكة افتراضية أخرى باستخدام نوع اتصال VNet-to-VNet (VNet2VNet) إنشاء اتصال Site-to-Site IPsec إلى موقع محلي. يستخدم كلا نوعي الاتصال بوابة VPN لتوفير نفق آمن باستخدام IPsec / IKE، ويعمل كلاهما بنفس الطريقة عند الاتصال. الفرق بين أنواع الاتصال هو الطريقة التي يتم بها تكوين بوابة الشبكة المحلية. عند إنشاء اتصال VNet-to-VNet، لا ترى مساحة عنوان بوابة الشبكة المحلية. يتم إنشاؤه تلقائيا وتعبئته. إذا قمت بتحديث مساحة العنوان لأحد الشبكات الظاهرية، فإن الأخرى تعرف تلقائيًا كيفية التوجيه إلى مساحة العنوان المحدثة. عادة ما يكون إنشاء اتصال VNet-to-VNet أسرع وأسهل من إنشاء اتصال من موقع إلى موقع بين الشبكات الظاهرية.
من موقع إلى موقع (IPsec)
إذا كنت تعمل مع تكوين شبكة معقدة، فقد تفضل توصيل الشبكات الظاهرية الخاصة بك باستخدام خطوات الموقع إلى الموقع ، بدلا من خطوات VNet إلى VNet. عند استخدام خطوات من موقع إلى موقع، يمكنك إنشاء بوابات الشبكة المحلية وتكوينها يدويًا. تتعامل بوابة الشبكة المحلية لكل الشبكة الظاهرية مع الشبكة الظاهرية الأخرى كموقع محلي. يتيح لك ذلك تحديد مساحة عنوان إضافية لبوابة الشبكة المحلية من أجل توجيه نسبة استخدام الشبكة. إذا تغيرت مساحة العنوان الخاصة ب VNet، فستحتاج إلى تحديث بوابة الشبكة المحلية المقابلة لتعكس التغيير. لا يتم تحديثه تلقائيا.
اقتران VNet
قد تحتاج إلى التفكير في توصيل الشبكات الظاهرية الخاصة بك باستخدام تناظر VNet. لا يستخدم نظير الشبكة الظاهرية بوابة VPN وله قيود مختلفة. بالإضافة إلى ذلك، يتم حساب تسعير نظير VNet بشكل مختلف عن تسعير VNet-to-VNet VPN Gateway. لمزيد من المعلومات، راجع تناظر الشبكة الظاهرية.
لماذا إنشاء اتصال شبكة ظاهرية إلى شبكة ظاهرية؟
قد تحتاج إلى توصيل الشبكات الظاهرية باستخدام اتصال VNet-to-VNet للأسباب التالية:
التكرار الجغرافي عبر المناطق والوجود الجغرافي
- يمكنك إعداد النسخ المتماثل الجغرافي أو المزامنة الخاصة بك مع اتصال آمن دون تجاوز نقاط النهاية لواجهة الإنترنت.
- باستخدام Azure Traffic Manager وLoad Balancer، يمكنك إعداد عبء العمل المتوفر بشكل كبير مع التكرار الجغرافي عبر مناطق Azure المتعددة. أحد الأمثلة المهمة هو إعداد SQL Always On مع مجموعات قابلية وصول عالية التوفر AlwaysOn المنتشرة عبر مناطق Azure متعددة.
تطبيقات إقليمية متعددة المستويات مع عزل أو حدود إدارية
- داخل نفس المنطقة، يمكنك إعداد تطبيقات متعددة المستويات مع شبكات افتراضية متعددة متصلة معا بسبب العزلة أو المتطلبات الإدارية.
يمكن دمج اتصال شبكة ظاهرية إلى شبكة ظاهرية مع تكوينات متعددة المواقع. يتيح لك هذا إنشاء هياكل الشبكة التي تجمع بين الاتصال عبر الأماكن والاتصال الشبكي بين الخلايا.
ما هي خطوات VNet-to-VNet التي يجب أن أستخدمها؟
في هذه المقالة، سترى مجموعتين مختلفتين من الخطوات. مجموعة واحدة من الخطوات لـ VNets الموجودة في نفس الاشتراك وواحدة لـ VNets الموجودة في اشتراكات مختلفة. الفرق الرئيسي بين المجموعات هو أنه يجب عليك استخدام جلسات PowerShell منفصلة عند تكوين اتصالات VNets الموجودة في اشتراكات مختلفة.
في هذا التمرين، يمكنك دمج التكوينات أو اختيار التكوينات التي تريد العمل بها. تستخدم كافة التكوينات نوع اتصال VNet-to-VNet. تتدفق نسبة استخدام الشبكة بين VNets المتصلة مباشرة ببعضها البعض. في هذا التمرين، لا يتم توجيه حركة المرور من TestVNet4 إلى TestVNet5.
VNets الموجودة في نفس الاشتراك: تستخدم خطوات هذا التكوين TestVNet1 وTestVNet4.
VNets الموجودة في نفس الاشتراك: تستخدم خطوات هذا التكوين TestVNet1 و TestVNet5.
كيفية توصيل VNets الموجودة في نفس الاشتراك
يمكنك إكمال الخطوات التالية باستخدام Azure Cloud Shell. إذا كنت تفضل تثبيت أحدث إصدار من وحدة Azure PowerShell النمطية محليًا، فراجع كيفية تثبيت Azure PowerShell وتكوينه.
نظرا لأن إنشاء بوابة يستغرق 45 دقيقة أو أكثر، فإن Azure Cloud Shell ينفد بشكل دوري أثناء هذا التمرين. يمكنك إعادة تشغيل Cloud Shell بالنقر فوق الجزء العلوي الأيسر من terminal. تأكد من إعادة الإعلان عن أية متغيرات عند إعادة تشغيل terminal.
الخطوة 1 - تخطيط نطاقات عناوين IP الخاصة بك
في الخطوات التالية، يمكنك إنشاء شبكتين افتراضيتين مع الشبكات الفرعية والتكوينات الخاصة بالبوابة الخاصة بهما. ثم تقوم بإنشاء اتصال VPN بين جهازي VNets. من المهم تخطيط نطاقات عناوين IP لتكوين الشبكة. ضع في اعتبارك أنه يجب عليك التأكد من عدم تداخل أي من نطاقات VNet أو نطاقات الشبكة المحلية بأي شكل من الأشكال. في هذه الأمثلة، لا نقوم بتضمين خادم DNS. إذا كنت تريد دقة الاسم لشبكاتك الظاهرية، فراجعName resolution.
نحن نستخدم القيم التالية في الأمثلة:
قيم TestVNet1:
- الاسم الخاص بالشبكة الظاهرية: TestVNet1
- مجموعة الموارد: TestRG1
- الموقع: شرق الولايات المتحدة
- TestVNet1: 10.1.0.0/16
- الواجهة الأمامية: 10.1.0.0/24
- GatewaySubnet: 10.1.255.0/27
- GatewayName: VNet1GW
- Public IP: VNet1GWIP
- VPNType: RouteBased
- Connection(1to4): VNet1toVNet4
- Connection(1to5): VNet1toVNet5 (لـVNets في اشتراكات مختلفة)
- ConnectionType: VNet2VNet
قيم TestVNet4:
- اسم الشبكة الظاهرية: TestVNet4
- TestVNet2: 10.41.0.0/16
- FrontEnd: 10.41.0.0/24
- GatewaySubnet: 10.41.255.0/27
- Resource Group: TestRG4
- Location: West US
- GatewayName: VNet4GW
- IP العام: VNet4GWIP
- VPNType: RouteBased
- Connection: VNet4toVNet1
- ConnectionType: VNet2VNet
الخطوة 2 - إنشاء وتكوين TestVNet1
بالنسبة للخطوات التالية، يمكنك إما استخدام Azure Cloud Shell، أو يمكنك تشغيل PowerShell محليا. ولمزيد من المعلومات، اطلع على كيفية تثبيت Azure PowerShell وتكوينه.
إشعار
قد ترى تحذيرات تقول "سيتم تعديل نوع كائن الإخراج من cmdlet هذا في إصدار مستقبلي". هذا سلوك متوقع ويمكنك تجاهل هذه التحذيرات بأمان.
قم بتعريف المتغيرات الخاصة بك. يوضح المثال التالي المتغيرات باستخدام قيم هذه المقالة. في معظم الحالات، يجب استبدال القيم الخاصة بك. ومع ذلك، يمكنك استخدام هذه المتغيرات إذا كنت تقوم بتشغيل الخطوات لتصبح على دراية بهذا النوع من التكوين. قم بتعديل المتغيرات إذا لزم الأمر، ثم انسخها والصقها في وحدة تحكم PowerShell الخاصة بك.
$RG1 = "TestRG1" $Location1 = "East US" $VNetName1 = "TestVNet1" $FESubName1 = "FrontEnd" $VNetPrefix1 = "10.1.0.0/16" $FESubPrefix1 = "10.1.0.0/24" $GWSubPrefix1 = "10.1.255.0/27" $GWName1 = "VNet1GW" $GWIPName1 = "VNet1GWIP" $GWIPconfName1 = "gwipconf1" $Connection14 = "VNet1toVNet4" $Connection15 = "VNet1toVNet5"
قم بإنشاء مجموعة موارد.
New-AzResourceGroup -Name $RG1 -Location $Location1
إنشاء تكوينات الشبكة الفرعية لـ TestVNet1. ينشئ هذا المثال شبكة ظاهرية تسمى TestVNet1 وشبكتين فرعيتين، واحدة تسمى GatewaySubnet، وواحدة تسمى FrontEnd. عند استبدال القيم، من المهم دومًا تسمية الشبكة الفرعية للبوابة الخاصة بك وخصوصاً GatewaySubnet. إذا أعطيتها اسمًا آخر، سيفشل إنشاء البوابة الخاصة بك. لهذا السبب، لم يتم تعيينه عبر متغير في المثال.
يستخدم المثال التالي المتغيرات التي قمت بتعيينها مسبقًا. في هذا المثال، تستخدم الشبكة الفرعية للبوابة /27. في حين أنه من الممكن إنشاء شبكة فرعية للبوابة باستخدام /28 لهذا التكوين، نوصي بإنشاء شبكة فرعية أكبر تتضمن المزيد من العناوين عن طريق تحديد /27 على الأقل. سيسمح هذا بعناوين كافية لاستيعاب التكوينات الإضافية المحتملة التي قد ترغب فيها في المستقبل.
$fesub1 = New-AzVirtualNetworkSubnetConfig -Name $FESubName1 -AddressPrefix $FESubPrefix1 $gwsub1 = New-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -AddressPrefix $GWSubPrefix1
إنشاء TestVNet1.
New-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1 ` -Location $Location1 -AddressPrefix $VNetPrefix1 -Subnet $fesub1,$gwsub1
يجب أن تحتوي بوابة VPN على عنوان IP عام مخصص. عند إنشاء اتصال ببوابة VPN، فهذا هو عنوان IP الذي تحدده. استخدم المثال التالي لطلب عنوان IP عام.
$gwpip1 = New-AzPublicIpAddress -Name $GWIPName1 -ResourceGroupName $RG1 ` -Location $Location1 -AllocationMethod Static -Sku Standard
إنشاء تكوين البوابة. يحدد تكوين البوابة الشبكة الفرعية وعنوان 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 الخاص بك. تتطلب تكوينات شبكة إلى شبكة RouteBased VpnType. قد يستغرق إنشاء بوابة 45 دقيقة أو أكثر، اعتماداً على بوابة SKU المحددة.
New-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1 ` -Location $Location1 -IpConfigurations $gwipconf1 -GatewayType Vpn ` -VpnType RouteBased -GatewaySku VpnGw2 -VpnGatewayGeneration "Generation2"
بعد الانتهاء من الأوامر، سيستغرق إنشاء هذه البوابة 45 دقيقة أو أكثر. إذا كنت تستخدم Azure Cloud Shell، يمكنك إعادة تشغيل جلسة Cloud Shell بالنقر في الجزء العلوي الأيمن من محطة Cloud Shell الطرفية، ثم تكوين TestVNet4. لا تحتاج إلى الانتظار حتى تكتمل بوابة TestVNet1.
الخطوة 3: إنشاء TestVNet4 وتكوينه
إنشاء TestVNet4. استخدم الخطوات التالية، مع استبدال القيم بالقيم الخاصة بك عند الحاجة.
الاتصال المتغيرات الخاصة بك والإعلان عنها. تأكد من استبدال القيم بالقيم التي تريد استخدامها للتكوين.
$RG4 = "TestRG4" $Location4 = "West US" $VnetName4 = "TestVNet4" $FESubName4 = "FrontEnd" $VnetPrefix4 = "10.41.0.0/16" $FESubPrefix4 = "10.41.0.0/24" $GWSubPrefix4 = "10.41.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 $gwsub4 = New-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -AddressPrefix $GWSubPrefix4
إنشاء TestVNet4.
New-AzVirtualNetwork -Name $VnetName4 -ResourceGroupName $RG4 ` -Location $Location4 -AddressPrefix $VnetPrefix4 -Subnet $fesub4,$gwsub4
طلب عنوان IP عام.
$gwpip4 = New-AzPublicIpAddress -Name $GWIPName4 -ResourceGroupName $RG4 ` -Location $Location4 -AllocationMethod Static -Sku Standard
إنشاء تكوين البوابة.
$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 VpnGw2 -VpnGatewayGeneration "Generation2"
الخطوة 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 في اشتراكات مختلفة. لا تحتاج الاشتراكات إلى أن تكون مقترنة بنفس المستأجر.
الفرق بين هذه الخطوات والمجموعة السابقة هو أنه يجب تنفيذ بعض خطوات التكوين في جلسة عمل PowerShell منفصلة في سياق الاشتراك الثاني. خاصة عندما ينتمي الاشتراكان إلى منظمات مختلفة.
نظرا لتغيير سياق الاشتراك في هذا التمرين، قد تجد أنه من الأسهل استخدام PowerShell محليا على جهاز الكمبيوتر الخاص بك، بدلا من استخدام Azure Cloud Shell، عند الوصول إلى الخطوة 8.
الخطوة 5: إنشاء TestVNet1 وتكوينه
يجب إكمال الخطوة 1 و الخطوة 2 من القسم السابق لإنشاء وتكوين TestVNet1 وبوابة VPN لـ TestVNet1. لهذا التكوين، لست مطالبا بإنشاء TestVNet4 من القسم السابق، على الرغم من أنه إذا قمت بإنشائه، فلن يتعارض مع هذه الخطوات. بمجرد إكمال الخطوة 1 والخطوة 2، تابع الخطوة 6 لإنشاء TestVNet5.
الخطوة 6: التحقق من نطاقات عناوين IP
من المهم التأكد من أن مساحة عنوان IP للشبكة الظاهرية الجديدة، TestVNet5، لا تتداخل مع أي من نطاقات الشبكة الظاهرية أو نطاقات بوابة الشبكة المحلية. في هذا المثال، قد تنتمي الشبكات الظاهرية إلى مؤسسات مختلفة. لهذا التمرين، يمكنك استخدام القيم التالية لـ TestVNet5:
قيم TestVNet5:
- اسم الشبكة الظاهرية: TestVNet5
- مجموعة الموارد: TestRG5
- الموقع: شرق اليابان
- TestVNet5: 10.51.0.0/16
- الواجهة الأمامية: 10.51.0.0/24
- GatewaySubnet: 10.51.255.0.0/27
- GatewayName: VNet5GW
- Public IP: VNet5GWIP
- VPNType: RouteBased
- Connection: VNet5toVNet1
- ConnectionType: VNet2VNet
الخطوة 7: إنشاء TestVNet5 وتكوينه
يجب أن تتم هذه الخطوة في سياق الاشتراك الجديد. قد يتم تنفيذ هذا الجزء من قبل المسؤول في مؤسسة مختلفة تمتلك الاشتراك.
قم بتعريف المتغيرات الخاصة بك. تأكد من استبدال القيم بالقيم التي تريد استخدامها للتكوين.
$Sub5 = "Replace_With_the_New_Subscription_Name" $RG5 = "TestRG5" $Location5 = "Japan East" $VnetName5 = "TestVNet5" $FESubName5 = "FrontEnd" $GWSubName5 = "GatewaySubnet" $VnetPrefix5 = "10.51.0.0/16" $FESubPrefix5 = "10.51.0.0/24" $GWSubPrefix5 = "10.51.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 $gwsub5 = New-AzVirtualNetworkSubnetConfig -Name $GWSubName5 -AddressPrefix $GWSubPrefix5
إنشاء TestVNet5.
New-AzVirtualNetwork -Name $VnetName5 -ResourceGroupName $RG5 -Location $Location5 ` -AddressPrefix $VnetPrefix5 -Subnet $fesub5,$gwsub5
طلب عنوان IP عام.
$gwpip5 = New-AzPublicIpAddress -Name $GWIPName5 -ResourceGroupName $RG5 ` -Location $Location5 -AllocationMethod Static -Sku Standard
إنشاء تكوين البوابة.
$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 VpnGw2 -VpnGatewayGeneration "Generation2"
الخطوة 8: إنشاء الاتصالات
في هذا المثال، نظرًا لوجود البوابات في اشتراكات مختلفة، قمنا بتقسيم هذه الخطوة إلى جلستي PowerShell تم تمييزهما على أنهما [Subscription 1] و [Subscription 5].
[Subscription 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/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroupsTestRG1/providers/Microsoft.Network/virtualNetworkGateways/VNet1GW
[Subscription 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/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/resourceGroups/TestRG5/providers/Microsoft.Network/virtualNetworkGateways/VNet5GW
[Subscription 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/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/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'
[Subscription 5] إنشاء اتصال TestVNet5 إلى TestVNet1. هذه الخطوة مشابهة للخطوة السابقة، باستثناء أنك تقوم بإنشاء الاتصال من TestVNet5 إلى TestVNet1. تنطبق نفس عملية إنشاء كائن PowerShell استنادا إلى القيم التي تم الحصول عليها من الاشتراك 1 هنا أيضًا. في هذه الخطوة، تأكد من تطابق المفاتيح المشتركة.
سجل الدخول واتصل بالاشتراك 5 قبل تشغيل المثال التالي:
$vnet1gw = New-Object -TypeName Microsoft.Azure.Commands.Network.Models.PSVirtualNetworkGateway $vnet1gw.Name = "VNet1GW" $vnet1gw.Id = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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'
كيفية التحقق من اتصال
هام
NSGs على الشبكة الفرعية للبوابة غير مدعومة. قد يؤدي إقران مجموعة أمان الشبكة بهذه الشبكة الفرعية إلى توقف بوابة الشبكة الظاهرية (VPN وبوابات ExpressRoute) عن العمل كما هو متوقع. لمزيد من المعلومات حول مجموعات أمان الشبكة، يُرجى مراجعة ما هي مجموعة أمان الشبكة؟.
يمكنك التحقق من نجاح الاتصال الخاص بك باستخدام cmdlet 'Get-AzVirtualNetworkGatewayConnection'، مع أو بدون '-تصحيح'.
استخدم مثال cmdlet التالي، لتكوين القيم لمطابقة قيمك. إذا طلب منك ذلك، فحدد "A" لتشغيل "الكل". في المثال، يشير '-Name' إلى اسم الاتصال الذي تريد اختباره.
Get-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 -ResourceGroupName TestRG1
بعد انتهاء cmdlet، اعرض القيم. في المثال أدناه، تظهر حالة الاتصال على أنها "Connected" ويمكنك مشاهدة بايت الدخول والخروج.
"connectionStatus": "Connected", "ingressBytesTransferred": 33509044, "egressBytesTransferred": 4142431
الأسئلة الشائعة بشأن شبكة ظاهرية إلى شبكة ظاهرية
لمزيدٍ من المعلومات عن اتصالات VNet بـ VNet، راجع الأسئلة الشائعة بشأن بوابة VNet.
الخطوات التالية
- بمجرد اكتمال الاتصال، يمكنك إضافة الأجهزة الظاهرية إلى الشبكات الظاهرية. راجع وثائق الأجهزة الظاهرية لمزيد من المعلومات.
- للحصول على معلومات حول BGP، راجع نظرة عامة على BGP و كيفية تكوين BGP .