一、什么是DNS
DNS 是域名服務 (Domain Name System) 的縮寫,它是由解析器和域名服務器組成的。
域名服務器是指保存有該網絡中所有主機的域名和對應IP地址,
并具有將域名轉換為IP地址功能的服務器。
域名必須對應一個IP地址,而IP地址不一定有域名。
域名服務器為客戶機/服務器模式中的服務器方,它主要有兩種形式:主服務器和轉發服務器。
將域名映射為IP地址的過程就稱為"域名解析"。
在Internet上域名與IP地址之間是一對一(或者多對一)的,
也可采用DNS輪循實現一對多,域名雖然便于人們記憶,
但機器之間只認IP地址,它們之間的轉換工作稱為域名解析,
域名解析需要由專門的域名解析服務器來完成,DNS就是進行域名解析的服務器。
DNS 命名用于 Internet等 TCP/IP網絡中,通過用戶友好的名稱查找計算機和服務。
當用戶在應用程序中輸入 DNS 名稱時,
DNS 服務可以將此名稱解析為與之相關的其他信息,如 IP 地址。
因為,你在上網時輸入的網址,是通過域名解析系統解析找到了相對應的IP地址,
這樣才能上網。其實,域名的最終指向是IP
二、域名的規則
域名空間結構:【例:】www.baidu.com.
根域:com后面的用"."表示
頂級域:頂級域分為組織域和國家或地區域。
組織域采用3個字符代號,如.com .edu .gov
國家或地區域,采用兩個字符代號。如.cn .jp
二級域:二級域注冊到個人、組織或者公司名稱,如baidu、taobao等
主機名稱:主機名稱處于域名空間的最底層,主機名與上述各級域名結合構成FQND(完全合格域名),如www。
注意:每個域用一個點號“.”分開
三、DNS服務的作用
1.核心作用:實現域名與 IP 地址的雙向翻譯
【例】用戶在瀏覽器輸入 www.baidu.com,DNS 服務器將其解析為百度服務器的 IP 地址(如 14.215.177.38),從而建立網絡連接;網絡設備(如防火墻、服務器)通過 IP 地址反查域名,用于日志記錄、訪問控制或故障排查(如判斷某個 IP 是否屬于可信域名)。
擴展作用:支撐網絡服務的高效與穩定
【例】實現負載均衡與流量分配;提高服務冗余與高可用性;提高網絡安全與訪問控制
四、域名查詢的過程
DNS查詢類別:
遞歸查詢:發生在客戶端和DNS服務器之間
迭代查詢:發送在DNS服務器和DNS服務器之間
DNS解析方式:
正向解析:將FQDN解析為對應的IP
反向解析:將IP解析為對應的FQDN
域名查詢流程簡化
用戶輸入域名 → 檢查本地緩存(瀏覽器 / 系統 /hosts);
無結果 → 向本地 DNS 服務器查詢;
本地 DNS 服務器無緩存 → 依次查詢根服務器 → 頂級域名服務器 → 權威域名服務器;
獲取 IP 地址 → 返回給用戶并緩存 → 建立連接。
四.DNS重要的配置文件及目錄解釋
/etc/hosts 本地解析配置文件
/etc/resolv.conf 客戶端的DNS指向
named DNS服務名稱
bind,bind-chroot DNS安裝軟件包
/var/named DNS的家目錄
/etc/named.conf 映射的DNS主配置文件
/var/named/chroot/etc/named.rfc1912.zones 記錄DNS正向和反向的全局解析配置文件
/var/named/named.localhost 正向解析的配置文件模板
/var/named/named.empty 反向解析的配置文件模板
/etc/named.conf 映射的DNS主配置文件
/var/named/chroot/etc/named.rfc1912.zones全局解析配置文件
五,DNS 服務器類型(主 DNS 與輔助 DNS)
主 DNS 服務器(Primary/Authoritative DNS)
定義:負責維護特定域名區域(Zone)的原始數據,是該區域的權威數據源。
權限:可直接修改域名記錄(如 A、MX、CNAME 等),并生成更新序列號(Serial)。
存儲:區域文件存儲在本地(如 /var/named/example.com.db)。
輔助 DNS 服務器(Secondary DNS)
定義:從主 DNS 服務器同步區域數據,提供冗余備份和負載分擔。
權限:只讀,無法直接修改記錄,需通過主 DNS 更新。
同步機制:通過 AXFR/IXFR 協議定期檢查主 DNS 的序列號,發現更新時拉取全量或增量數據
定義域和網段的映射關系分為:正向解析(FQDN → IP)和 反向解析(IP → FQDN)
六、使用bind方式搭建主DNS服務器
目標:通過配置我們可以將192.168.100.10和ycy2.example.com相互轉換
1.配置本地yum倉庫
掛載yum倉庫
mount /dev/cdrom /mnt/
配置主DNS服務器
安裝bind、bind-chroot軟件
yum -y install bind bind-chroot
2.進入vim /etc/named.conf,編輯DNS服務器主配置文件

3. 配置區域文件(/etc/named.rfc1912.zones)
區域文件定義正向和反向解析的 “區域” 規則,指定解析文件路徑:
##反向解析全局配置文件
zone "localhost.localdomain" IN {type master;file "named.localhost";allow-update { none; };
};zone "localhost" IN { ##將這五行復制粘貼到末尾type master;file "named.localhost";allow-update { none; };
};
##反向解析全局配置文件zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {type master;file "named.loopback";allow-update { none; };
};zone "1.0.0.127.in-addr.arpa" IN {type master;file "named.loopback";allow-update { none; };
};zone "0.in-addr.arpa" IN { ##以及這五行粘貼到文件末尾type master;file "named.empty";allow-update { none; };
};##粘貼在文件末尾再去修改,因為我們一般不去修改源文件的配置zone "localhost" IN { ##localhost修改為域名:example.com type master; ##表示主DNS服務器類型file "named.localhost"; ##文件名allow-update { none; };
};zone "0.in-addr.arpa" IN { type master;file "named.empty";allow-update { none; };
};

4.編輯正向和反向解析全局配置文件
將存放正向和反向解析的配置文件模板復制一份,且保持源文件的屬性
/var/named/named.localhost 正向解析的配置文件模板
/var/named/named.empty 反向解析的配置文件模板
cd /var/named
cp -p named.localhost ycy.com
cp -p named.empty com.ycy
(1)編輯正向解析文件
vim /var/named/ycy.com

(2)編輯反向解析文件
vim /var/named/com.ycy

**$TTL 1D:**緩存周期為1天
**SOA:**起始授權記錄,就是由誰讓你做解析的,即DNS服務器
**serial:**序列號,可以隨便寫
**refresh:**定義輔助DNS刷新的時間,也就是說輔助DNS會隔多久同步主dns解析數據。
**retry:**表示重試延遲,也就是說輔助dns第一次同步數據失敗,那么就需要隔多久(就是retry來定義)來同步
**expire:**表示失效的時間,超過這個時間,輔助DNS一直同步數據失敗,那么該輔助DNS服務器將失效,則不會再去同步主DNS數據。
**minimum:**表示定義無效解析的緩存時間。
一個FQDN只能對應一個IP,但是一個IP可以對應多個FQDN。
4,重啟服務
systemctl restart named
systemctl enable named
5.配置關閉防火墻,關閉SELinux
systemctl stop firewalld #關閉防火墻
systemctl disable firewalld #設置開啟自啟
setenforce 0 #設置SElinux狀態為全部允許訪問模式
getenforce #查看SWlinux狀態
6.在另一臺設備網卡配置文件中配置DNS為服務器的IP:192.168.100.10
vim /etc/sysconfig/network-scripts/ifcfg-ens33
7.驗證
nslookup

七、搭建DNS輔助服務器
除了編輯正向和反向解析全局配置文件不一樣其他都一樣
