Linux-dns伺服器搭建
阿新 • • 發佈:2020-07-23
DNS解析流程: 1. 客戶端查詢自己的快取(包含 hosts 中的記錄),如果沒有將查詢傳送 /etc/resolv.conf 中的 DNS 伺服器 2. 如果本地 DNS 伺服器對於請求的資訊具有 權威性 ,會將(權威答案)傳送到客戶端。 3. 否則( 不具有權威性 ),如果 DNS 伺服器在其快取中有請求資訊,則將(非權威答案)傳送到客戶端 4. 如果快取中沒有該查詢資訊, DNS 伺服器將搜尋權威 DNS 伺服器以查詢資訊: a. 從根區域開始,按照 DNS 層次結構向下搜尋,直至對於資訊具有權威的名稱伺服器,為客戶端獲答 案 DNS 伺服器將資訊傳遞給客戶端 ,並在自己的快取中保留一個副本,以備以後查詢。 b. 轉發到其它 DNS 伺服器 1.安裝dns伺服器 shell# yum y install bind bind chroot shell# systemctl restart named shell# systemctl enable named #新增防火牆 shell# firewall cmd permanent a dd service=dns shell# firewall cmd reload 2.主配置檔案(新增區域) shell# vim /etc/named.conf #配置檔案 options { listen-on port 53 { any; }; #修改為any listen-on-v6 port 53 { any; }; #修改為any 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"; recursing-file "/var/named/data/named.recursing"; secroots-file "/var/named/data/named.secroots"; allow-query { any; }; #修改為any forwarders {114.114.114.114;192.168.80.2}; #轉發到上一級dns #根區域 zone "." IN { type hint; file "named.ca"; }; #新增區域(changlidong.com) zone "changlidong.com" { type master; file "changlidong.com.zone"; #配置檔案 }; #新增去(labdocker) zone "labdocker" { type master; file "labdocker.com.zone"; #配置檔案 }; 3.區域配置檔案 預設路徑:/var/named/ #changlidong.com配置檔案 shell# vim /var/named/changlidong.com.zone $TTL 600 @ IN SOA @ root (2020032300 1H 15M 1W 1D) @ IN NS dns dns IN A 192.168.80.100 www IN A 192.168.80.201 bbs IN A 192.168.80.202 #labdocker配置檔案 shell#vim /var/named/labdocker.com.zone $TTL 600 @ IN SOA @ root (2020032300 1H 15M 1W 1D) @ IN NS dns dns IN A 192.168.80.100 www IN A 192.168.80.22 master01 IN A 192.168.80.24 bbs IN A 192.168.80.35 4.引數說明 @ 表示當前域名 www.tianyun.com. = www 第一個欄位繼承 SOA: 起始授權記錄 強制 NS: DNS 伺服器記錄 強制 A: 主機記錄 CNAME: 別名記錄 5.客戶端測試工具 安裝: shell# yum install -y bind-utils 使用: shell# nslookup www.changlidong.com #解析地址 shell# nslookup 192.168.80.201 #反向解析,伺服器需要配置才能顯示 shell# host -t A www.changlidong.com #正向解析 shell# host 192.168.80.201 #反向解析 shell# host www.changlidong.com 192.168.80.100 #使用dns伺服器 shell# host -t SOA changlidong.com #查詢區域的SOA shell# host -t NS changlidong.com #查詢某個區域的NS shell# host -t MX changlidong.com #查詢某個區域的郵件伺服器 shell# dig www.changlidong.com #使用 /etc/resolv.conf 設定的 DNS shell# dig @192.168.80.100 www.changlidong.com #使用指定的 DNS