Mulai cepat: Membuat zona DNS privat Azure menggunakan Azure PowerShell

Artikel ini memandu Anda melalui langkah-langkah untuk membuat zona DNS privat pertama Anda dan merekam menggunakan Azure PowerShell.

Catatan

Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Lihat Menginstal Azure PowerShell untuk memulai. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.

Zona DNS digunakan untuk menghosting rekaman DNS untuk domain tertentu. Untuk mulai menghosting domain Anda di Azure DNS, Anda perlu membuat zona DNS untuk nama domain tersebut. Setiap rekaman DNS untuk domain Anda kemudian dibuat di dalam zona DNS ini. Untuk mempublikasikan zona DNS privat ke jaringan virtual Anda, Anda menentukan daftar jaringan virtual yang diperbolehkan untuk menetapkan catatan di dalam zona tersebut. Ini disebut jaringan virtual tertaut. Saat autoregistrasi diaktifkan, Azure DNS juga memperbarui rekaman zona setiap kali komputer virtual dibuat, mengubah alamat IP-nya, atau dihapus.

Prasyarat

Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum memulai.

Jika mau, Anda bisa menyelesaikan mulai cepat ini menggunakan Azure CLI.

Azure Cloud Shell

Azure meng-hosting Azure Cloud Shell, lingkungan shell interaktif yang dapat Anda gunakan melalui browser. Anda dapat menggunakan Bash atau PowerShell dengan Cloud Shell untuk bekerja dengan layanan Azure. Anda dapat menggunakan perintah Cloud Shell yang telah diinstal sebelumnya untuk menjalankan kode dalam artikel ini tanpa harus menginstal apa-apa di lingkungan lokal Anda.

Untuk memulai Azure Cloud Shell:

Opsi Contoh/Tautan
Pilih Coba di pojok kanan atas blok kode atau perintah. Memilih Coba tidak otomatis menyalin kode atau perintah ke Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Buka https://shell.azure.com, atau pilih tombol Luncurkan Cloud Shell untuk membuka Cloud Shell di browser Anda. Button to launch Azure Cloud Shell.
Pilih tombol Cloud Shell pada bilah menu di kanan atas di portal Microsoft Azure. Screenshot that shows the Cloud Shell button in the Azure portal

Untuk menggunakan Azure Cloud Shell:

  1. Mulai Cloud Shell.

  2. Pilih tombol Salin pada blok kode (atau blok perintah) untuk menyalin kode atau perintah.

  3. Tempel kode atau perintah ke dalam sesi Cloud Shell dengan memilih Ctrl+Shift+V di Windows dan Linux, atau dengan memilih Cmd+Shift+V di macOS.

  4. Pilih Masukkan untuk menjalankan kode atau perintah.

Membuat grup sumber daya

Pertama, buat grup sumber daya untuk berisi zona DNS:

New-AzResourceGroup -name MyAzureResourceGroup -location "eastus"

Membuat zona DNS privat

Zona DNS dibuat dengan menggunakan New-AzPrivateDnsZone cmdlet.

Contoh berikut membuat jaringan virtual bernama myAzureVNet. Kemudian membuat zona DNS bernama private.contoso.com di grup sumber daya MyAzureResourceGroup, menautkan zona DNS ke jaringan virtual MyAzureVnet, dan mengaktifkan pendaftaran otomatis.

Install-Module -Name Az.PrivateDns -force

$backendSubnet = New-AzVirtualNetworkSubnetConfig -Name backendSubnet -AddressPrefix "10.2.0.0/24"
$vnet = New-AzVirtualNetwork `
  -ResourceGroupName MyAzureResourceGroup `
  -Location eastus `
  -Name myAzureVNet `
  -AddressPrefix 10.2.0.0/16 `
  -Subnet $backendSubnet

$zone = New-AzPrivateDnsZone -Name private.contoso.com -ResourceGroupName MyAzureResourceGroup

$link = New-AzPrivateDnsVirtualNetworkLink -ZoneName private.contoso.com `
  -ResourceGroupName MyAzureResourceGroup -Name "mylink" `
  -VirtualNetworkId $vnet.id -EnableRegistration

Jika Anda ingin membuat zona hanya untuk resolusi nama (tidak ada pendaftaran nama host otomatis), Anda dapat menghilangkan -EnableRegistration parameter.

Daftar zona privat DNS

Dengan menghilangkan nama zona dari Get-AzPrivateDnsZone, Anda dapat menghitung semua zona dalam grup sumber daya. Operasi ini mengembalikan array objek zona.

$zones = Get-AzPrivateDnsZone -ResourceGroupName MyAzureResourceGroup
$zones

Dengan menghilangkan nama zona dan nama grup sumber daya Get-AzPrivateDnsZone dari, Anda dapat menghitung semua zona dalam langganan Azure.

$zones = Get-AzPrivateDnsZone
$zones

Membuat komputer virtual uji

Sekarang, buat dua komputer virtual sehingga Anda dapat menguji zona DNS privat Anda:

New-AzVm `
    -ResourceGroupName "myAzureResourceGroup" `
    -Name "myVM01" `
    -Location "East US" `
    -subnetname backendSubnet `
    -VirtualNetworkName "myAzureVnet" `
    -addressprefix 10.2.0.0/24 `
    -OpenPorts 3389

New-AzVm `
    -ResourceGroupName "myAzureResourceGroup" `
    -Name "myVM02" `
    -Location "East US" `
    -subnetname backendSubnet `
    -VirtualNetworkName "myAzureVnet" `
    -addressprefix 10.2.0.0/24 `
    -OpenPorts 3389

Membuat mesin virtual akan memakan waktu beberapa menit.

Membuat rekaman DNS tambahan

Anda membuat kumpulan catatan dengan menggunakan New-AzPrivateDnsRecordSet cmdlet. Contoh berikut membuat rekaman dengan nama relatif db di Zona DNS private.contoso.com, dalam grup sumber daya MyAzureResourceGroup. Nama yang sepenuhnya memenuhi syarat dari kumpulan catatan adalah db.private.contoso.com. Jenis rekaman adalah "A", dengan alamat IP "10.2.0.4", dan TTL adalah 3600 detik.

New-AzPrivateDnsRecordSet -Name db -RecordType A -ZoneName private.contoso.com `
   -ResourceGroupName MyAzureResourceGroup -Ttl 3600 `
   -PrivateDnsRecords (New-AzPrivateDnsRecordConfig -IPv4Address "10.2.0.4")

Menampilkan rekaman DNS

Untuk mencantumkan rekaman DNS di zona Anda, jalankan:

Get-AzPrivateDnsRecordSet -ZoneName private.contoso.com -ResourceGroupName MyAzureResourceGroup

Menguji zona privat

Sekarang Anda dapat menguji resolusi nama untuk zona privat private.contoso.com Anda.

Mengonfigurasi komputer virtual untuk memungkinkan ICMP masuk

Anda dapat menggunakan perintah ping untuk menguji resolusi nama. Jadi, konfigurasikan firewall pada kedua komputer virtual untuk memungkinkan paket ICMP masuk.

  1. Hubungkan ke myVM01 menggunakan nama pengguna dan kata sandi yang Anda gunakan saat membuat Mesin Virtual.

  2. Buka jendela Windows PowerShell dengan hak istimewa administrator.

  3. Jalankan perintah berikut:

    New-NetFirewallRule –DisplayName "Allow ICMPv4-In" –Protocol ICMPv4
    

Ulangi untuk myVM02.

Ping komputer virtual menurut nama

  1. Dari perintah myVM02 Windows PowerShell, ping myVM01 menggunakan nama host yang terdaftar secara otomatis:

    ping myVM01.private.contoso.com
    

    Anda akan melihat output yang terlihat mirip dengan apa yang ditunjukkan di bawah ini:

    PS C:\> ping myvm01.private.contoso.com
    
    Pinging myvm01.private.contoso.com [10.2.0.4] with 32 bytes of data:
    Reply from 10.2.0.4: bytes=32 time<1ms TTL=128
    Reply from 10.2.0.4: bytes=32 time=1ms TTL=128
    Reply from 10.2.0.4: bytes=32 time<1ms TTL=128
    Reply from 10.2.0.4: bytes=32 time<1ms TTL=128
    
    Ping statistics for 10.2.0.4:
        Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milli-seconds:
        Minimum = 0ms, Maximum = 1ms, Average = 0ms
    PS C:\>
    
  2. Sekarang ping nama db yang Anda buat sebelumnya:

    ping db.private.contoso.com
    

    Anda akan melihat output yang terlihat mirip dengan apa yang ditunjukkan di bawah ini:

    PS C:\> ping db.private.contoso.com
    
    Pinging db.private.contoso.com [10.2.0.4] with 32 bytes of data:
    Reply from 10.2.0.4: bytes=32 time<1ms TTL=128
    Reply from 10.2.0.4: bytes=32 time<1ms TTL=128
    Reply from 10.2.0.4: bytes=32 time<1ms TTL=128
    Reply from 10.2.0.4: bytes=32 time<1ms TTL=128
    
    Ping statistics for 10.2.0.4:
        Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milliseconds:
        Minimum = 0ms, Maximum = 0ms, Average = 0ms
    PS C:\>
    

Membersihkan sumber daya

Bila tidak lagi diperlukan, hapus grup sumber daya MyAzureResourceGroup untuk menghapus sumber daya yang dibuat di artikel ini.

Remove-AzResourceGroup -Name MyAzureResourceGroup

Langkah berikutnya