DNS解析 正向解析反向解析


DNS域名解析服務(Domain Name System)是用於解析域名與IP地址對應關系的服務,功能上可以實現正向解析反向解析

正向解析:根據主機名(域名)查找對應的IP地址。

反向解析:根據IP地址查找對應的主機名(域名)

 

正向解析實驗:

1、第一步,安裝bind 

yum -y install bind bind-utils

2、第二步:修改主配置文件

 vim /etc/named.conf:

//將下行中的127.0.0.1修改為any,代表允許監聽任何IP地址。

listen-on port 53 { 127.0.0.1; };

//將下行中的localhost修改為any,代表允許任何主機查詢。

allow-query { localhost; };

3、修改DNS 地址為本機IP  

    修改配置文件 etc/sysconfig/network-scripts/ ifcfg-eth0   DNS 為本機IP

  注意這一步,需要重啟網卡,systemctl restart network  (centos7)

4、第四步,修改區域配置文件 /etc/named.rfc1912.zones

 vi /etc/named.rfc1912.zones  參照里面的格式去寫,增加以下內容

zone "magedu.org" {     #magedu.org 這是域名 前面不要畫蛇添足的加www ,加了www,代表 是台機器了
type master;     #類型,master 代表主
file "magedu.org.zone";  #文件 這個文件是相對路徑,會自動被存放在/var/named 里面,這個從named.conf 配置文件的 directory 那看到

};

修改晚區域數據文件后,最好用命令檢查以下語法

named-checkconf
named-checkzone magedu.org /var/named/magedu.org.zone
systemctl start named          #第一次啟動服務
rndc reload                    #不是第一次啟動服務
 

5、第五步:cd /var/named/ 進入這個文件夾下,創建 magedu.org.zone 這個文件,因為這個文件對權限 格式有要求,我們建議用cp 命令復制自帶的

cp named.localhost magedu.org.zone -p   #-p 是保留屬性的意思

也可以命令格式

touch /var/named/magedu.org.zone 

chmod 640 /var/named/magedu.org.zone 

chgrp named /var/named/magedu.org.zone 

6、第六步,修改配置文件  magedu.org.zone

資源定義的格式

name   [TTL]   IN   rr_type   value

里面格式:

 

 解釋:

1、name 代表當前服務器的域名,可以用@ 代替,這個值也是第二步中的 zone "magedu.org"  中的 magedu.org
2、 TTL可從全局繼承  所有的都可以引用所以寫最上面了
3、IN 固定寫法
4、rr_type   記錄類型:A, AAAA, PTR, SOA, NS, CNAME, MX
  SOA:Start Of Authority,起始授權記錄;一個區域解析庫有且僅能有一個SOA記錄,必須位於解
  析庫的第一條記錄
  A:internet Address,作用,FQDN --> IP
  AAAA:FQDN --> IPv6
  PTR:PoinTeR,IP --> FQDN
  NS:Name Server,專用於標明當前區域的DNS服務器
  CNAME : Canonical Name,別名記錄
  MX:Mail eXchanger,郵件交換器
  TXT:對域名進行標識和說明的一種方式,一般做驗證記錄時會使用此項,如:SPF(反垃圾郵
  件)記錄,https驗證等,
5、value這個比較復雜  @ rname.invalid.

    @ 代表的還是當前服務器域名 可以寫成自己的域名  比如 master.magedu.org.  注意最后這個. 一定要加上,否則解析的時候會變成magedu.org.magedu.org

           還需要注意如果加了這個master.magedu.org,那么需要配合,需要在NS @ 那一行下面加一行  master  A  10.0.0.160

         

 

 

           rname.invalid. 代表的是郵箱地址,實際應該是 rname@invalid. 但是@ 有特殊意思,本機域名,所以用 . 代替了 ,當然這個不起作用,沒有影響

          還需要注意,這個master.magedu.org.  還可以改成 master 后面的之間不加,默認,

           

 

      還要注意一點,就是每一行 參數如果和上面的一行 參數是一樣的,可以不寫

     比如第3行 NS  @   正常格式 是  @ IN NS @ values  這里省略了 @ IN values的值 這些,也就是()里面的內容

  () 里面的內容解釋

     0    ; serial  代表是數據庫,且0代表版本號 這個0 是數字,每改一次需要+1

       1D  ; refresh  刷新間隔

    1H   ;retry   refresh 失敗的時候,1小時在拉送數據一次

    1W ; expire 過期時間,主從數據長期同步失敗后,一周后,從服務數據被認為是過期

         3H  ; minimum  最小時間,緩存的有效期

 

最后

 

 

重啟named 服務,用自帶的命令  :rndc reload   

 測試

root@centos7 /]# host www.magedu.org
www.magedu.org has address 10.0.0.100
[root@centos7 /]# host master.magedu.org
master.magedu.org has address 10.0.0.160
[root@centos7 /]# host db.magedu.org
db.magedu.org has address 10.0.0.85
[root@centos7 /]# host 123.magedu.org
123.magedu.org has address 10.0.0.100

 

 

反向解析實驗

1、第一步,配置區域數據文件

vim /etc/named.rfc1912.zones 添加

zone "0.0.10.in-addr.arpa" IN {
type master;
file "10.0.0.zone";
};

2、第二步:cd /var/named/ 進入這個文件夾下,創建 10.0.0.150.zone 這個文件,因為這個文件對權限 格式有要求,我們建議用cp 命令復制自帶的

cp named.loopback 10.0.0.zone -p   #-p 是保留屬性的意思

也可以命令格式

touch /var/named/10.0.0.zone

chmod 640 /var/named/10.0.0.zone

chgrp named /var/named/10.0.0.zone

3、修改配置文件 10.0.0.zone

$TTL 1D
@ IN SOA ns1 admin.magedu.org. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns1.magedu.org.
100 PTR www.magedu.org.
200 PTR app.magedu.org.

 

4、重啟named 服務  rndc reload

 停止的話:rndc stop

5、測試

[root@centos7 /]# dig -t ptr 100.0.0.10.in-addr.arpa

[root@centos7 /]# dig -t ptr 200.0.0.10.in-addr.arpa

 

 

CentOS 啟用DNS客戶端緩存,默認是不開啟的,為了方式DNS 訪問太慢,所以,啟用緩存
[root@centos7 ~]#yum -y install nscd
[root@centos7 ~]#systemctl enable --now nscd
#查看緩存統計信息
[root@centos7 ~]#nscd -g
 
#清除DNS客戶端緩存
[root@centos7 ~]#nscd -i hosts
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM