Mengonfigurasi ExpressRoute dan koneksi berdampingan situs-ke-situs menggunakan PowerShell

Artikel ini membantu Anda mengonfigurasi koneksi ExpressRoute dan VPN situs-ke-situs yang hidup berdampingan. Memiliki kemampuan untuk mengonfigurasi VPN situs-ke-situs dan ExpressRoute memiliki beberapa keuntungan. Anda dapat mengonfigurasi VPN situs-ke-situs sebagai jalur failover aman untuk ExpressRoute, atau menggunakan VPN situs-ke-situs untuk menyambungkan ke situs yang tidak terhubung melalui ExpressRoute. Kami membahas langkah-langkah untuk mengonfigurasi kedua skenario dalam artikel ini. Artikel ini berlaku untuk model penyebaran Resource Manager.

Mengonfigurasi KONEKSI VPN situs-ke-situs dan ExpressRoute yang berdampingan memiliki beberapa keuntungan:

  • Anda dapat mengonfigurasi VPN situs-ke-situs sebagai jalur failover aman untuk ExpressRoute.
  • Atau, Anda dapat menggunakan VPN situs-ke-situs untuk menyambungkan ke situs yang tidak tersambung melalui ExpressRoute.

Langkah-langkah untuk mengonfigurasi kedua skenario dibahas dalam artikel ini. Artikel ini berlaku untuk model penyebaran Resource Manager dan menggunakan PowerShell. Anda juga dapat mengonfigurasi skenario ini menggunakan portal Azure, meskipun dokumentasi belum tersedia. Anda dapat mengonfigurasi salah satu gateway terlebih dahulu. Biasanya, Anda tidak mengalami waktu henti saat menambahkan gateway atau koneksi gateway baru.

Catatan

Jika Anda ingin membuat VPN situs-ke-situs melalui sirkuit ExpressRoute, lihat VPN situs-ke-situs melalui peering Microsoft.

Batasan dan pembatasan

  • Hanya gateway VPN berbasis rute yang didukung. Anda harus menggunakan VPN Gateway berbasis rute. Anda juga dapat menggunakan gateway VPN berbasis rute dengan koneksi VPN yang dikonfigurasi untuk 'pemilih lalu lintas berbasis kebijakan' seperti yang dijelaskan di Menyambungkan ke beberapa perangkat VPN berbasis kebijakan.
  • Konfigurasi koeksistris ExpressRoute-VPN Gateway tidak didukung pada SKU Dasar.
  • Jika Anda ingin menggunakan perutean transit antara ExpressRoute dan VPN, ASN Azure VPN Gateway harus diatur ke 65515, dan Azure Route Server harus digunakan. Azure VPN Gateway mendukung protokol perutean BGP. Agar ExpressRoute dan Azure VPN bekerja sama, Anda harus mempertahankan Nomor Sistem Otonom gateway Azure VPN Anda pada nilai defaultnya, 65515. Jika sebelumnya Anda memilih ASN selain 65515 dan mengubah pengaturan menjadi 65515, Anda harus menyetel ulang gateway VPN agar pengaturan diterapkan.
  • Subnet gateway harus /27 atau awalan yang lebih pendek, seperti /26, /25, atau Anda menerima pesan kesalahan saat menambahkan gateway jaringan virtual ExpressRoute.
  • Koeksistensi dalam jaringan virtual tumpukan ganda tidak didukung. Jika Anda menggunakan dukungan ExpressRoute IPv6 dan gateway ExpressRoute tumpukan ganda, koeksistensi dengan VPN Gateway tidak dimungkinkan.

Desain konfigurasi

Mengonfigurasi VPN situs-ke-situs sebagai jalur failover untuk ExpressRoute

Anda dapat mengonfigurasi koneksi VPN situs-ke-situs sebagai cadangan untuk koneksi ExpressRoute Anda. Koneksi ini hanya berlaku untuk jaringan virtual yang ditautkan ke jalur peering privat Azure. Tidak ada solusi failover berbasis VPN untuk layanan yang dapat diakses melalui peering Azure Microsoft. Sirkuit ExpressRoute selalu menjadi penghubung utama. Data mengalir melalui jalur VPN situs-ke-situs hanya jika sirkuit ExpressRoute gagal. Untuk menghindari perutean asimetris, konfigurasi jaringan lokal Anda juga harus lebih memilih sirkuit ExpressRoute daripada VPN situs-ke-situs. Anda dapat lebih memilih jalur ExpressRoute dengan menetapkan preferensi lokal yang lebih tinggi untuk rute yang diterima ExpressRoute.

Catatan

  • Jika Anda mengaktifkan peering Microsoft ExpressRoute, Anda dapat menerima alamat IP publik gateway AZURE VPN Anda pada koneksi ExpressRoute. Untuk menyiapkan koneksi VPN situs-ke-situs Anda sebagai cadangan, Anda harus mengonfigurasi jaringan lokal agar koneksi VPN dirutekan ke Internet.

  • Meskipun jalur sirkuit ExpressRoute lebih disukai daripada VPN situs-ke-situs ketika kedua rute sama, Azure menggunakan kecocokan awalan terpanjang untuk memilih rute menuju tujuan paket.

Diagram that shows a site-to-site VPN connection as a backup for ExpressRoute.

Mengonfigurasi VPN situs-ke-situs untuk menyambungkan ke situs yang tidak tersambung melalui ExpressRoute

Anda dapat mengonfigurasi jaringan Anda di mana beberapa situs terhubung langsung ke Azure melalui VPN situs-ke-situs, dan beberapa situs terhubung melalui ExpressRoute.

Coexist

Memilih langkah-langkah yang akan digunakan

Ada dua set prosedur berbeda untuk dipilih. Prosedur konfigurasi yang Anda pilih akan tergantung pada apakah Anda memiliki jaringan virtual yang sudah ada yang ingin Anda sambungkan atau Anda ingin membuat jaringan virtual baru.

  • Saya tidak memiliki VNet dan perlu membuatnya.

    Jika Anda belum memiliki jaringan virtual, prosedur ini memandikan Anda membuat jaringan virtual baru menggunakan model penyebaran Resource Manager dan membuat koneksi ExpressRoute dan VPN situs-ke-situs baru.

  • Saya sudah memiliki VNet model penyebaran Resource Manager.

    Anda mungkin sudah memiliki jaringan virtual dengan koneksi VPN situs-ke-situs yang ada atau koneksi ExpressRoute. Dalam skenario ini, jika prefiks subnet gateway adalah /28 atau lebih panjang (/29, /30, dll.), Anda harus menghapus gateway yang ada. Langkah-langkah untuk mengonfigurasi koneksi yang sudah ada untuk bagian VNet yang sudah ada memandu Anda menghapus gateway, lalu membuat koneksi ExpressRoute dan VPN situs-ke-situs baru.

    Jika Anda menghapus dan membuat ulang gateway, Anda mengalami waktu henti untuk koneksi lintas tempat Anda. Namun, VM dan layanan Anda dapat terhubung melalui internet saat Anda mengonfigurasi gateway Jika dikonfigurasi untuk melakukannya.

Sebelum Anda mulai

Langkah-langkah dan contoh dalam artikel ini menggunakan modul Az Azure PowerShell. Untuk memasang modul Az secara lokal di komputer Anda, lihat Memasang Azure PowerShell. Untuk mempelajari selengkapnya tentang modul Az baru, lihat Memperkenalkan modul Az Azure PowerShell baru. Cmdlet PowerShell sering diperbarui. Jika Anda tidak menjalankan versi terbaru, nilai yang ditetapkan dalam instruksi mungkin gagal. Untuk menemukan versi PowerShell yang diinstal di sistem Anda, gunakan cmdlet Get-Module -ListAvailable Az.

Anda dapat menggunakan Azure Cloud Shell untuk menjalankan sebagian besar perintah cmdlet PowerShell dan CLI, ketimbang menginstal Azure PowerShell atau CLI secara lokal. Azure Cloud Shell adalah shell interaktif gratis yang memiliki alat Azure umum yang telah diinstal sebelumnya dan dikonfigurasi untuk digunakan dengan akun Anda. Untuk menjalankan segala kode yang terkandung dalam artikel ini di Azure Cloud Shell, buka sesi Cloud Shell, gunakan tombol Salin pada blok kode untuk menyalin kode, dan menempelkannya ke sesi Cloud Shell dengan Ctrl+Shift+V di Windows dan Linux, atau Cmd+Shift+V di macOS. Teks yang ditempelkan tidak dijalankan secara otomatis, tekan Enter untuk menjalankan kode.

Ada beberapa cara untuk membuka Cloud Shell:

Opsi Tautan
Pilih Coba di sudut kanan atas blok kode. Cloud Shell in this article
Buka Cloud Shell di browser Anda. https://shell.azure.com/powershell
Pilih tombol Cloud Shell pada menu pada bagian kanan atas di portal Microsoft Azure. Cloud Shell in the portal

Prosedur ini memandu Anda membuat koneksi VNet dan situs-ke-situs dan ExpressRoute yang hidup berdampingan. cmdlet yang Anda gunakan untuk konfigurasi ini mungkin sedikit berbeda dari apa yang mungkin Anda kenal. Pastikan untuk menggunakan cmdlet yang ditentukan dalam instruksi ini.

  1. Masuk dan pilih langganan Anda.

    Jika Anda menggunakan Azure Cloud Shell, Anda masuk ke akun Azure Anda secara otomatis setelah mengklik 'Coba'. Untuk masuk secara lokal, buka konsol PowerShell Anda dengan hak istimewa yang lebih tinggi dan jalankan cmdlet untuk terhubung.

    Connect-AzAccount
    

    Jika Anda memiliki lebih dari satu langganan, dapatkan daftar langganan Azure Anda.

    Get-AzSubscription
    

    Tentukan langganan yang ingin Anda gunakan.

    Select-AzSubscription -SubscriptionName "Name of subscription"
    
  2. Tentukan variabel dan buat grup sumber daya.

    $location = "Central US"
    $resgrp = New-AzResourceGroup -Name "ErVpnCoex" -Location $location
    $VNetASN = 65515
    
  3. Buat jaringan virtual termasuk GatewaySubnet. Untuk informasi selengkapnya tentang membuat jaringan virtual, lihat Membuat jaringan virtual. Untuk informasi selengkapnya tentang membuat subnet, lihat Membuat subnet

    Penting

    GatewaySubnet harus berupa awalan /27 atau yang lebih pendek, seperti /26 atau /25.

    Buat jaringan virtual baru.

    $vnet = New-AzVirtualNetwork -Name "CoexVnet" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -AddressPrefix "10.200.0.0/16"
    

    Tambahkan dua subnet bernama App dan GatewaySubnet.

    Add-AzVirtualNetworkSubnetConfig -Name "App" -VirtualNetwork $vnet -AddressPrefix "10.200.1.0/24"
    Add-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet -AddressPrefix "10.200.255.0/24"
    

    Simpan konfigurasi jaringan virtual.

    $vnet = Set-AzVirtualNetwork -VirtualNetwork $vnet
    
  4. Selanjutnya, buat gateway VPN situs-ke-situs Anda. Untuk informasi selengkapnya tentang konfigurasi gateway VPN, lihat Mengonfigurasi VNet dengan koneksi situs-ke-situs. GatewaySku hanya didukung untuk gateway VPN VpnGw1, VpnGw2, VpnGw3, Standar, dan HighPerformance. Konfigurasi berdampingan ExpressRoute-VPN Gateway tidak didukung pada SKU Dasar. VpnType harus RouteBased.

    $gwSubnet = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet
    $gwIP = New-AzPublicIpAddress -Name "VPNGatewayIP" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -AllocationMethod Dynamic
    $gwConfig = New-AzVirtualNetworkGatewayIpConfig -Name "VPNGatewayIpConfig" -SubnetId $gwSubnet.Id -PublicIpAddressId $gwIP.Id
    New-AzVirtualNetworkGateway -Name "VPNGateway" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -IpConfigurations $gwConfig -GatewayType "Vpn" -VpnType "RouteBased" -GatewaySku "VpnGw1"
    

    Gateway Azure VPN mendukung protokol perutean BGP. Anda dapat menentukan ASN (Nomor AS) untuk jaringan virtual dengan menambahkan -Asn bendera dalam perintah berikut. Tidak menentukan Asn parameter default ke nomor AS ke 65515.

    $azureVpn = New-AzVirtualNetworkGateway -Name "VPNGateway" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -IpConfigurations $gwConfig -GatewayType "Vpn" -VpnType "RouteBased" -GatewaySku "VpnGw1"
    

    Catatan

    Untuk gateway yang ada berdampingan, Anda harus menggunakan ASN default 65515. Untuk informasi selengkapnya, lihat batasan dan batasan.

    Anda dapat menemukan IP peering BGP dan nomor AS yang digunakan Azure untuk gateway VPN dengan menjalankan $azureVpn.BgpSettings.BgpPeeringAddress dan $azureVpn.BgpSettings.Asn. Untuk informasi selengkapnya, lihat Mengonfigurasi BGP untuk Azure VPN Gateway.

  5. Buat entitas gateway VPN situs lokal. Perintah ini tidak mengonfigurasi gateway VPN lokal Anda. Sebaliknya, ini memungkinkan Anda menyediakan pengaturan gateway lokal, seperti IP publik dan ruang alamat lokal, agar gateway Azure VPN dapat terhubung ke sana.

    Jika perangkat VPN lokal Anda hanya mendukung perutean statis, Anda dapat mengonfigurasi rute statis dengan cara berikut:

    $MyLocalNetworkAddress = @("10.100.0.0/16","10.101.0.0/16","10.102.0.0/16")
    $localVpn = New-AzLocalNetworkGateway -Name "LocalVPNGateway" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -GatewayIpAddress *<Public IP>* -AddressPrefix $MyLocalNetworkAddress
    

    Jika perangkat VPN lokal Anda mendukung BGP dan Anda ingin mengaktifkan perutean dinamis, Anda perlu mengetahui IP peering BGP dan nomor AS perangkat VPN lokal Anda.

    $localVPNPublicIP = "<Public IP>"
    $localBGPPeeringIP = "<Private IP for the BGP session>"
    $localBGPASN = "<ASN>"
    $localAddressPrefix = $localBGPPeeringIP + "/32"
    $localVpn = New-AzLocalNetworkGateway -Name "LocalVPNGateway" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -GatewayIpAddress $localVPNPublicIP -AddressPrefix $localAddressPrefix -BgpPeeringAddress $localBGPPeeringIP -Asn $localBGPASN
    
  6. Konfigurasikan perangkat VPN lokal Anda untuk terhubung ke gateway Azure VPN baru. Untuk informasi selengkapnya tentang konfigurasi perangkat VPN, lihat Konfigurasi Perangkat VPN.

  7. Tautkan gateway VPN situs-ke-situs di Azure ke gateway lokal.

    $azureVpn = Get-AzVirtualNetworkGateway -Name "VPNGateway" -ResourceGroupName $resgrp.ResourceGroupName
    New-AzVirtualNetworkGatewayConnection -Name "VPNConnection" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -VirtualNetworkGateway1 $azureVpn -LocalNetworkGateway2 $localVpn -ConnectionType IPsec -SharedKey <yourkey>
    
  8. Jika Anda tersambung ke sirkuit ExpressRoute yang ada, lewati langkah 8 & 9 dan, lompat ke langkah 10. Konfigurasikan sirkuit ExpressRoute. Untuk informasi selengkapnya tentang mengonfigurasi sirkuit ExpressRoute, lihat membuat sirkuit ExpressRoute.

  9. Konfigurasikan peering privat Azure melalui sirkuit ExpressRoute. Untuk informasi selengkapnya tentang mengonfigurasi peering privat Azure melalui sirkuit ExpressRoute, lihat mengonfigurasi peering

  10. Buat gateway ExpressRoute. Untuk informasi selengkapnya tentang konfigurasi gateway ExpressRoute, lihat Konfigurasi gateway ExpressRoute. GatewaySKU harus Standar, HighPerformance, atau UltraPerformance.

    $gwSubnet = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet
    $gwIP = New-AzPublicIpAddress -Name "ERGatewayIP" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -AllocationMethod Dynamic
    $gwConfig = New-AzVirtualNetworkGatewayIpConfig -Name "ERGatewayIpConfig" -SubnetId $gwSubnet.Id -PublicIpAddressId $gwIP.Id
    $gw = New-AzVirtualNetworkGateway -Name "ERGateway" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -IpConfigurations $gwConfig -GatewayType "ExpressRoute" -GatewaySku Standard
    
  11. Tautkan gateway ExpressRoute ke sirkuit ExpressRoute. Setelah langkah ini selesai, sambungan antara jaringan lokal Anda dan Azure, melalui ExpressRoute, berhasil dibuat. Untuk informasi selengkapnya tentang operasi tautan, lihat Menautkan VNet ke ExpressRoute.

    $ckt = Get-AzExpressRouteCircuit -Name "YourCircuit" -ResourceGroupName "YourCircuitResourceGroup"
    New-AzVirtualNetworkGatewayConnection -Name "ERConnection" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -VirtualNetworkGateway1 $gw -PeerId $ckt.Id -ConnectionType ExpressRoute
    

Untuk menambahkan konfigurasi point-to-site ke gateway VPN

Anda dapat mengikuti langkah-langkah ini untuk menambahkan konfigurasi titik-ke-situs ke gateway VPN Anda dalam penyiapan koeksistensi. Untuk mengunggah sertifikat akar VPN, Anda harus menginstal PowerShell secara lokal ke komputer Anda atau menggunakan portal Microsoft Azure.

  1. Tambahkan kumpulan alamat Klien VPN.

    $azureVpn = Get-AzVirtualNetworkGateway -Name "VPNGateway" -ResourceGroupName $resgrp.ResourceGroupName
    Set-AzVirtualNetworkGateway -VirtualNetworkGateway $azureVpn -VpnClientAddressPool "10.251.251.0/24"
    
  2. Unggah sertifikat akar VPN ke Azure untuk gateway VPN Anda. Dalam contoh ini, kami mengasumsikan sertifikat akar disimpan di komputer lokal tempat cmdlet PowerShell berikut berjalan dan Anda menjalankan PowerShell secara lokal. Anda juga dapat mengunggah sertifikat menggunakan portal Microsoft Azure.

    $p2sCertFullName = "RootErVpnCoexP2S.cer" 
    $p2sCertMatchName = "RootErVpnCoexP2S" 
    $p2sCertToUpload=get-childitem Cert:\CurrentUser\My | Where-Object {$_.Subject -match $p2sCertMatchName} 
    if ($p2sCertToUpload.count -eq 1){write-host "cert found"} else {write-host "cert not found" exit} 
    $p2sCertData = [System.Convert]::ToBase64String($p2sCertToUpload.RawData) 
    Add-AzVpnClientRootCertificate -VpnClientRootCertificateName $p2sCertFullName -VirtualNetworkGatewayname $azureVpn.Name -ResourceGroupName $resgrp.ResourceGroupName -PublicCertData $p2sCertData
    

Untuk informasi selengkapnya tentang VPN Point-to-Site, lihat Mengonfigurasi koneksi Point-to-Site.

Untuk mengaktifkan perutean transit antara ExpressRoute dan Azure VPN

Jika Anda ingin mengaktifkan konektivitas antara salah satu jaringan lokal Anda yang tersambung ke ExpressRoute dan jaringan lokal Anda lainnya yang tersambung ke koneksi VPN situs-ke-situs, Anda perlu menyiapkan Azure Route Server.

Langkah berikutnya

Untuk informasi selengkapnya tentang ExpressRoute, lihat Tanya Jawab Umum ExpressRoute.