一,、DNS概述
在日常生活中人們習慣使用域名訪問服務器,,但機器間互相只認IP地址,域名與IP地址之間是多對一的關(guān)系,,一個IP地址不一定只對應一個域名,但一個域名只可以對應一個IP地址,,它們之間的轉(zhuǎn)換工作稱為域名解析,,域名解析需要由專門的域名解析服務器來完成,整個過程是自動進行的。
1.1 DNS簡介
- 域名系統(tǒng)(英文:Domain Name System,,縮寫:DNS)是互聯(lián)網(wǎng)的一項服務,。它作為將域名和IP地址相互映射的一個分布式數(shù)據(jù)庫,能夠使人更方便地訪問互聯(lián)網(wǎng),。
- DNS使用TCP和UDP的53端口,,TCP的53端口用于連接DNS服務器, UDP的53端口用于解析DNS,。
- 每一級域名長度的限制是63個字符,,域名總長度則不能超過253個字符。
1.2 DNS的分布式數(shù)據(jù)結(jié)構(gòu)
-
樹狀結(jié)構(gòu)最頂層稱為根域,,用“ . ”表示,,相應服務器稱為根服務器,整個域名空間解析權(quán)都歸根服務器所有,。 -
但根服務器無法承擔龐大的負載,,采用“委派機制”,在根域下設(shè)置了一些頂級域,,然后將不同頂級域解析權(quán)分別委派給相應的頂級域服務器(如將com域的解析權(quán)委派給com域服務器,,以后但凡根服務器收到以com結(jié)尾的域名解析請求,都會轉(zhuǎn)發(fā)給com域服務器) -
同樣道理,,為了減輕頂級域的壓力,,又下設(shè)了若干二級域,二級域又下設(shè)三級域或主機
1.3 域名結(jié)構(gòu)
http://www.sina.com.cn./ http://主機名.二級域.頂級域 根域/
根域
位于域名空間最頂層,,一般用一個" . "表示
頂級域
一般代表一種類型的組織機構(gòu)或國家地區(qū),,
如 .net (網(wǎng)絡(luò)供應商)、.com(工商企業(yè)),、.org(團體組織),、.edu(教育機構(gòu))、.gov (政府部門),、.cn(中國國家域名)
二級域
用來標明頂級域內(nèi)的一個特定的組織,,國家頂級域下面的二級域名由國家網(wǎng)絡(luò)部門統(tǒng)一管理,
如.cn頂級域名下面設(shè)置的二級域名: .com.cn,、.net.cn,、.edu.cn(中國網(wǎng)絡(luò)部門管理的特定機構(gòu))
子域
二級域下所創(chuàng)建的各級域統(tǒng)稱為子域,各個組織或用戶可以自由申請注冊自己的域名
主機
主機位于域名空間最下層,,就是一臺具體的計算機
如www.mail都是具體的計算機名字,,可用www.sina.com.cn.、mail.sina.com.cn.來表示,,這種表示方式稱為FQDN(完全合格域名),,也是這臺主機在域名中的全名
1.4 DNS域名解析方式
- 正向解析:根據(jù)域名查找對應的IP地址
- 反向解析:根據(jù)IP地址查找對應的域名
1.5 DNS服務器類型
-
主域名服務器:負責維護一個區(qū)域的所有域名信息,,是特定的所有信息的權(quán)威信息源,數(shù)據(jù)可以修改,。構(gòu)建主域名服務器時,,需要自行建立所負責區(qū)域的地址數(shù)據(jù)文件。 -
從域名服務器:當主域名服務器出現(xiàn)故障,、關(guān)閉或負載過重時,,從域名服務器作為備份服務提供域名解析服務。從域名服務器提供的解析結(jié)果不是由自己決定的,,而是來自于主域名服務器,。構(gòu)建從域名服務器時,需要指定主域名服務器的位置,,以便服務器能自動同步區(qū)域的地址數(shù)據(jù)庫,。 -
緩存域名服務器:只提供域名解析結(jié)果的緩存功能, 目的在于提高查詢速度和效率,,但沒有域名數(shù)據(jù)庫,。 它從某個遠程服務器取得每次域名服務器查詢的結(jié)果,并將它放在高速緩存中,,以后查詢相同的信息時用它予以響應,。緩存域名服務器不是權(quán)威性服務器,因為提供的所有信息都是間接信息,。構(gòu)建緩存域名服務器時,,必須設(shè)置根域或指定其他DNS服務器作為解析來源。 -
轉(zhuǎn)發(fā)域名服務器:負責所有非本地域名的本地查詢,。轉(zhuǎn)發(fā)域名服務器接到查詢請求后,,在其緩存中查找,如找不到就將請求依次轉(zhuǎn)發(fā)到指定的域名服務器,,直到查找到結(jié)果為止,,否則返回無法映射的結(jié)果。
二,、構(gòu)建DNS域名解析服務器步驟
2.1 配置正向解析
安裝軟件包之前需要先掛載鏡像
①安裝 bind軟件包 yum -y install bind ②查詢bind軟件配置文件所在路徑 rpm -qc bind ③關(guān)閉防火墻 systemctl stop firewalld.service setenforce 0 ④修改主配置文件
vim /etc/named.conf
options {
listen-on-v6 poet 53 { 192.168.153.10; }; #監(jiān)聽53端口,,IP地址使用提供服務的本地IP,也可用any代表所有
listen-on-v6 port 53 { : :1; }; #ipv6行如不使用可以注釋掉或者刪除
directory "/var/named"; #區(qū)域數(shù)據(jù)文件的默認存放位 置
dump- file "/var/ named/data/cache_ dump . db"; #域名緩存數(shù)據(jù)庫文件的位置
statistics-file "/var/named/data/named stats.txt"; #狀態(tài)統(tǒng)計文件的位置
memstatistics-file "/var/named/data/named_ mem_ stats. txt"; #內(nèi)存統(tǒng)計文件的位置
allow-query { any; }; #允許使用本DNS解析服務的網(wǎng)段,,也可用any代表所有
zone "." IN { #正向解析“. "根區(qū)域
type hint; #類型為根區(qū)域
file "named.ca"; #區(qū)域數(shù)據(jù)文件為named.ca,,記錄了13臺根域服務器的域名和IP地址等信息
vim /etc/named.conf 注意分號和空格都別動!!
⑤修改區(qū)域配置文件,添加正向區(qū)域配置
vim /etc/ named.rfc1912.zone #可在文件里有模版,,可復制粘貼后修改
zone "acc.com" IN { #正向解析"acc.com"區(qū)域
type master; #類型為主區(qū)域
file "acc. com.zone"; #指定區(qū)域數(shù)據(jù)文件為acc. com. zone
allow-update { none; };
};
vim /etc/named.rfc1912.zones
⑥配置正向區(qū)域數(shù)據(jù)文件
cd /var/named/
cp -p named.localhost acc.com.zone #保留源文件的權(quán)限和屬主的屬性復制
vim /var/named/acc.com.zone
$TTL 1D #設(shè)置緩存解析結(jié)果的有效時間
@ IN SOA acc.com. admin.acc.com. (
0; serial .
1D; refresh
1H; retry
1W; expire
3H ) ; minimum
NS acc.com. #記錄當前區(qū)域的DNS服務器的名稱
A 192.168.153.10 #記錄主機IP地址
IN MX 10 mail.acc.com. #MX為郵件交換記錄,,數(shù)字越大優(yōu)先級越低
www IN A 192.168.153.10 #記錄正向解析www.acc.com對應的IP
mail IN A 192.168.153.20
ftp IN CNAME www #CNAME使用別名,ftp是www的別名
* IN A 192.168.153.30 #泛域名解析,,“*"代表任意主機名
修改為:
⑦開啟服務 在客戶端的域名解析配置文件中添加DNS服務器地址 systemctl start named vim /etc/resolv.conf
rndc-confgen -r /dev/urandom -a 如果服務啟動卡住,,可以執(zhí)行此命令解決
⑧測試DNS解析
2.2 配置反向解析
主配置文件和正向解析一樣修改即可 ①修改區(qū)域配置文件,,添加反向區(qū)域配置
vim /etc/named.rfc1912.zone #文件里有模版,可復制粘貼后修改
zone "153.168.192.in-addr.arpa" IN { #反向解析的地址倒過來寫,代表解析192.168.153段的地址
type master;
file "acc.com.zone.local"; #指定區(qū)域數(shù)據(jù)文件為acc.com. zone.local
allow-update ( none; );
};
②配置反向區(qū)域數(shù)據(jù)文件
cd /var/named/
cp -p named.localhost acc.com.zone.local
vim /var/named/acc.com.zone.local
$TTL 1D
@ IN SOA acc.com. admin.acc.com. ( #這里的“@"代表192.168.153網(wǎng)段地址
........
NS benet.com.
А 192.168.153.10
10 IN PTR www.acc.com.
20 IN PTR mail.acc.com.
#PTR為反向指針,反向解析192.168.153.10地址結(jié)果為www.acc.com.
③關(guān)閉防火墻
④重啟服務就可以反解出域名了
2.4 配置主從服務器
此實驗需要兩臺虛擬機(一主一從,,主服務器用上面實驗的那臺即可)
2.4.1 配置主服務器
①編輯區(qū)域配置文件
②指定從服務器DNS地址
2.4.2 配置從服務器(第二臺虛擬機)
配置之前需掛載鏡像并安裝軟件包
①編輯主配置文件
②編輯區(qū)域配置文件 ③重啟服務
2.4.3 測試DNS服務
2.4 搭建DNS分離解析服務器
分離解析的域名服務器實際也是主域名服務器,這里主要是指根據(jù)不同的客戶端提供不同的域名解析記錄,。比如來自內(nèi)網(wǎng)和外網(wǎng)的不同網(wǎng)段地址區(qū)域的客戶機請求解析同一域名時,為其提供不同的解析結(jié)果,得到不同的IP地址,。
實驗要求:配置網(wǎng)關(guān)服務器搭建DNS分離解析 在網(wǎng)關(guān)服務器搭建DNS分離解析,使局域網(wǎng)主機解析www.benet.com為192.168.80.200,外網(wǎng)主機解析www.benet.com為12.0.0.1. 此實驗需要一臺CentOS7虛擬機,、一臺win10虛擬機
2.4.1 配置CentOS7虛擬機
掛載鏡像,,安裝軟件包
①為網(wǎng)關(guān)服務器配置雙網(wǎng)卡 關(guān)閉虛擬機添加一塊網(wǎng)卡后開啟虛擬機 ifconfig查看網(wǎng)口狀態(tài),看下新網(wǎng)卡的名字 ②配置新網(wǎng)卡
③修改主配置文件
“ G ”切換到主配置文件最底部會看到一段有“ zone ”開頭的內(nèi)容,,需加#注釋掉會直接刪掉
④修改區(qū)域配置文件
⑤編輯區(qū)域數(shù)據(jù)配置文件 內(nèi)網(wǎng): 外網(wǎng):
⑥關(guān)閉系統(tǒng)防火墻,,開啟DNS服務,進行測試
2.4.2 配置win10虛擬機
成功
|