Mengonfigurasi penerusan DNS untuk Azure Files

Azure Files memungkinkan Anda membuat titik akhir privat untuk akun penyimpanan yang berisi berbagi file Anda. Meskipun berguna untuk berbagai aplikasi, titik akhir privat sangat berguna untuk menyambungkan ke berbagi file Azure Anda dari jaringan lokal Anda menggunakan koneksi VPN atau ExpressRoute menggunakan peering privat.

Agar koneksi ke akun penyimpanan Anda melalui terowongan jaringan Anda, nama domain yang sepenuhnya memenuhi syarat (FQDN) dari akun penyimpanan Anda harus mengatasi alamat IP privat titik akhir Anda. Untuk mencapai hal ini, Anda harus meneruskan akhiran titik akhir penyimpanan (core.windows.netuntuk wilayah cloud publik) ke layanan DNS privat Azure yang dapat diakses dari dalam jaringan virtual Anda. Panduan ini akan memperlihatkan cara menyiapkan dan mengonfigurasi penerusan DNS untuk mengatasi alamat IP titik akhir privat akun penyimpanan Anda dengan benar.

Kami sangat menyarankan Anda membaca Perencanaan untuk penyebaran Azure Files dan Pertimbangan jaringan Azure Files sebelum menyelesaikan langkah yang dijelaskan dalam artikel ini.

Berlaku untuk

Jenis berbagi File SMB NFS
Berbagi file standar (GPv2), LRS/ZRS Ya Tidak
Berbagi file standar (GPv2), GRS/GZRS Ya Tidak
Berbagi file premium (FileStorage), LRS/ZRS Ya Ya

Gambaran Umum

Azure Files menyediakan jenis titik akhir berikut untuk mengakses berbagi file Azure:

  • Titik akhir publik, yang memiliki alamat IP publik dan dapat diakses dari mana saja di seluruh dunia.
  • Titik akhir privat, yang ada di dalam jaringan virtual dan memiliki alamat IP privat dari dalam ruang alamat jaringan virtual.
  • Titik akhir layanan, yang membatasi akses ke titik akhir publik ke jaringan virtual tertentu. Anda masih mengakses akun penyimpanan melalui alamat IP publik, tetapi akses hanya dimungkinkan dari lokasi yang Anda tentukan dalam konfigurasi Anda.

Titik akhir publik dan privat ada di akun penyimpanan Azure. Akun penyimpanan adalah konstruksi pengelolaan yang mewakili kumpulan penyimpanan bersama tempat Anda dapat menyebarkan beberapa berbagi file, serta sumber daya penyimpanan lainnya, seperti kontainer blob atau antrean.

Setiap akun penyimpanan memiliki nama domain yang sepenuhnya memenuhi syarat (FQDN). Untuk wilayah cloud publik, FQDN ini mengikuti pola storageaccount.file.core.windows.net yang mana storageaccount adalah nama akun penyimpanan. Saat Anda membuat permintaan terhadap nama ini, seperti memasang bagian di stasiun kerja Anda, sistem operasi melakukan pencarian DNS untuk menyelesaikan nama domain yang sepenuhnya memenuhi syarat ke alamat IP.

Secara default, storageaccount.file.core.windows.net mengatasi alamat IP titik akhir publik. Titik akhir publik untuk akun penyimpanan dihosting di kluster penyimpanan Azure yang menghosting banyak titik akhir publik akun penyimpanan lainnya. Saat Anda membuat titik akhir privat, zona DNS pribadi ditautkan ke jaringan virtual tempat zona DNS ditambahkan, dengan pemetaan data CNAME storageaccount.file.core.windows.net ke entri data A untuk alamat IP privat titik akhir privat akun penyimpanan Anda. Ini memungkinkan Anda untuk menggunakan storageaccount.file.core.windows.net FQDN dalam jaringan virtual dan membuatnya menyelesaikan ke alamat IP titik akhir privat.

Karena tujuan utama kami adalah untuk mengakses berbagi file Azure yang dihosting dalam akun penyimpanan dari lokal menggunakan terowongan jaringan seperti koneksi VPN atau ExpressRoute, Anda harus mengonfigurasi server DNS lokal Anda untuk meneruskan permintaan yang dibuat ke layanan Azure Files ke layanan DNS privat Azure.

Anda dapat mengonfigurasi penerusan DNS salah satu dari dua cara:

  • Gunakan VM server DNS: Siapkan penerusan bersyarkat (atau akhiran *.core.windows.net titik akhir penyimpanan yang sesuai untuk cloud nasional Pemerintah AS, Jerman, atau Tiongkok) ke komputer virtual server DNS yang dihosting dalam jaringan virtual Azure Anda. Server DNS ini kemudian akan secara rekursif meneruskan permintaan ke layanan DNS privat Azure, yang akan menyelesaikan FQDN akun penyimpanan ke alamat IP privat yang sesuai. Ini adalah langkah satu kali untuk semua berbagi file Azure yang dihosting dalam jaringan virtual Anda.

  • Gunakan Azure DNS Private Resolver: Jika Anda tidak ingin menyebarkan server DNS berbasis VM, Anda bisa menyelesaikan tugas yang sama menggunakan Azure DNS Private Resolver.

Selain Azure Files, permintaan resolusi nama DNS untuk layanan penyimpanan Azure lainnya (penyimpanan Azure Blob, penyimpanan Azure Table, penyimpanan Azure Queue, dll.) akan diteruskan ke layanan DNS privat Azure. Anda dapat menambahkan titik akhir tambahan untuk layanan Azure lainnya jika diinginkan.

Prasyarat

Sebelum Anda bisa menyiapkan penerusan DNS ke Azure Files, Anda memerlukan hal berikut:

Mengonfigurasi penerusan DNS menggunakan VM

Jika Anda sudah memiliki server DNS di dalam jaringan virtual Azure Anda, atau jika Anda lebih suka menyebarkan VM server DNS Anda sendiri dengan metodologi apa pun yang digunakan organisasi Anda, Anda dapat mengonfigurasi DNS dengan cmdlet PowerShell server DNS bawaan.

Diagram memperlihatkan topologi jaringan untuk mengonfigurasi penerusan D N S menggunakan komputer virtual di Azure.

Penting

Panduan ini mengasumsikan Anda menggunakan server DNS dalam Windows Server di lingkungan lokal Anda. Semua langkah yang dijelaskan di sini dimungkinkan dengan server DNS apa pun, bukan hanya Server DNS Windows.

Di server DNS lokal Anda, buat penerus bersyarat menggunakan Add-DnsServerConditionalForwarderZone. Penerus bersyarat ini harus disebarkan di semua server DNS lokal Anda agar efektif untuk meneruskan lalu lintas ke Azure dengan benar. Ingatlah untuk mengganti <azure-dns-server-ip> entri dengan alamat IP yang sesuai untuk lingkungan Anda.

$vnetDnsServers = "<azure-dns-server-ip>", "<azure-dns-server-ip>"

$storageAccountEndpoint = Get-AzContext | `
    Select-Object -ExpandProperty Environment | `
    Select-Object -ExpandProperty StorageEndpointSuffix

Add-DnsServerConditionalForwarderZone `
        -Name $storageAccountEndpoint `
        -MasterServers $vnetDnsServers

Di server DNS dalam jaringan virtual Azure, Anda juga harus menempatkan penerus sehingga permintaan untuk zona DNS akun penyimpanan diarahkan ke layanan DNS privat Azure, yang dihadapkan oleh alamat 168.63.129.16IP yang dipesan . (Ingatlah untuk mengisi $storageAccountEndpoint jika Anda menjalankan perintah dalam sesi PowerShell yang berbeda.)

Add-DnsServerConditionalForwarderZone `
        -Name $storageAccountEndpoint `
        -MasterServers "168.63.129.16"

Mengonfigurasi penerusan DNS menggunakan Azure DNS Private Resolver

Jika Anda lebih suka tidak menyebarkan VM server DNS, Anda dapat menyelesaikan tugas yang sama menggunakan Azure DNS Private Resolver. Lihat Membuat Pemecah Masalah Privat Azure DNS menggunakan portal Azure.

Diagram memperlihatkan topologi jaringan untuk mengonfigurasi penerusan D N S menggunakan Azure D N S Private Resolver.

Tidak ada perbedaan dalam cara Anda mengonfigurasi server DNS lokal Anda, kecuali bahwa alih-alih menunjuk ke alamat IP server DNS di Azure, Anda mengarahkan ke alamat IP titik akhir masuk penyelesai. Resolver tidak memerlukan konfigurasi apa pun, karena akan meneruskan kueri ke server DNS privat Azure secara default. Jika zona DNS privat ditautkan ke VNet tempat resolver disebarkan, resolver akan dapat membalas dengan rekaman dari zona DNS tersebut.

Peringatan

Saat mengonfigurasi penerus untuk zona core.windows.net , semua kueri untuk domain publik ini akan diteruskan ke infrastruktur Azure DNS Anda. Ini menyebabkan masalah saat Anda mencoba mengakses akun penyimpanan penyewa lain yang telah dikonfigurasi dengan titik akhir privat, karena Azure DNS akan menjawab kueri untuk nama publik akun penyimpanan dengan CNAME yang tidak ada di zona DNS privat Anda. Solusi untuk masalah ini adalah membuat titik akhir privat lintas penyewa di lingkungan Anda untuk menyambungkan ke akun penyimpanan tersebut.

Untuk mengonfigurasi penerusan DNS menggunakan Azure DNS Private Resolver, jalankan skrip ini di server DNS lokal Anda. Ganti <resolver-ip> dengan alamat IP titik akhir masuk resolver.

$privateResolver = "<resolver-ip>"

$storageAccountEndpoint = Get-AzContext | `
    Select-Object -ExpandProperty Environment | `
    Select-Object -ExpandProperty StorageEndpointSuffix

Add-DnsServerConditionalForwarderZone `
        -Name $storageAccountEndpoint `
        -MasterServers $privateResolver

Mengonfirmasi penerus DNS

Sebelum pengujian untuk melihat apakah penerus DNS telah berhasil diterapkan, kami sarankan untuk menghapus cache DNS di stasiun kerja lokal Anda menggunakan Clear-DnsClientCache. Untuk menguji apakah Anda berhasil menyelesaikan FQDN akun penyimpanan Anda, gunakan Resolve-DnsName atau nslookup.

# Replace storageaccount.file.core.windows.net with the appropriate FQDN for your storage account.
# Note that the proper suffix (core.windows.net) depends on the cloud you're deployed in.
Resolve-DnsName -Name storageaccount.file.core.windows.net

Jika resolusi nama berhasil, Anda akan melihat alamat IP yang diselesaikan cocok dengan alamat IP akun penyimpanan Anda.

Name                              Type   TTL   Section    NameHost
----                              ----   ---   -------    --------
storageaccount.file.core.windows. CNAME  29    Answer     csostoracct.privatelink.file.core.windows.net
net

Name       : storageaccount.privatelink.file.core.windows.net
QueryType  : A
TTL        : 1769
Section    : Answer
IP4Address : 192.168.0.4

Jika Anda memasang berbagi file SMB, Anda juga dapat menggunakan Test-NetConnection perintah untuk mengonfirmasi bahwa koneksi TCP dapat berhasil dibuat ke akun penyimpanan Anda.

Test-NetConnection -ComputerName storageaccount.file.core.windows.net -CommonTCPPort SMB

Lihat juga