Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Azure Application Gateway mendukung koneksi frontend tumpukan ganda (IPv4 dan IPv6) dari klien. Untuk menggunakan konektivitas frontend IPv6, Anda perlu membuat Application Gateway baru. Saat ini Anda tidak dapat memutakhirkan Application Gateway IPv4 yang ada saja ke Application Gateway dual stack (IPv4 dan IPv6). Selain itu, alamat IPv6 backend saat ini tidak didukung.
Untuk mendukung frontend untuk IPv6, Anda harus membuat VNet dual-stack. VNet tumpukan ganda ini memiliki subnet untuk IPv4 dan IPv6. Azure VNets sudah menyediakan kemampuan tumpukan ganda.
Gambaran Umum
Azure PowerShell digunakan untuk membuat Azure Application Gateway IPv6. Pengujian dilakukan untuk memverifikasi bahwa pengujian berfungsi dengan benar.
Anda akan mempelajari cara untuk:
- Menyiapkan jaringan tumpukan ganda
- Membuat gateway aplikasi dengan frontend IPv6
- Buat set skala mesin virtual dengan kumpulan backend bawaan
Azure PowerShell digunakan untuk membuat Azure Application Gateway IPv6 dan melakukan pengujian untuk memastikannya berfungsi dengan benar. Gateway aplikasi dapat mengelola dan mengamankan lalu lintas web ke server yang Anda pertahankan. Set skala mesin virtual digunakan untuk server backend dalam mengelola lalu lintas web. Set skala mencakup dua instans mesin virtual yang ditambahkan ke kumpulan backend default dari gateway aplikasi. Untuk informasi selengkapnya tentang komponen gateway aplikasi, lihat Komponen gateway aplikasi.
Anda juga dapat menyelesaikan panduan cepat ini menggunakan portal Azure.
Prasyarat
Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.
Jika Anda memilih untuk memasang dan menggunakan PowerShell secara lokal, artikel ini memerlukan modul Azure PowerShell versi 1.0.0 atau yang lebih baru. Jalankan Get-Module -ListAvailable Az
untuk mencari tahu versinya. Jika Anda perlu peningkatan, lihat Instal modul Azure PowerShell. Jika Anda menjalankan PowerShell secara lokal, Anda juga harus menjalankan Login-AzAccount
untuk membuat koneksi dengan Azure.
Wilayah dan ketersediaan
Application Gateway IPv6 tersedia untuk semua wilayah cloud publik tempat Application Gateway v2 SKU didukung. Ini juga tersedia di Microsoft Azure yang dioperasikan oleh 21Vianet dan Azure Government
Batasan
- Hanya SKU v2 yang mendukung frontend dengan alamat IPv4 dan IPv6
- Backend IPv6 saat ini tidak didukung
- Private Link IPv6 saat ini tidak didukung
- Application Gateway khusus IPv6 saat ini tidak didukung. Application Gateway harus berupa dual stack (IPv6 dan IPv4)
- Pengontrol Ingress Application Gateway (AGIC) tidak mendukung konfigurasi IPv6
- Gateway Aplikasi IPv4 yang ada tidak dapat ditingkatkan menjadi Gateway Aplikasi dua tumpukan.
- Aturan kustom WAF dengan kondisi kecocokan IPv6 saat ini tidak didukung
Buat grup sumber daya
Grup sumber daya adalah wadah logis tempat sumber daya Azure disebarkan dan dikelola. Buat grup sumber daya Azure menggunakan New-AzResourceGroup.
New-AzResourceGroup -Name myResourceGroupAG -Location eastus
Mengonfigurasi subnet tumpukan ganda dan subnet backend
Konfigurasikan subnet untuk myBackendSubnet dan myAGSubnet menggunakan New-AzVirtualNetworkSubnetConfig.
$AppGwSubnetPrefix = @("10.0.0.0/24", "ace:cab:deca::/64")
$appgwSubnet = New-AzVirtualNetworkSubnetConfig `
-Name myAGSubnet -AddressPrefix $AppGwSubnetPrefix
$backendSubnet = New-AzVirtualNetworkSubnetConfig `
-Name myBackendSubnet -AddressPrefix 10.0.1.0/24
Membuat jaringan virtual dengan tumpukan ganda
$VnetPrefix = @("10.0.0.0/16", "ace:cab:deca::/48")
$vnet = New-AzVirtualNetwork `
-Name myVNet `
-ResourceGroupName myResourceGroupAG `
-Location eastus `
-AddressPrefix $VnetPrefix `
-Subnet @($appgwSubnet, $backendSubnet)
Buat alamat IP publik Frontend Application Gateway
$pipv4 = New-AzPublicIpAddress `
-Name myAGPublicIPAddress4 `
-ResourceGroupName myResourceGroupAG `
-Location eastus `
-Sku 'Standard' `
-AllocationMethod 'Static' `
-IpAddressVersion 'IPv4' `
-Force
$pipv6 = New-AzPublicIpAddress `
-Name myAGPublicIPAddress6 `
-ResourceGroupName myResourceGroupAG `
-Location eastus `
-Sku 'Standard' `
-AllocationMethod 'Static' `
-IpAddressVersion 'IPv6' `
-Force
Membuat konfigurasi IP dan port
Kaitkan myAGSubnet yang sebelumnya Anda buat ke gateway aplikasi menggunakan New-AzApplicationGatewayIPConfiguration. Tetapkan myAGPublicIPAddress ke gateway aplikasi menggunakan New-AzApplicationGatewayFrontendIPConfig.
$vnet = Get-AzVirtualNetwork `
-ResourceGroupName myResourceGroupAG `
-Name myVNet
$subnet = Get-AzVirtualNetworkSubnetConfig `
-VirtualNetwork $vnet `
-Name myAGSubnet
$gipconfig = New-AzApplicationGatewayIPConfiguration `
-Name myAGIPConfig `
-Subnet $subnet
$fipconfigv4 = New-AzApplicationGatewayFrontendIPConfig `
-Name myAGFrontendIPv4Config `
-PublicIPAddress $pipv4
$fipconfigv6 = New-AzApplicationGatewayFrontendIPConfig `
-Name myAGFrontendIPv6Config `
-PublicIPAddress $pipv6
$frontendport = New-AzApplicationGatewayFrontendPort `
-Name myAGFrontendIPv6Config `
-Port 80
Membuat kumpulan dan pengaturan backend
Buat kumpulan backend bernama appGatewayBackendPool untuk gateway aplikasi menggunakan New-AzApplicationGatewayBackendAddressPool. Konfigurasikan pengaturan untuk kumpulan alamat backend menggunakan New-AzApplicationGatewayBackendHttpSettings.
$backendPool = New-AzApplicationGatewayBackendAddressPool `
-Name myAGBackendPool
$poolSettings = New-AzApplicationGatewayBackendHttpSetting `
-Name myPoolSettings `
-Port 80 `
-Protocol Http `
-CookieBasedAffinity Enabled `
-RequestTimeout 30
Membuat pendengar dan aturan default
Pendengar diperlukan untuk mengaktifkan gateway aplikasi untuk merutekan lalu lintas dengan tepat ke kumpulan ujung belakang. Dalam contoh ini, Anda membuat listener dasar yang mendengarkan lalu lintas di URL akar.
Buat listener default bernama mydefaultListener menggunakan New-AzApplicationGatewayHttpListener dengan konfigurasi frontend dan port frontend yang Anda buat sebelumnya. Agar listener mengetahui pool backend mana yang digunakan untuk lalu lintas masuk, diperlukan sebuah aturan. Buat aturan dasar bernama rule1 menggunakan New-AzApplicationGatewayRequestRoutingRule.
$listenerv4 = New-AzApplicationGatewayHttpListener `
-Name myAGListnerv4 `
-Protocol Http `
-FrontendIPConfiguration $fipconfigv4 `
-FrontendPort $frontendport
$listenerv6 = New-AzApplicationGatewayHttpListener `
-Name myAGListnerv6 `
-Protocol Http `
-FrontendIPConfiguration $fipconfigv6 `
-FrontendPort $frontendport
$frontendRulev4 = New-AzApplicationGatewayRequestRoutingRule `
-Name ruleIPv4 `
-RuleType Basic `
-Priority 10 `
-HttpListener $listenerv4 `
-BackendAddressPool $backendPool `
-BackendHttpSettings $poolSettings
$frontendRulev6 = New-AzApplicationGatewayRequestRoutingRule `
-Name ruleIPv6 `
-RuleType Basic `
-Priority 1 `
-HttpListener $listenerv6 `
-BackendAddressPool $backendPool `
-BackendHttpSettings $poolsettings
Buat gerbang aplikasi
Setelah membuat sumber daya pendukung yang diperlukan, Anda dapat menentukan parameter untuk gateway aplikasi menggunakan New-AzApplicationGatewaySku. Gateway aplikasi baru dibuat menggunakan New-AzApplicationGateway. Membuat gateway aplikasi membutuhkan waktu beberapa menit.
$sku = New-AzApplicationGatewaySku `
-Name Standard_v2 `
-Tier Standard_v2 `
-Capacity 2
New-AzApplicationGateway `
-Name myipv6AppGW `
-ResourceGroupName myResourceGroupAG `
-Location eastus `
-BackendAddressPools $backendPool `
-BackendHttpSettingsCollection $poolsettings `
-FrontendIpConfigurations @($fipconfigv4, $fipconfigv6) `
-GatewayIpConfigurations $gipconfig `
-FrontendPorts $frontendport `
-HttpListeners @($listenerv4, $listenerv6) `
-RequestRoutingRules @($frontendRulev4, $frontendRulev6) `
-Sku $sku `
-Force
Server ujung belakang
Setelah membuat gateway aplikasi, Anda dapat membuat komputer virtual backend untuk menghosting situs web. Backend dapat terdiri dari NIC, set skala komputer virtual, alamat IP publik, alamat IP internal, nama domain yang sepenuhnya memenuhi syarat (FQDN), dan backend multipenyewa seperti Azure App Service.
Buat dua komputer virtual
Dalam contoh ini, Anda membuat dua komputer virtual yang digunakan sebagai server backend untuk gateway aplikasi. IIS diinstal pada komputer virtual untuk memverifikasi bahwa Azure berhasil membuat gateway aplikasi. Set skala ditugaskan ke kumpulan backend saat Anda mengonfigurasi pengaturan alamat IP.
Untuk membuat mesin virtual, kami mendapatkan konfigurasi kumpulan backend Application Gateway yang baru dibuat dengan Get-AzApplicationGatewayBackendAddressPool. Informasi ini digunakan untuk:
- Buat antarmuka jaringan dengan New-AzNetworkInterface.
- Buat konfigurasi komputer virtual dengan New-AzVMConfig.
- Buat komputer virtual dengan New-AzVM.
Catatan
Saat Anda menjalankan sampel kode berikut untuk membuat komputer virtual, Azure meminta kredensial kepada Anda. Masukkan nama pengguna dan kata sandi Anda. Pembuatan VM membutuhkan waktu beberapa menit.
$appgw = Get-AzApplicationGateway -ResourceGroupName myResourceGroupAG -Name myipv6AppGW
$backendPool = Get-AzApplicationGatewayBackendAddressPool -Name myAGBackendPool -ApplicationGateway $appgw
$vnet = Get-AzVirtualNetwork -ResourceGroupName myResourceGroupAG -Name myVNet
$subnet = Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name myBackendSubnet
$cred = Get-Credential
for ($i=1; $i -le 2; $i++)
{
$nic = New-AzNetworkInterface `
-Name myNic$i `
-ResourceGroupName myResourceGroupAG `
-Location EastUS `
-Subnet $subnet `
-ApplicationGatewayBackendAddressPool $backendpool
$vm = New-AzVMConfig `
-VMName myVM$i `
-VMSize Standard_DS2_v2
Set-AzVMOperatingSystem `
-VM $vm `
-Windows `
-ComputerName myVM$i `
-Credential $cred
Set-AzVMSourceImage `
-VM $vm `
-PublisherName MicrosoftWindowsServer `
-Offer WindowsServer `
-Skus 2016-Datacenter `
-Version latest
Add-AzVMNetworkInterface `
-VM $vm `
-Id $nic.Id
Set-AzVMBootDiagnostic `
-VM $vm `
-Disable
New-AzVM -ResourceGroupName myResourceGroupAG -Location EastUS -VM $vm
Set-AzVMExtension `
-ResourceGroupName myResourceGroupAG `
-ExtensionName IIS `
-VMName myVM$i `
-Publisher Microsoft.Compute `
-ExtensionType CustomScriptExtension `
-TypeHandlerVersion 1.4 `
-SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}' `
-Location EastUS
}
Menemukan alamat IP publik Application Gateway
Get-AzPublicIPAddress -ResourceGroupName myResourceGroupAG -Name myAGPublicIPAddress6
Menetapkan nama DNS ke alamat IPv6 frontend
Nama DNS mempermudah pengujian untuk gateway aplikasi IPv6. Anda bisa menetapkan nama DNS publik menggunakan domain dan pencatat Anda sendiri atau Anda bisa membuat nama di azure.com.
Gunakan perintah berikut untuk menetapkan nama di azure.com. Nama diatur ke label yang Anda tentukan + wilayah + cloudapp.azure.com. Dalam contoh ini, rekaman AAAA myipv6appgw dibuat di namespace eastus.cloudapp.azure.com:
$publicIp = Get-AzPublicIpAddress -Name myAGPublicIPAddress6 -ResourceGroupName myResourceGroupAG
$publicIp.DnsSettings = @{"DomainNameLabel" = "myipv6appgw"}
Set-AzPublicIpAddress -PublicIpAddress $publicIp
Uji gateway aplikasi
Sebelumnya, kami menetapkan nama DNS myipv6appgw.eastus.cloudapp.azure.com ke alamat IPv6 publik gateway aplikasi. Untuk menguji koneksi ini:
- Menggunakan cmdlet Invoke-WebRequest, terbitkan permintaan ke frontend IPv6.
- Periksa responsnya. Respons myVM1 atau myVM2 yang valid memverifikasi bahwa gateway aplikasi berhasil dibuat dan berhasil terhubung dengan backend. Jika Anda mengeluarkan perintah beberapa kali, gateway melakukan penyeimbangan beban untuk merespons permintaan berikutnya dari server backend yang berbeda.
PS C:\> (Invoke-WebRequest -Uri myipv6appgw.eastus.cloudapp.azure.com).Content
myVM2
Penting
Jika koneksi ke nama DNS atau alamat IPv6 gagal, mungkin karena Anda tidak dapat menelusuri alamat IPv6 dari perangkat Anda. Untuk memeriksa apakah ini masalah Anda, uji juga alamat IPv4 gateway aplikasi. Jika alamat IPv4 berhasil tersambung, kemungkinan Anda tidak memiliki alamat IPv6 publik yang ditetapkan ke perangkat Anda. Jika demikian, Anda dapat mencoba menguji koneksi dengan dual-stack VM.
Membersihkan sumber daya
Jika tidak lagi diperlukan, hapus grup sumber daya, gateway aplikasi, dan semua sumber daya terkait menggunakan Remove-AzResourceGroup.
Remove-AzResourceGroup -Name myResourceGroupAG