1. 程式人生 > 其它 >DNS正向解析與反向解析

DNS正向解析與反向解析

一、DNS簡介

  在日常生活中人們習慣便用域名訪問伺服器,但機器間互相只認IP地址,域名與1P地址之間是多對一的關係,一個ip地址不一定只對應一個域名,且一個域名只可以對應一個ip地址,它們之間的轉換工作稱為域名解析,域名解析需要由專門的域名解析伺服器來完成,整個過程是自動進行的。

1、DNS的定義

  • DNS是“域名系統”的英文縮寫。它作為將域名和IP地址相互對映的一個分散式資料庫,能夠使人更方便地訪問網際網路。
  • DNS服務使用TCP和UDP的53埠,TCP的53埠用於連線DNS伺服器,UDP的53埠用於解析DNS。
  •   每一級域名長度的限制是63個字元,域名總長度則不能超過253個字元

2、域名結構及解析方式

  • 樹狀結構最頂層稱為根域,用"."表示,相應伺服器稱為根伺服器,整個域名空間解析權都歸根伺服器所有,但根伺服器無法承擔龐大的負載,採用“委派”機制,在根域下設定了一些頂級域,然後將不同頂級域解析權分別委派給相應的頂級域伺服器,如將com域的解析權委派給com域伺服器,以後但凡根伺服器收到以com結尾的域名解析請求,都會轉發給com域伺服器,同樣道理,為了減輕頂級域的壓力,又下設了若干二級域,二級域又下設三級域或主機。
域名的分散式結構
根域 位於樹狀結構最頂層,用"."表示
頂級域 一般代表一種型別的組織機構或國家地區
如.net(網路供應商)、.com(工商企業)、.org(團體組織)、.edu(教育機構)、.gov(政府部門)、.cn(中國國家域名)
二級域 用來標明頂級域內的一個特定的組織,國家頂級域下面的二級域名由國家部門統一管理
子域 二級域下所建立的各級域統稱為子域,各個組織或使用者可以自由申請註冊自己的域名
主機 主機位於域名空間最下層,就是一臺具體的計算機
DNS域名解析方式
正向解析 根據域名查詢對應的IP地址
反向解析 根據IP地址查詢對應的域名



3、DNS伺服器型別

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

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

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

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

二、構建DNS域名解析伺服器步驟

1、安裝bind軟體包

2、配置正向解析

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

②、修改主配置檔案

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

④、配置正向區域資料檔案

⑤、修改/etc/resolv.conf配置檔案

測試

注!!!!!!

步驟是沒有問題的

重新搞了一遍後用named -u named成功啟動服務

配置反向解析:

1.掛載,安裝bind軟體包,檢視需要修改的配置檔案所在路徑

rpm -qc bind
#查詢bind軟體配置檔案所在路徑

/etc/ named. conf
#主配置檔案

/etc/ named.rfc1912.zones
#區域配置檔案

/var/named/named.localhost
#區域資料配置檔案

2.修改主配置檔案  

vim /etc/ named.conf
options {
   listen-on port 53 { 192.168.80.10; };         #監聽53埠,ip地址使用提供服務的本地IP,也可用any表示所有
   1isten-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    { 192.168.80.0/24; 172.16.100.0/24; }; #允許使用本DNS解析服務的網段,也可用any代表所有
.....
}

zone "." IN {                #正向解析“."根區域
    type hint;               #型別為根區域
    file "named.ca";         #區域資料檔案為named.ca,記錄了13臺根域伺服器的域名和IP地址等資訊
};
include "/etc/named.rfc1912.zones";      #包含區域配置檔案裡的所有配置

  

3.修改區域配置檔案,新增反向區域配置

vim /etc/named.rfc1912.zones    #檔案裡有模版,可複製粘貼後修改
zone "80.168.192.in-addr.arpa" IN {  ●反向解析的地址倒過來寫,代表解析192.168.116段的地址
    type master;
    file "benet. com. zone. local";    ●指定區域資料檔案為benet.com.zone.local
    allow-update { none; } ;
};

4.配置反向區域資料檔案  

cd /var/ named/
cp -p named. localhost benet .com.zone.local

vim /var/named/benet.com.zone.local
$TTL 1D
@   IN SOA benet.com.admin.benet.com. (       #這裡的“@”代表192.168.116段地址
                                  0    ; serial
                                 1D    ; refresh
                                 1H    ; retry
                                 1W    ; expire
                                 3H )  ; minimum
      NS      benet. com.
      A       192.168.80. 10
200 IN PTR    WWW.benet.com.
100 IN PTR    mail.benet.com.

#PTR為反向指標,反向解析192.168.80.200地址結果為www.benet.com.

  

注:前面配置正向解析,安裝包已經裝過了以及主配置檔案裡面也配置了,這裡不需要再改主配置檔案,直接到區域配置檔案配置

  • 修改區域配置檔案,新增反向區域配置: