Linux 域名解析服務 DNS

什麼是DNS

域名系統(Domain Name System縮寫DNS,Domain Name被譯爲域名)是因特網的一項核心服務,它作爲可以將域名和IP地址相互映射的一個分佈式數據庫,能夠使人更方便的訪問互聯網,而不用去記住能夠被機器直接讀取的IP數串。DNS一種分佈式網絡目錄服務,主要用於域名與 IP 地址的相互轉換,以及控制因特網的電子郵件的發送。是Internet上解決網上機器命名的一種系統。就像拜訪朋友要先知道別人家怎麼走一樣,Internet上當一臺主機要訪問另外一臺主機時,必須首先獲知其地址,TCP/IP中的IPV4地址是由四段以“.”分開的數字組成,記起來總是不如名字那麼方便,所以,就採用了域名系統來管理名字和IP的對應關係。

在域名註冊商那裏註冊了域名之後如何才能看到自己的網站內容,用一個專業術語就叫“域名解析”。

何爲域名解析

域名解析是把域名指向網站空間IP,讓人們通過註冊的域名可以方便地訪問到網站的一種服務。IP地址是網絡上標識站點的數字地址,爲了方便記憶,採用域名來代替IP地址標識站點地址。域名解析就是域名到IP地址的轉換過程。域名的解析工作由DNS服務器完成。

域名解析也叫域名指向、服務器設置、域名配置以及反向IP登記等等。說得簡單點就是將好記的域名解析成IP,服務由DNS服務器完成,是把域名解析到一個IP地址,然後在此IP地址的主機上將一個子目錄與域名綁定。

互聯網中的地址是數字的IP地址,域名解析的作用主要就是爲了便於記憶。

域名是爲了方便記憶而專門建立的一套地址轉換系統,要訪問一臺互聯網上的服務器,最終還必須通過IP地址來實現,域名解析就是將域名重新轉換爲IP地址的過程。一個域名對應一個IP地址,一個IP地址可以對應多個域名;所以多個域名可以同時被解析到一個IP地址。域名解析需要由專門的域名解析服務器(DNS)來完成。

解析過程,比如,一個域名爲:abc.com,是想看到這個現HTTP服務,如果要訪問網站,就要進行解析,首先在域名註冊商那裏通過專門的DNS服務器解析到一個WEB服務器的一個固定IP上:211.214.1.XXX,然後,通過WEB服務器來接收這個域名,把abc.com這個域名映射到這臺服務器上。那麼,輸入abc.com這個域名就可以實現訪問網站內容了.即實現了域名解析的全過程;

人們習慣記憶域名,但機器間互相只認IP地址,域名與IP地址之間是對應的,它們之間的轉換工作稱爲域名解析,域名解析需要由專門的域名解析服務器來完成,整個過程是自動進行的。

域名解析協議(DNS)用來把便於人們記憶的主機域名和電子郵件地址映射爲計算機易於識別的IP地址。DNS是一種c/s的結構,客戶機就是用戶用於查找一個名字對應的地址,而服務器通常用於爲別人提供查詢服務。

在Linux 操作系統中 DNS 服務工具名稱爲:bind 

主配置文件爲:/etc/named.conf     /etc/named.rfc1912.zones

區域解析庫文件:/var/named/ZONE_NAME.zone (需要手動創建)

編輯主配置文件 /etc/named.conf

opitons     定義全局配置選項和缺省值

  • listen-on port 53        服務器用於DNS協議的UDP/TCP端口號,默認爲53
  • listen-on-v6 port 53    在IPv6環境下的監聽端口爲53
  • directory       "/var/named";  服務器的工作目錄.
  • dump-file       "/var/named/data/cache_dump.db";    緩存轉儲位置
  • statistics-file "/var/named/data/named_stats.txt";    記錄統計信息的文件,默認爲named.stats
  • memstatistics-file "/var/named/data/named_mem_stats.txt";    記錄內存使用的統計信息
  • allow-query   { any; }    允許查詢的主機,默認只允許本機查詢,any 表示允許所有客戶機查詢. 
  • recursion yes;    是否代表客戶機查詢其他DNS服務器
  • bindkeys-file "/etc/named.iscdlv.key";    保存密鑰的目錄.    

include     把其他文件包含到配置文件中  

logging     定義日誌寫什麼,寫到哪 

zone         定義一個區域     

hint:表示是互聯網中根域名服務器

接下來編輯 /etc/named.rfc1912.zones 

  •     zone 定義一個區域名稱爲 mytest.com
  •     type  指明爲 masters 主服務器
  •     file "mytest.com.zone"    指明解析文件名稱(這裏使用的是相對路徑,因爲已經在 /etc/named.conf 全局配置中定義了工作目錄爲    directory       "/var/named"; )

在 /var/named/ 目錄下創建  mytest.com.zone 文件,配置如下

各條目的詳細說明

  • $TTL 1D    有效解析的生存週期,單位時間爲M(分)、H(時)、W(周)、D(天)。
  • @       IN SOA  www.mytest.com.  root.mytest.com. (    區域授權起始記錄,區域文件第一條記錄,而且一個區域文件只能有一條
  •                                         0       ; serial    區域傳送使用的版本號
  •                                         1D      ; refresh   從服務器去同步主服務器時間間隔
  •                                         1H      ; retry    刷新失敗重試時間間隔
  •                                         1W      ; expire    從服務器過期時長
  •                                         3H )    ; minimum    否定答案過期時長
  •         NS      www.mytest.com.    域的授權名稱服務器
  •         MX 10   root.mytest.com.    域的郵件交換器,要跟着一個優先級值,越小越高
  • www     IN A    192.168.10.2       IN表示Internet  A 代表IPV4主機地址
  • web     IN A    192.168.10.2
  • root    IN A    192.168.10.2
  • *       IN A    192.168.10.2
  • ftp     IN CNAME   www     定義別名記錄
  • 1       IN PTR  web1.mytest.com.
  • 2       IN PTR  web2.mytest.com.

啓動 DNS 服務,使用 named-checkconf 和 named-checkzone 驗證配置文件

dig命令是常用的域名查詢工具,可以用來測試域名系統工作是否正常

修改本地DNS設置,指向本機

測試正向解析

  • status: NOERROR 表示查詢沒有什麼錯誤,Query time 表示查詢完成時間
  • SERVER: SERVER: 192.168.10.2#53(192.168.10.2),表示本地 DNS 服務器地址和端口號
  • QUESTION SECTION 表示需要查詢的內容,這裏需要查詢域名的 A 記錄
  • ANSWER SECTION 表示查詢結果,返回 A 記錄的 IP 地址。86400 表示本次查詢緩存時間,在 86400 秒本地 DNS 服務器可以直接從緩存返回結果
  • AUTHORITY SECTION 表示從那臺 DNS 服務器獲取到具體的 A 記錄信息。
  • 記住本地 DNS 服務器只是查詢,而 AUTHORITY SECTION 返回的服務器是權威 DNS 服務器,由它來維護 mytest.com 的域名信息。返回的 DNS 記錄類型是 NS,對應的名稱是 www.mytest.com.
  • ADDITIONAL SECTION 表示 NS 服務器對應的 IP 地址,這些 IP 地址對應的服務器安裝了 BIND 軟件。

測試反向解析(作用不大可以忽略)

測試別名

在其他機器上測試

主從DNS服務器的搭建:

在主服務器的配置文件 /etc/named.conf 中加入一行 allow-transfer { 從服務器IP地址; };,意思是允許轉移

在從服務器上安裝 BIND 

配置從服務器 /etc/named.conf

編輯從服務器 /etc/named.rfc.1912.zones

  •     type  指明爲 slave 從服務器
  •     file "slaves/mytest.com.zone"    指明解析文件存放位置

啓動從服務器的 DNS 服務,使用 rndc reload 命令同步解析文件

查看從服務器解析文件內容

開啓另外一臺虛擬機進行測試,將DNS設置爲從服務器

測試正向解析

轉發DNS服務器的配置

轉發DNS服務器就是當你向一個DNS服務器請求DNS解析時,它把DNS請求轉發到了另一個DNS服務器上

在轉發服務器端安裝 BIND

編輯轉發服務器端的 /etc/named.conf  

  •     forwarders  指明轉發到哪個服務器

測試轉發

智能dns解析

隨着原中國電信集團按南北地域分家,新的中國電信和網通集團隨即成立,互聯網的骨幹網也被一分爲二了,北有網通、南有電信。從此,細心的網民可以發現,有些經常訪問的網站速度一下子慢了下來,有時候還有訪問不到的情況出現。例如北方地區的網絡用戶訪問中國網通的服務器會非常快,而訪問中國電信的服務器時,感覺非常慢。這種現象不僅影響了網站的訪問量,更嚴重的是它直接影響了一些經營性網站的經濟效益。據分析,產生這個問題的根本原因是中國電信分家之後,電信與網通之間的互連存在問題。雖然信息產業部已經在規劃南北互通計劃,但在今後相當長的一段時期內,南北方網互連的問題還會長期存在。

智能DNS策略解析很好的解決了上面所述的問題。DNS策略解析最基本的功能是可以智能的判斷訪問您網站的用戶,然後根據不同的訪問者把您的域名分別解析成不同的IP地址。如訪問者是網通用戶,DNS策略解析服務器會把你的域名對應的網通IP地址解析給這個訪問者。如訪問者是電信用戶,DNS策略解析服務器會把您域名對應的電信IP地址解析給這個訪問者。

編輯 /etc/named.conf 配置文件

檢測配置文件

分別創建 /var/named/mytest.com.dx 和 /var/named/mytest.com.wt 文件

檢測配置文件並且啓動DNS 服務

分別在不同機器上測試

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章