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

DNS

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

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

首先解析下什麼是遞歸解析和迭代解析,本人也常常搞混,可是還得記下來,在瞭解遞歸和迭代以前,先聊下下DNS的組成部分。vim

1 DNS的組成

共兩部分緩存

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

根據類別不一樣,分紅以下幾類:服務器

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

  • 根域名服務器(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)值進行緩存,它有兩個做用:.net

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

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

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

禁用遞歸查詢的緣由與方法

經過遞歸查詢和迭代查詢的分析能夠知道,對於權威域名服務器,打開了遞歸查詢功能,至關於把它配置成了開放的DNS服務器,會形成大量數據流,影響正常的服務提供,所以,在權威服務器上,能夠結合本身公司的狀況來肯定是否須要禁用遞歸查詢。
經過yum安裝的bind,配置文件在/etc/named.conf,配置禁用遞歸查詢的參數默認在18行,以下:server

[root@localhost ~]# vim /etc/named.conf
 18         recursion yes;   # 第18行 ,把yes改成no就好了
相關文章
相關標籤/搜索