DNS域名系統概述及正向解析實驗(詳細)

leec。發表於2020-12-08

一、DNS—域名系統

1、DNS定義:DNS是“域名系統”的英文縮寫。它作為將域名和IP地址相互對映的一個分散式資料庫,能夠使人更方便地訪問網際網路。

2、DNS使用埠:DNS服務使用TCP和UDP的53埠,TCP的53埠用於連線DNS伺服器,UDP的53埠用於解析DNS。

3、DNS域名長度限制:每一級域名長度的限制是63個字元,域名總長度則不能超過253個字元

4、DNS作用:正向解析:根據域名查詢對應的IP地址;反向解析:根據IP地址查詢對應的域名

二、DNS的域名結構

●DNS系統的結構為分散式資料結構

1、根域:位於樹狀結構最頂層,用"."表示

2、頂級域:一般代表一種型別的組織機構或國家地區;
如.net(網路供應商)、.com(工商企業)、.org(團體組織)、.edu(教育結構)、.gov(政府部門)、.cn(中國國家域名)

3、二級域:用來標明頂級域內的一個特定的組織,國家頂級域下面的二級域名由國家部門統一管理

4、子域:二級域下所建立的各級域統稱為子域,各個組織或使用者可以自由申請註冊自己的域名

5、主機:主機位於域名空間最下層,就是一臺具體的計算機

三、DNS伺服器型別

1、主域名伺服器:負責維護一個區域的所有域名資訊,是特定的所有資訊的權威資訊源,資料可以修改。構建主域名伺服器時,需要自行建立所負責區域的地址資料檔案。

2、從域名伺服器:當主域名伺服器出現故障、關閉或負載過重時,從域名伺服器作為備份服務提供域名解析服務。從域名伺服器提供的解析結果不是由自己決定的,而是來自於主域名伺服器。構建從域名伺服器時,需要指定主域名伺服器的位置,以便伺服器能自動同步區域的地址資料庫。

3、快取域名伺服器:只提供域名解析結果的快取功能 目的在於提高查詢速度和效率,但沒有域名資料庫。
它從某個遠端伺服器取得每次域名伺服器查詢的結果,並將它放在快取記憶體中,以後查詢相同的資訊時用它予以響應。快取域名伺服器不是權威性伺服器,因為提供的所有資訊都是間接資訊。構建快取域名伺服器時,必須設定根域或指定其他DNS伺服器作為解析來源。

4、轉發域名伺服器:負責所有非本地域名的本地查詢。轉發域名伺服器接到查詢請求後,在其快取中查詢,如找不到就將請求依次轉發到指定的域名伺服器,直到查詢到結果為止,否則返回無法對映的結果。

四、構建DNS域名解析伺服器步驟(帶圖詳解)

1、安裝bind軟體包

yum -y install bind    

在這裡插入圖片描述

配置正向解析

①先檢視需要修改的配置檔案所在路徑

rpm -qc bind                   #查詢bind軟體配置檔案所在路徑
/etc/named.conf                #主配置檔案
/etc/named/rfc1912.zonrs       #區域配置檔案
/var/named/named.localhost     #區域資料配置檔案

在這裡插入圖片描述在這裡插入圖片描述
修改完成:wq儲存並退出
②修改主配置檔案

vim /etc/named.conf
options {
  listen-on-v6 poet 53 { 192.168.184.10; };              #監聽53埠,IP地址使用提供服務的本地IP,也可用any代表所有
#   listen-on-v6 port 53 { : :1; };                      #ipv6行如不使用可以註釋掉或者刪除
  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
{ any; };                                                #允許使用本DNS解析服務的網段,也可用any代表所有

zone "." IN {                                            #正向解析“. "根區域
        type hint;                                       #型別為根區域
        file "named.ca";                                 #區域資料檔案為named.ca,記錄了13臺根域伺服器的域名和IP地址等資訊
};

在這裡插入圖片描述
修改完成:wq儲存並退出

include "/etc/ named. rfc1912. zones";                   #包含區域配置檔案裡的所有配置

③修改區域配置檔案,新增正向區域配置

vim /etc/ named. rfc1912. zone                           #可在檔案裡有模版,可複製貼上後修改
zone "lic. com" IN {                                     #正向解析"lic.com"區域
type master;                                             #型別為主區域
 file "lic. com. zone";                                  ●指定區域資料檔案為lic. com. zone
allow-update { none; };
};

在這裡插入圖片描述
修改完成:wq儲存並退出
④配置正向區域資料檔案

cd /var/named/
cp -P named. localhost lic.com.zone                      #保留原始檔的許可權和屬主的屬性複製
vim /var/named/lic.com.zone
$TTL 1D                                                  #設定快取解析結果的有效時間
@       IN SOA lic.com. admin.lic.com. (
                                           0; serial .
                                           1D; refresh
                                           1H; retry
                                           1W; expire
                                           3H ) ; minimum
         NS    lic.com.                                  #記錄當前區域的DNS伺服器的名稱
         A     192.168.184.10                            #記錄主機IP地址
IN   MX  10    mail.lic.com.                             #MX為郵件交換記錄,數字越大優先順序越低
www  IN  A     192.168.184.10                            #記錄正向解析www.benet.com對應的IP
mail IN  A     192.168.184.11
ftp  IN CNAME  www                                       #CNAME使用別名,ftp是www的別名
*    IN   A    192.168.184.100                           #泛域名解析,“*"代表任意主機名

在這裡插入圖片描述在這裡插入圖片描述
我這裡修改為:請看下圖解析
在這裡插入圖片描述
修改完成:wq儲存並退出
⑤啟動服務,關閉防火牆

systemctl start named
systemctl stop firewalld
setenforce 0        
tail -f /var/log/ messages                               #如果服務啟動失敗,可以檢視日誌檔案來排查錯誤

在這裡插入圖片描述
在這裡插入圖片描述

rndc-confgen -r /dev/urandom -a                          #如果服務啟動卡住,可以執行此命令解決

⑥在客戶端的域名解析配置檔案中新增DNS伺服器地址

vi /etc/resolv.conf                                      #修改完後立即生效
nameserver 192.168.184.10


vi /etc/ sysconfig/network- scripts/ ifcfg-ens33         #修改完後需要重啟網路卡
DNS1=192.168.80.10
systemctl restart network

⑦測試DNS解析

host www.lic.com
nslookup www.lic.com

使用虛擬機器win10進行域名解析

1、開啟虛擬機器win10,記住虛擬機器win10和CentOS7需要在同一網路中
在這裡插入圖片描述
2、更改虛擬機器win10的網路設定
在這裡插入圖片描述
3、進入後,找到Eehernet0右擊選擇屬性,然後按下圖進行操作
在這裡插入圖片描述

在這裡插入圖片描述
4、設定好後點選禁用,然後點選啟用,以防網路介面卡沒有重新整理

在這裡插入圖片描述

5、開啟cmd命令提示符進行域名訪問

在這裡插入圖片描述

完成

相關文章