DNS(一)之禁用權威域名服務器遞歸解析


DNS

dns是互聯網中最核心的帶層級的分布式系統,負責把域名解析成ip,把IP解析出域名,以及宣告郵件路由信息等等,使得使用域名訪問網站,收發郵件成了可能。
bind(berkeley Internet Name Domain) 是流行與linux上的域名解析服務。

禁用權威域名服務器遞歸解析

首先解析下什么是遞歸解析和迭代解析,本人也經常搞混,但是還得記下來,在了解遞歸和迭代之前,先聊下下DNS的組成部分。

1 DNS的組成

共兩部分

  • 域名服務器:提供域名解析的軟件,默認監聽udp,tcp 53端口。
  • 解析器(resolver) 訪問域名服務器的客戶端,它負責獲取域名服務器的響應后解析出結果,或者說顯示結果,把這個結果返回給調用它 的調用者。
2 域名服務器的分類:

根據類別不同,分成如下幾類:

2.1. 權威域名解析器(Autoritatvie Name Server )
負責授權域下的域名解析服務,由上級權威域名服務器使用NS記錄進行授權。
有以下3級權威域名服務器

  • 根域名服務器(Root Name Server)
    的權威域名服務器,負責對.com,.cn,.org等頂級域名向下授權,共13組根域服務器,這里簡單羅列幾個:
主機名 ip 管理方
a.root-servres.net 198.41.0.4 VeriSign.Inc
b.root-servers.net 192.228.79 California(ISI)|
c.boot-servers.net 192.33.4.12 Cogent Communications

注意
這里是13組根域服務器,不是13台。其中大多數采用了anycast技術,因為分布到不同的地區。

  • 頂級域名服務器(top level name server)
    頂級域名服務器分為兩類:
    1. 通用頂級域名服務器(Generic Top Level Domains,GTLD) 服務器,服務於.org,.com,.info等授權的域名服務器
    2. 國家代碼服務器(Country code top level Domains,CCTLD),服務於UK,CN.Us等授權的域名 服務器
  • 二級域名服務器( second Level Name Server)
    這類域名服務器服務於具體的域名,如解baidu.com等。

以上三類權威域名解析器的授權結構圖如下所示

2.2. 緩存域名服務器(caching Name Server)
這類的域名服務器負責接受解析器發過來的DNS請求,通過依次查詢根域名服務器->頂級域名服務器-> 二級域名服務器來獲取DNS解析結果,然后把結果發送給解析器,同時根據DNS條目的TTL(time to live)值進行緩存,它有兩個作用:

  • 企業內部局域網
  • 用於運營商為其租戶提供域名解析結果
  • 用於開放的DNS解析服務,如8.8.8.8

2.3. 轉發域名服務器
這類域名服務器負責把解析器發過來的DNS請求,轉發給指定的上級域名服務器獲得DNS解析的條目,然后把結果發給解析器。和緩存域名服務器不同的是,這類服務器不進行任何緩存,只是轉發而已。

3 遞歸和迭代解析
  • 遞歸就是客戶端(解析器)發起一個DNS解析請求給本地域名服務器,直到本地域名服務器返回一個解析結果。客戶端只關心解析結果。
  • 迭代查詢 就是客戶端(解析器)發起一個DNS解析請求給本地域名服務器,本地服務器返回一個參考列表,這個參考列表給出了可以解析這個DNS請求的服務器,由客戶端再去向這個列表里的DNS服務器進行DNS查詢獲取DNS解析結果。

禁用遞歸查詢的原因與方法

通過遞歸查詢和迭代查詢的分析可以知道,對於權威域名服務器,打開了遞歸查詢功能,相當於把它配置成了開放的DNS服務器,會造成大量數據流,影響正常的服務提供,因此,在權威服務器上,可以結合自己公司的情況來確定是否需要禁用遞歸查詢。
通過yum安裝的bind,配置文件在/etc/named.conf,配置禁用遞歸查詢的參數默認在18行,如下:

[root@localhost ~]# vim /etc/named.conf
 18         recursion yes;   # 第18行 ,把yes改為no就行了


免責聲明!

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



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