Opsi Resolusi Nama DNS untuk komputer virtual Linux di Azure
Berlaku untuk: ✔️ Mesin Virtual Linux ✔️ Set skala fleksibel
Azure menyediakan resolusi nama DNS secara default untuk semua komputer virtual yang berada dalam satu jaringan virtual. Anda dapat menerapkan solusi resolusi nama DNS Anda sendiri dengan mengonfigurasi layanan DNS Anda sendiri di komputer virtual Anda yang dihosting Azure. Skenario berikut akan membantu Anda memilih skenario yang sesuai untuk situasi Anda.
Jenis resolusi nama yang Anda gunakan tergantung pada bagaimana komputer virtual dan instans peran Anda perlu berkomunikasi satu sama lain.
Tabel berikut menggambarkan skenario dan solusi resolusi nama terkait:
Skenario | Solusi | Akhiran |
---|---|---|
Resolusi nama antara instans peran atau komputer virtual dalam jaringan virtual yang sama | Resolusi nama yang disediakan Azure | nama domain yang sepenuhnya memenuhi syarat (FQDN) |
Resolusi nama antara instans peran atau komputer virtual di jaringan virtual yang berbeda | Server DNS yang dikelola pelanggan yang meneruskan kueri antar jaringan virtual agar diselesaikan oleh Azure (proksi DNS). Lihat Resolusi nama menggunakan server DNS Anda sendiri. | Khusus FQDN |
Resolusi komputer lokal dan nama layanan dari instans peran atau komputer virtual di Azure | Server DNS yang dikelola pelanggan (misalnya, pengendali domain lokal, pengendali domain baca-saja lokal, atau DNS sekunder yang disinkronkan dengan menggunakan transfer zona). Lihat Resolusi nama menggunakan server DNS Anda sendiri. | Khusus FQDN |
Resolusi nama host Azure dari komputer lokal | Meneruskan kueri ke server proksi DNS yang dikelola pelanggan di jaringan virtual terkait. Server proksi meneruskan kueri ke Azure untuk resolusi. Lihat Resolusi nama menggunakan server DNS Anda sendiri. | Khusus FQDN |
DNS balik untuk IP internal | Resolusi nama menggunakan server DNS Anda sendiri | n/a |
Resolusi nama yang disediakan Azure
Bersama dengan resolusi nama DNS publik, Azure menyediakan resolusi nama internal bagi komputer virtual dan instans peran yang berada di jaringan virtual yang sama. Dalam jaringan virtual yang didasarkan pada Azure Resource Manager, akhiran DNS konsisten di seluruh jaringan virtual; FQDN tidak diperlukan. Nama DNS dapat ditetapkan ke kartu antarmuka jaringan (NIC) dan komputer virtual. Meskipun resolusi nama yang disediakan Azure tidak memerlukan konfigurasi apa pun, ini bukan pilihan yang sesuai untuk semua skenario penyebaran, seperti yang terlihat pada tabel sebelumnya.
Fitur dan pertimbangan
Fitur:
- Tidak diperlukan konfigurasi untuk menggunakan resolusi nama yang disediakan Azure.
- Layanan resolusi nama yang disediakan Azure sangat tersedia. Anda tidak perlu membuat dan mengelola kluster server DNS sendiri.
- Layanan resolusi nama yang disediakan Azure dapat digunakan bersama dengan server DNS Anda sendiri untuk mengatasi nama host lokal dan Azure.
- Resolusi nama disediakan antara komputer virtual di jaringan virtual tanpa perlu FQDN.
- Anda dapat menggunakan nama host yang paling menggambarkan penyebaran Anda, dan tidak menggunakan nama yang dibuat secara otomatis.
Pertimbangan:
- Akhiran DNS yang dibuat Azure tidak dapat dimodifikasi.
- Anda tidak dapat mendaftarkan catatan Anda sendiri secara manual.
- WINS dan NetBIOS tidak didukung.
- Nama host harus kompatibel dengan DNS. Nama hanya boleh menggunakan 0-9, a-z, dan '-', dan tidak dapat dimulai atau diakhir dengan '-'. Lihat RFC 3696, Bagian 2.
- Lalu lintas kueri DNS dibatasi untuk setiap komputer virtual. Pembatasan seharusnya tidak memengaruhi sebagian besar aplikasi. Jika ada permintaan pembatasan, pastikan penembolokan sisi klien diaktifkan. Untuk informasi selengkapnya, lihat Mendapatkan hasil maksimal dari resolusi nama yang disediakan Azure.
Mendapatkan hasil maksimal dari resolusi nama yang disediakan Azure
Penyimpanan cache sisi klien:
Beberapa kueri DNS tidak dikirim di seluruh jaringan. Penembolokan sisi klien membantu mengurangi latensi dan meningkatkan ketahanan terhadap inkonsistensi jaringan dengan menyelesaikan kueri DNS berulang dari cache lokal. Rekaman DNS berisi mekanisme time-to-live (TTL), yang memungkinkan cache menyimpan rekaman selama mungkin tanpa memengaruhi kesegaran rekaman. Akibatnya, penembolokan sisi klien cocok untuk sebagian besar situasi.
Beberapa distribusi Linux tidak menyertakan penembolokan secara default. Kami menyarankan agar Anda menambahkan cache ke setiap komputer virtual Linux setelah Anda memeriksa bahwa belum ada cache lokal.
Beberapa paket penembolokan DNS yang berbeda, seperti dnsmasq, tersedia. Berikut langkah-langkah menginstal dnsmasq pada distribusi yang paling umum:
- Instal paket dnsmasq:
sudo apt-get install dnsmasq
- Aktifkan layanan dnsmasq:
sudo systemctl enable dnsmasq.service
- Mulai layanan dnsmasq:
sudo systemctl start dnsmasq.service
Pengulangan sisi server
DNS utamanya merupakan protokol UDP. Karena protokol UDP tidak menjamin pengiriman pesan, protokol DNS itu sendiri menangani logika pengulangan. Setiap klien DNS (sistem operasi) dapat menunjukkan logika pengulangan yang berbeda, tergantung pilihan pembuat:
- Sistem operasi Windows mencoba lagi setelah satu detik, kemudian setelah dua detik, empat detik, dan empat detik lagi.
- Penyiapan Linux default mencoba lagi setelah lima detik. Anda harus mengubah ini untuk mencoba lagi lima kali pada interval satu detik.
Untuk memeriksa pengaturan saat ini pada komputer virtual Linux, 'cat /etc/resolv.conf', dan lihat baris 'opsi', misalnya:
sudo cat /etc/resolv.conf
options timeout:1 attempts:5
File /etc/resolv.conf
dibuat secara otomatis dan tidak boleh diedit. Langkah-langkah khusus yang menambahkan baris “opsi” bervariasi tergantung distribusi:
Ubuntu (menggunakan resolvconf)
- Tambahkan baris opsi ke
/etc/resolvconf/resolv.conf.d/head
file. - Jalankan
sudo resolvconf -u
untuk memperbarui.
SUSE (menggunakan netconf)
- Tambahkan
timeout:1 attempts:5
keNETCONFIG_DNS_RESOLVER_OPTIONS=""
parameter di/etc/sysconfig/network/config
. - Jalankan
sudo netconfig update
untuk memperbarui.
Resolusi nama menggunakan server DNS Anda sendiri
Kebutuhan resolusi nama Anda mungkin melampaui fitur yang disediakan Azure. Misalnya, Anda mungkin memerlukan resolusi DNS antara jaringan virtual. Untuk menutupi skenario ini, Anda bisa menggunakan server DNS Anda sendiri.
Server DNS dalam jaringan virtual dapat meneruskan kueri DNS ke pemecah masalah Azure yang rekursif, untuk mengatasi nama host dalam jaringan virtual tersebut. Misalnya, server DNS yang berjalan di Azure bisa merespons kueri DNS untuk file zona DNS-nya sendiri dan meneruskan semua kueri lainnya ke Azure. Fungsi ini memungkinkan komputer virtual untuk melihat kedua entri Anda dalam file zona dan nama host yang disediakan Azure (melalui penerus). Akses ke penyelesai rekursif dari Azure disediakan melalui IP virtual 168.63.129.16.
Penerusan DNS juga memungkinkan resolusi DNS antarjaringan virtual, dan memungkinkan komputer lokal Anda meresolusi nama host yang disediakan Azure. Untuk mengatasi nama host komputer virtual, komputer virtual server DNS harus berada di jaringan virtual yang sama dan dikonfigurasi untuk meneruskan kueri nama host ke Azure. Karena akhiran DNS berbeda di setiap jaringan virtual, Anda dapat menggunakan aturan penerusan bersyarat guna mengirimkan kueri DNS ke jaringan virtual yang benar untuk diresolusi. Gambar berikut ini menunjukkan dua jaringan virtual dan jaringan lokal yang melakukan resolusi DNS antarjaringan virtual dengan menggunakan metode ini:
Saat Anda menggunakan resolusi nama yang disediakan Azure, akhiran DNS internal disediakan untuk setiap komputer virtual dengan menggunakan DHCP. Saat Anda menggunakan solusi resolusi nama Anda sendiri, akhiran ini tidak disediakan untuk komputer virtual karena akhiran mengganggu arsitektur DNS lainnya. Untuk referensikan ke komputer oleh FQDN atau untuk mengonfigurasi akhiran pada mesin virtual Anda, Anda dapat menggunakan PowerShell atau API untuk menentukan akhiran:
- Untuk jaringan virtual yang dikelola oleh Azure Resource Manager, akhiran tersedia melalui sumber daya kartu antarmuka jaringan. Anda juga dapat menjalankan perintah
azure network public-ip show <resource group> <pip name>
untuk menampilkan detail IP publik Anda, yang mencakup FQDN NIC.
Jika meneruskan kueri ke Azure tidak sesuai dengan kebutuhan, Anda harus menyediakan solusi DNS Anda sendiri. Solusi DNS Anda harus:
- Memberikan resolusi nama host yang sesuai, misalnya melalui DDNS. Jika menggunakan DDNS, Anda mungkin perlu menonaktifkan pencarian rekaman DNS. Sewa DHCP Azure panjang dan memulung dapat menghapus catatan DNS sebelum waktunya.
- Memberikan resolusi rekursif yang sesuai untuk memungkinkan resolusi nama domain eksternal.
- Dapat diakses (TCP dan UDP di port 53) dari klien yang dilayani, dan dapat mengakses Internet.
- Aman terhadap akses dari Internet, untuk mengurangi ancaman yang ditimbulkan oleh agen eksternal.
Catatan
Untuk performa terbaik, saat Anda menggunakan komputer virtual di server Azure DNS, nonaktifkan IPv6 dan tetapkan IP Publik Tingkat Instans ke setiap komputer virtual server DNS.