Server DNS Master-Slave Persediaan Menggunakan Alat Bind di RHEL/CentOS 6.5

Server DNS Master-Slave Persediaan Menggunakan Alat Bind di RHEL/CentOS 6.5

Pelayan nama domain (DNS) yang digunakan untuk menyelesaikan nama kepada mana -mana tuan rumah. Pelayan DNS Master (Pelayan utama) adalah pengendali data zon asal dan pelayan DNS hamba (Pelayan sekunder) hanyalah pelayan sandaran yang digunakan untuk menyalin maklumat zon yang sama dari pelayan induk. Pelayan induk akan menyelesaikan nama untuk setiap tuan rumah yang kami tentukan dalam pangkalan data zon dan menggunakan protokol UDP, kerana protokol UDP tidak pernah menggunakan proses pengakuan sementara TCP menggunakan pengakuan. Pelayan DNS juga menggunakan protokol UDP untuk menyelesaikan permintaan pertanyaan pada awalnya.

Setup Master Hamba DNS di RHEL/CentOS 6.5

Bagaimana DNS berfungsi?

Memahami DNS mungkin sedikit mengelirukan untuk pemula. Berikut adalah penjelasan ringkas mengenai bagaimana kerja DNS.

Katakan, jika kita perlu mengakses mana -mana laman web apa yang akan kita lakukan? Hanya taip www.Google.com dalam penyemak imbas dan tekan Enter. Hmm itu sahaja yang kita tahu, tetapi hakikatnya, bagaimana kesakitan DNS melaluinya, sambil menanyakan kepada kita. Semasa kami menaip www.Google.com sistem akan mencari www.Google.com. Setiap kali kita menaip beberapa nama domain, ada . (titik) pada akhir www.Google.com yang mengatakan untuk mencari pelayan root ruang nama.

Secara global ada 13 pelayan akar tersedia untuk menyelesaikan pertanyaan. Pada mulanya, semasa kami memukul Enter sebagai www.Google.com pelayar kami akan lulus permintaan kepada resolver tempatan kami, yang mempunyai entri mengenai maklumat pelayan DNS Master dan Hamba kami. Sekiranya mereka tidak mempunyai maklumat mengenai pertanyaan yang diminta, mereka akan lulus permintaan ke domain peringkat tertinggi (Tld), jika TLD mengatakan saya tidak tahu permintaan itu, mungkin pelayan yang berwibawa mengetahui permintaan anda, ia akan maju ke pelayan yang berwibawa, di sini hanya www.Google.com ditakrifkan sebagai alamat 72.36.15.56.

Server Purata Waktu Purata akan memberikan jawapan kepada TLD dan TLD akan lulus ke Root Server dan Root akan memberikan maklumat kepada penyemak imbas, oleh itu penyemak imbas akan cache permintaan DNS untuk kegunaan masa depan. Oleh itu, proses yang panjang ini hanya akan diselesaikan dengan milisaat. Sekiranya mereka tidak tahu permintaan mereka akan membalas sebagai nxdomain. Maksudnya, tidak ada rekod yang terdapat dalam pangkalan data zon. Semoga ini membuat anda memahami bagaimana DNS berfungsi.

Baca juga: Penyediaan pelayan cache DNS di Ubuntu

Persekitaran ujian saya

Untuk artikel ini, saya menggunakan 3 mesin, 2 untuk persediaan pelayan (tuan dan hamba) dan 1 untuk pelanggan.

--------------------------------------------------- Server DNS Master --------------------------------------------------- Alamat IP: 192.168.0.200 nama tuan rumah: Masterdns.Tecmintlocal.com os: Centos 6.5 Final 
--------------------------------------------------- Pelayan DNS hamba --------------------------------------------------- Alamat IP: 192.168.0.201 Nama Hos: Slavedns.Tecmintlocal.com os: Centos 6.5 Final 
--------------------------------------------------- Mesin Pelanggan Untuk Menggunakan DNS --------------------------------------------------- Alamat IP: 192.168.0.210 Nama Hos: Node1.Tecmintlocal.com os: Centos 6.5 Final 
Pakej keperluan
Bind, Bind-Utils, Bind-Choot 
Fail konfigurasi yang digunakan
Fail konfigurasi: /etc /dinamakan.Fail skrip conf: /etc /init.d/bernama 
Port & protokol yang digunakan
53, UDP

Penyediaan Master DNS Server

Pertama, sahkan alamat IP, nama hos dan versi pengedaran pelayan DNS Master, sebelum bergerak ke hadapan untuk persediaan.

$ sudo ifconfig | Grep Inet $ HostName $ Cat /ETC /REDHAT-RELEASE 
Sahkan konfigurasi induk

Sekali, anda mengesahkan bahawa tetapan di atas adalah betul, masa untuk bergerak ke hadapan untuk memasang pakej yang diperlukan.

$ sudo yum pemasangan mengikat* -y 
Pasang pakej bind

Memasang dan Mengkonfigurasi Bind

Setelah memasang pakej yang diperlukan, kini tentukan fail zon dalam konfigurasi induk 'Dinamakan.Conf'Fail.

$ sudo vim /etc /dinamakan.Conf 

Diberikan di bawah adalah saya Dinamakan.Conf entri fail, tukar fail konfigurasi mengikut keperluan anda.

// // Dinamakan.conf // // disediakan oleh Red Hat Bind Pakej untuk mengkonfigurasi ISC Bind bernama (8) DNS // Server sebagai Caching Only Nameserver (sebagai Resolver DNS Localhost sahaja). // // lihat/usr/share/doc/bind*/sampel/contohnya fail konfigurasi yang dinamakan. // opsyen pendengaran port 53  127.0.0.1; 192.168.0.200; ; # Di sini kita perlu menambah IP pelayan DNS induk kami. mendengar-on-v6 port 53 :: 1; ; direktori "/var/bernama"; fail dump "/var/named/data/cache_dump.db "; statistik-fail"/var/named/data/named_stats.txt "; memstatistics-file"/var/named/data/named_mem_stats.txt "; membenarkan-pertanyaan localhost; 192.168.0.0/24; ; # julat subnet di mana tuan rumah saya dibenarkan untuk menanyakan DNS kami. membenarkan-pemindahan  localhost; 192.168.0.201; ; # Di sini kita perlu untuk IP pelayan DNS hamba kita. RECURSION NO; dnssec-enable ya; dnssec-validation ya; DNSSEC-LOOKASIDE AUTO; / * Laluan ke Kunci DLV ISC */Bindkeys-File "/etc/Dinamakan.iscdlv.kunci "; diuruskan-keys-directory"/var/named/dinamic ";; pembalakan saluran default_debug file" data/dinamakan.Jalankan "; dinamik keparahan;;; zon"."Dalam jenis petunjuk; fail" dinamakan.ca ";; ## Tentukan fail zon ke hadapan & terbalik kami di sini untuk tecmintlocal.com. Kawasan"Tecmintlocal.com"Dalam jenis master; fail"Tecmintlocal.fwd.Kawasan"; membenarkan-update none;;; zon"0.168.192.dalam addr.arpa"Dalam jenis master; fail"Tecmintlocal.REV.Kawasan"; membenarkan-update none;;; ##### termasuk"/etc/dinamakan.RFC1912.zon "; termasuk"/etc/dinamakan.akar.kunci "; 
Buat fail zon dalam DNS

Berikut adalah penjelasan setiap konfigurasi yang kami gunakan dalam fail di atas.

  1. Dengarkan Port 53 - Ini digunakan untuk DNS untuk mendengar di antara muka yang ada.
  2. Master DNS - Tentukan, alamat IP DNS tuan anda untuk mendengar pertanyaan.
  3. Hamba DNS - Tentukan DNS Hamba Anda, yang digunakan untuk menyegerakkan maklumat zon kami untuk menyelesaikan tuan rumah dari Master.
  4. RECURSION NO - Sekiranya ditetapkan kepada ya, pertanyaan rekursif akan menjadikan pelayan menjadi serangan DDOS.
  5. Nama zon - Tentukan nama zon anda di sini ditakrifkan sebagai tecminlocal.com.
  6. jenis tuan - Oleh kerana sistem ini dikonfigurasi untuk pelayan induk, untuk pelayan hamba yang akan datang ini akan menjadi hamba.
  7. Tecmintlocal.fwd.Kawasan - Fail ini mempunyai maklumat tuan rumah untuk zon ini.
  8. Benarkan Update Tiada - Sekiranya tidak ada yang akan ditetapkan. ia tidak akan menggunakan DNS dinamik (DDNS).

Membuat fail zon induk

Pada mulanya mari kita tentukan entri zon looking ke hadapan. Di sini kita perlu membuat fail zon atas nama apa yang telah kita tentukan di Dinamakan.Conf fail seperti di bawah.

Tecmintlocal.fwd.Zon Tecmintlocal.REV.Kawasan 

Kami menggunakan fail konfigurasi sampel untuk membuat fail zon ke hadapan, untuk ini kami perlu menyalin fail konfigurasi sampel.

$ sudo cp/var/bernama/dinamakan.localhost/var/named/tecmintlocal.fwd.zon $ sudo cp/var/bernama/dinamakan.loopback/var/named/tecmintlocal.REV.Kawasan 
Salin fail zon

Sekali, anda telah menyalin fail konfigurasi, kini mengedit fail zon ini menggunakan vim editor.

$ sudo vim/var/named/tecmintlocal.fwd.Kawasan 

Sebelum mendefinisikan maklumat tuan rumah kami dalam fail zon hadapan, mula -mula melihat fail zon sampel yang cepat.

Fail zon sampel

Ini adalah konfigurasi zon ke hadapan saya, tambahkan entri di bawah dan buat perubahan mengikut keperluan anda.

$ TTL 86400 @ In SOA Masterdns.Tecmintlocal.com. akar.Tecmintlocal.com. (2014090401; Serial 3600; Refresh 1800; RECRY 604800; tamat 86400); minimum ; Nama pelayan @ di ns masterdns.Tecmintlocal.com. @ In NS Slavedns.Tecmintlocal.com. ; Nama Host Nama Server ke IP Resolve. @ Pada tahun 192.168.0.200 @ pada tahun 192.168.0.201; Tuan rumah di domain ini @ pada tahun 192.168.0.210 @ pada tahun 192.168.0.220 Masterdns pada tahun 192.168.0.200 Slavedns pada tahun 192.168.0.201 node1 pada tahun 192.168.0.210 RHEL1 pada tahun 192.168.0.220 

Simpan dan berhenti fail menggunakan wq!. Setelah mengedit penampilan ke hadapan, ia kelihatan seperti di bawah, gunakan Tab Untuk mendapatkan format yang baik dalam fail zon.

Konfigurasikan zon ke hadapan

Sekarang, buat fail carian terbalik, kami telah membuat salinan fail loop-back dengan nama Tecmintlocal.REV.Kawasan. Oleh itu, kami menggunakan fail ini untuk mengkonfigurasi penampilan terbalik kami.

$ sudo vim/var/named/tecmintlocal.REV.Kawasan 

Sebelum mendefinisikan maklumat tuan rumah kami dalam fail zon terbalik, lihatlah fail carian terbalik sampel seperti yang ditunjukkan di bawah.

Zon carian terbalik sampel

Ini adalah konfigurasi zon terbalik saya, tambahkan entri di bawah dan buat perubahan sebagai keperluan anda.

$ TTL 86400 @ In SOA Masterdns.Tecmintlocal.com. akar.Tecmintlocal.com. (2014090402; Serial 3600; Refresh 1800; RECRY 604800; tamat 86400); minimum ; Nama pelayan @ di ns masterdns.Tecmintlocal.com. @ In NS Slavedns.Tecmintlocal.com. @ In Ptr TecmintLocal.com. ; Nama Host Nama Server ke IP Resolve. Masterdns pada tahun 192.168.0.200 Slavedns pada tahun 192.168.0.201; Tuan rumah di Domain Node1 pada tahun 192.168.0.210 RHEL pada tahun 192.168.0.220 200 di pTR masterdns.Tecmintlocal.com. 201 di PTR Slavedns.Tecmintlocal.com. 210 di PTR node1.Tecmintlocal.com. 220 di PTR RHEL1.Tecmintlocal.com. 

Simpan dan berhenti fail menggunakan wq!. Setelah mengedit penampilan terbalik, ia kelihatan seperti di bawah, gunakan Tab Untuk mendapatkan format yang baik dalam fail zon.

Konfigurasikan zon carian terbalik

Semak pemilikan kumpulan fail Look-Up & Reverse Forward, sebelum menyemak sebarang kesilapan dalam Konfigurasi.

$ sudo ls -l/var/bernama/ 

Di sini kita dapat melihat kedua -dua fail itu masuk akar pemilikan pengguna, kerana fail yang kami buat salinan dari fail sampel boleh didapati di bawah /var/bernama/. Tukar kumpulan ke dinamakan pada kedua -dua fail menggunakan arahan berikut.

$ sudo chgrp bernama/var/bernama/tecmintlocal.fwd.zon $ sudo chgrp bernama/var/bernama/tecmintlocal.REV.Kawasan 

Setelah menetapkan pemilikan yang betul pada fail, sahkan lagi.

$ sudo ls -l/var/bernama/ 
Sahkan fail zon

Sekarang, periksa kesilapan dalam fail zon, sebelum memulakan perkhidmatan DNS. Pertama periksa Dinamakan.Conf fail, kemudian periksa fail zon lain.

$ sudo bernama-checkconf /etc /dinamakan.conf $ sudo named-checkzone masterdns.Tecminlocal.com/var/bernama/tecmintlocal.fwd.zon $ sudo bernama-checkzone masterdns.Tecminlocal.com/var/bernama/tecmintlocal.REV.Kawasan 
Semak fail zon ralat

Secara lalai iptables sedang berjalan dan pelayan DNS kami terhad kepada localhost, jika klien ingin menyelesaikan nama dari pelayan DNS kami, maka kami harus membenarkan permintaan masuk, untuk itu kami perlu menambah peraturan inbound iptables untuk port 53.

$ sudo iptables -i input -p udp --dport 53 -m state -state new -j Terima 

Sekarang, sahkan bahawa peraturan telah ditambah dengan betul Input rantai.

$ sudo iptables -l input 

Seterusnya, simpan peraturan dan mulakan semula firewall.

$ sudo iptables perkhidmatan simpan $ sudo perkhidmatan iptables dimulakan semula 
Buka pelabuhan DNS di firewall

Mulakan perkhidmatan yang dinamakan dan buatnya berterusan.

$ sudo perkhidmatan bernama Start $ sudo chkconfig dinamakan pada $ sudo chkconfig -list bernama 
Mulakan pelayan DNS

Akhir menggali & nslookup alat.

$ Dig Masterdns.Tecmintlocal.com [zon ke hadapan] 
Uji zon DNS ke hadapan
$ DIG -X 192.168.0.200 
Menguji zon DNS terbalik
$ nslookup tecmintlocal.com $ nslookup masterdns.Tecmintlocal.com $ nslookup slavedns.Tecmintlocal.com 
Ujian zon DNS

Sejuk! Kami telah mengkonfigurasi a Master DNS, Sekarang kita perlu menyediakan a Hamba DNS Pelayan. Mari maju ke hadapan untuk menyediakan pelayan hamba, ini tidak akan mengambil banyak masa sebagai persediaan induk.

Server DNS Hamba Persediaan

Dalam mesin hamba, juga kita perlu memasang pakej mengikat yang sama seperti yang ditunjukkan dalam tuan, jadi mari pasangkannya menggunakan arahan berikut.

$ sudo yum pemasangan mengikat* -y 
Pasang DNS mengikat

Buka dan edit 'Dinamakan.conf ' fail untuk pangkalan data zon kami dan port mendengar.

$ sudo vim /etc /dinamakan.Conf 

Buat perubahan seperti yang ditunjukkan, mengikut keperluan anda.

// // Dinamakan.conf // // disediakan oleh Red Hat Bind Pakej untuk mengkonfigurasi ISC Bind bernama (8) DNS // Server sebagai Caching Only Nameserver (sebagai Resolver DNS Localhost sahaja). // // lihat/usr/share/doc/bind*/sampel/contohnya fail konfigurasi yang dinamakan. // opsyen pendengaran port 53  127.0.0.1; 192.168.0.201; # Server DNS Server kami IP Listen-on-V6 port 53 :: 1; ; direktori "/var/bernama"; fail dump "/var/named/data/cache_dump.db "; statistik-fail"/var/named/data/named_stats.txt "; memstatistics-file"/var/named/data/named_mem_stats.txt "; membenarkan-pertanyaan  localhost; 192.168.0.0/24; ; RECURSION NO; dnssec-enable ya; dnssec-validation ya; DNSSEC-LOOKASIDE AUTO; / * Laluan ke Kunci DLV ISC */Bindkeys-File "/etc/Dinamakan.iscdlv.kunci "; diuruskan-keys-directory"/var/named/dinamic ";; pembalakan saluran default_debug file" data/dinamakan.Jalankan "; dinamik keparahan;;; zon"."Dalam jenis petunjuk; fail" dinamakan.ca ";; ## Tentukan hamba kami ke hadapan dan zon terbalik, fail zon direplikasi dari tuan. Kawasan"Tecmintlocal.com"Dalam jenis hamba; fail"budak/tecmintlocal.fwd.Kawasan"; Master  192.168.0.200; ; ; Kawasan"0.168.192.dalam addr.arpa"Dalam jenis hamba; fail"budak/tecmintlocal.REV.Kawasan"; Master  192.168.0.200; ; ; ##### Sertakan "/etc/dinamakan.RFC1912.zon "; termasuk"/etc/dinamakan.akar.kunci "; 
Konfigurasikan DNS hamba

Mulakan perkhidmatan DNS menggunakan.

Perkhidmatan $ sudo bernama Start 

Setelah memulakan semula perkhidmatan mengikat, kami tidak perlu menentukan maklumat zon secara individu, sebagai kami membenarkan pemindahan akan meniru maklumat zon dari pelayan induk seperti yang ditunjukkan dalam imej di bawah.

$ sudo ls -l/var/name/hamba 

Sahkan, maklumat zon menggunakan perintah kucing.

$ sudo kucing/var/bernama/budak/tecmintlocal.fwd.zon $ sudo kucing/var/bernama/budak/tecmintlocal.REV.Kawasan 
Sahkan fail zon hamba

Seterusnya, Buka Port DNS 53 pada iptables untuk membenarkan sambungan masuk.

$ sudo iptables -i input -p udp --dport 53 -m state -state new -j Terima 

Simpan peraturan iptables dan mulakan semula perkhidmatan iptables.

$ sudo iptables perkhidmatan simpan $ sudo perkhidmatan iptables dimulakan semula 

Jadikan perkhidmatan berterusan pada boot sistem.

$ sudo chkconfig iptables on
Periksa sama ada set berterusan untuk tahap larian .
$ sudo chkconfig -list iptables 
Buka pelabuhan DNS

Itu sahaja!. Sekarang masa untuk mengkonfigurasi mesin pelanggan kami dan periksa nama hos.

Konfigurasikan mesin klien

Di sisi pelanggan kita perlu menetapkan yang utama (192.168.0.200) dan DNS sekunder (192.168.0.201) kemasukan dalam tetapan rangkaian untuk mendapatkan nama hos. Untuk dilakukan, jalankan perintah persediaan untuk menentukan semua penyertaan seperti yang ditunjukkan dalam gambar.

$ persediaan 
Tambah entri DNS

Lain, edit '/etc/reslov.Conf'fail dan tambahkan entri berikut.

$ vim /etc /resolv.Conf 
Cari Tecmintlocal.com Nameserver 192.168.0.200 Nameserver 192.168.0.201 

Sekarang, sahkan IP, Nama Host dan Nama Pelayan Nama.

$ ifconfig | grep inet $ hostname $ nslookup tecmintlocal.com 
Sahkan entri DNS

Sekarang, periksa penampilan DNS ke hadapan & terbalik menggunakan.

$ Dig Masterdns.Tecmintlocal.com $ DIG -X 192.168.0.200 
Semak maklumat DNS

Mengurangkan output penggalian:

  1. Kepala - Ini mengatakan semua yang telah kita minta dan bagaimana hasilnya.
  2. Status - Status tidak ada kesilapan, yang bermaksud permintaan pertanyaan yang dihantar oleh kami berjaya tanpa sebarang kesalahan.
  3. Soalan - Pertanyaan yang dibuat oleh kami, di sini pertanyaan saya adalah masterdns.Tecmintlocal.com.
  4. Jawapan - Permintaan pertanyaan diselesaikan jika ada maklumat yang ada.
  5. Kuasa - Respons pelayan nama untuk domain dan zon.
  6. Tambahan - Maklumat tambahan mengenai penyampai nama seperti nama hos dan alamat IP.
  7. Masa pertanyaan - Berapa lama masa yang diperlukan untuk menyelesaikan nama dari pelayan di atas.

Akhirnya periksa nod kami dan buat ping.

$ Dig node1.Tecmintlocal.com 
Semak maklumat DNS pelanggan
$ ping masterdns.Tecmintlocal.com -c 2 $ ping slavedns.Tecmintlocal.com -c 2 $ ping 192.168.0.200 -c 2 $ ping 192.168.0.201 -C 2 
Ping DNS Servers

Akhirnya, persediaan selesai, di sini kami telah mengkonfigurasi kedua-dua pelayan DNS utama (tuan) dan hamba (seconday) dengan jayanya, semoga semua orang mempunyai persediaan tanpa sebarang masalah, jangan ragu untuk menggugurkan komen jika anda menghadapi sebarang masalah semasa persediaan.