如何在Linux上安裝和配置僅快取的DNS伺服器
本文將向您展示如何使用DNS在本地環境中配置DNS快取或轉發伺服器。在學習配置網站和伺服器等內容時,DNS(域名系統)伺服器通常至關重要。大多數人會選擇使用託管公司或域控制器提供的DNS伺服器。
快取DNS伺服器
此配置將快取DNS伺服器。這類伺服器被稱為解析器,因為它處理遞迴查詢,並且可以處理從伺服器跟蹤DNS資料的繁瑣工作。
安裝BIND軟體包
要安裝bind軟體包,可以使用以下命令。此外,快取名稱伺服器軟體包已包含在bind軟體包中。
# yum install bind bind-chroot Resolving Dependencies --> Running transaction check ---> Package bind.x86_64 32:9.8.2-0.37.rc1.el6_7.7 will be installed --> Processing Dependency: bind-libs = 32:9.8.2-0.37.rc1.el6_7.7 for package: 32:bind-9.8.2-0.37.rc1.el6_7.7.x86_64 ---> Package bind-chroot.x86_64 32:9.8.2-0.37.rc1.el6_7.7 will be installed --> Running transaction check ---> Package bind-libs.x86_64 32:9.8.2-0.37.rc1.el6 will be updated --> Processing Dependency: bind-libs = 32:9.8.2-0.37.rc1.el6 for package: 32:bind-utils-9.8.2-0.37.rc1.el6.x86_64 ---> Package bind-libs.x86_64 32:9.8.2-0.37.rc1.el6_7.7 will be an update --> Running transaction check ---> Package bind-utils.x86_64 32:9.8.2-0.37.rc1.el6 will be updated ---> Package bind-utils.x86_64 32:9.8.2-0.37.rc1.el6_7.7 will be an update --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================== Package Arch Version Repository Size ============================================================================================================================================== Installing: bind x86_64 32:9.8.2-0.37.rc1.el6_7.7 updates 4.0 M bind-chroot x86_64 32:9.8.2-0.37.rc1.el6_7.7 updates 75 k Updating for dependencies: bind-libs x86_64 32:9.8.2-0.37.rc1.el6_7.7 updates 887 k bind-utils x86_64 32:9.8.2-0.37.rc1.el6_7.7 updates 186 k Transaction Summary ============================================================================================================================================== Install 2 Package(s) Upgrade 2 Package(s) Total download size: 5.1 M Is this ok [y/N]: y Downloading Packages: (1/4): bind-9.8.2-0.37.rc1.el6_7.7.x86_64.rpm | 4.0 MB 00:00 (2/4): bind-chroot-9.8.2-0.37.rc1.el6_7.7.x86_64.rpm | 75 kB 00:00 (3/4): bind-libs-9.8.2-0.37.rc1.el6_7.7.x86_64.rpm | 887 kB 00:00 (4/4): bind-utils-9.8.2-0.37.rc1.el6_7.7.x86_64.rpm | 186 kB 00:00 ---------------------------------------------------------------------------------------------------------------------------------------------- Total 1.4 MB/s | 5.1 MB 00:03 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Updating : 32:bind-libs-9.8.2-0.37.rc1.el6_7.7.x86_64 1/6 Installing : 32:bind-9.8.2-0.37.rc1.el6_7.7.x86_64 2/6 Installing : 32:bind-chroot-9.8.2-0.37.rc1.el6_7.7.x86_64 3/6 Updating : 32:bind-utils-9.8.2-0.37.rc1.el6_7.7.x86_64 4/6 Cleanup : 32:bind-utils-9.8.2-0.37.rc1.el6.x86_64 5/6 Cleanup : 32:bind-libs-9.8.2-0.37.rc1.el6.x86_64 6/6 Verifying : 32:bind-chroot-9.8.2-0.37.rc1.el6_7.7.x86_64 1/6 Verifying : 32:bind-utils-9.8.2-0.37.rc1.el6_7.7.x86_64 2/6 Verifying : 32:bind-9.8.2-0.37.rc1.el6_7.7.x86_64 3/6 Verifying : 32:bind-libs-9.8.2-0.37.rc1.el6_7.7.x86_64 4/6 Verifying : 32:bind-libs-9.8.2-0.37.rc1.el6.x86_64 5/6 Verifying : 32:bind-utils-9.8.2-0.37.rc1.el6.x86_64 6/6 Installed: bind.x86_64 32:9.8.2-0.37.rc1.el6_7.7 bind-chroot.x86_64 32:9.8.2-0.37.rc1.el6_7.7 Dependency Updated: bind-libs.x86_64 32:9.8.2-0.37.rc1.el6_7.7 bind-utils.x86_64 32:9.8.2-0.37.rc1.el6_7.7 Complete! Config the Configuration File
出於安全考慮,我們需要使用以下命令從bind示例檔案中複製bind配置檔案。需要根據安裝的版本更改檔案路徑。
# cd /var/named/chroot/etc # cp /usr/share/doc/bind-9.8.2/sample/etc/named.conf /var/named/chroot/etc # cp /usr/share/doc/bind-9.8.2/sample/etc/named.rfc1912.zones /var/named/chroot/etc
更新配置檔案
您可以在自己喜歡的編輯器中編輯bind配置檔案,並根據以下要求和設定進行必要的更改:
# /var/named/chroot/etc/named.conf options { listen-on port 53 { 127.0.0.1; any; }; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { localhost; any; }; allow-query-cache { localhost; any; }; recursion yes; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; include "/etc/named.rfc1912.zones";
現在,使用以下命令更新配置檔案所需的許可權。
# chown root:named named.conf named.rfc1912.zones
檢查配置檔案
我們建議在重新啟動服務之前檢查DNS配置檔案,使用以下命令:
# named-checkconf named.conf
重新啟動Bind服務
現在,bind服務的安裝和配置已完成。我們使用以下命令啟動bind(named)服務。
# service named restart
啟用系統啟動時自動啟動bind服務。
# chkconfig named on
最後測試僅快取DNS
使用以下命令直接向**DNS**伺服器傳送查詢。
Syntax: nslookup <domain name> <caching dns server name/IP address>
# nslookup google.com 192.168.87.150 [Sample Output:] Server: 192.168.87.158 Address: 192.168.87.158#53 Non-authoritative answer: Name: google.com Address: 216.58.220.46
如果我們配置了上述配置,則已成功在您的Linux系統上配置了快取DNS伺服器,我們可以將其用作本地環境中的快取伺服器。
廣告