日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

最近有粉絲私信我,很多做技術開發的工程師在開發某個程序時,或者測試人員在做程序測試時,經常需要測試DNS域名解析,那么今天就為大家介紹一下如何搭建自己的DNS域名解析服務器。

詳細教程:如何搭建自己的DNS域名解析服務器?

 

如果你對DNS域名解析原理還不夠了解,建議你首先去閱讀一下我上篇關于DNS基本概念的講解文章《DNS域名解決原理你真的了解嗎?》

現在我們進入主題,linux上搭建DNS服務的軟件有bind9、NSD(Name server domain)和unbound,其中bind9是市場占有率最高的軟件。本文也以此軟件來介紹DNS服務。bind實現DNS的最佳最詳細說明文檔是"DNS & BIND"和"Bind97 Manual",網上都有中文版本的資源,推薦大家可以去讀一讀。

詳細教程:如何搭建自己的DNS域名解析服務器?

 

一、BIND簡介

現在使用最為廣泛的DNS服務器軟件是BIND(Berkeley Internet Name Domain),最早有伯克利大學的一名學生編寫,現在最新的版本是9,有ISC(Internet Systems Consortium)編寫和維護。

BIND支持先今絕大多數的操作系統(Linux,UNIX,mac,windows)。

BIND服務的名稱稱之為named。

DNS默認使用UDP、TCP協議,使用端口為53(domain),953(mdc,遠程控制使用)。

詳細教程:如何搭建自己的DNS域名解析服務器?

 

二、BIND安裝

  本例使用的環境是centos 7.0的Linux操作系統(非CentOS 7.0系統,安裝會有所區別),所以直接采用命令: 

yum install -y bind bind-chroot bind-utils

其中bind-chroot和bind-utils是bind的相關包。

詳細教程:如何搭建自己的DNS域名解析服務器?

 


詳細教程:如何搭建自己的DNS域名解析服務器?

 

二、BIND配置

1、BIND配置文件保存在兩個位置: 

/etc/named.conf  - BIND服務主配置文件    
/var/named/    - zone文件(域的dns信息)

  如果安裝了bind-chroot(其中chroot是 change root 的縮寫),BIND會被封裝到一個偽根目錄內,配置文件的位置變為: 

/var/named/chroot/etc/named.conf   - BIND服務主配置文件    
/var/named/chroot/var/named/    - zone文件 

 chroot是通過相關文件封裝在一個偽根目錄內,已達到安全防護的目的,一旦程序被攻破,將只能訪問偽根目錄內的內容,而不是真實的根目錄。

  2、BIND安裝好之后不會有預制的配置文件,但是在BIND的文檔文件夾內(/usr/share/doc/bind-9.9.4),BIND為我們提供了配置文件模板,我們可以直接拷貝過來: 

cp -r /usr/share/doc/bind-9.9.4/sample/etc/* /var/named/chroot/etc/ 
cp -r /usr/share/doc/bind-9.9.4/sample/var/* /var/named/chroot/var/

  3、配置BIND服務的主配置文件(/var/named/chroot/etc/named.conf),命令:

vim /var/named/chroot/etc/named.conf;

內容很多使用簡單配置,刪除文件中logging以下的全部內容,以及option中的部分內容,得到如下配置:

/*
Sample named.conf BIND DNS server 'named' configuration file
for the Red Hat BIND distribution.

See the BIND Administrator's Reference Manual (ARM) for details about the
 configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html
*/

options
{
        // Put files that named is allowed to write in the data/ directory:
        directory               "/var/named";           // "Working" directory
         
        
         //listen-on port 53     { any; };
        listen-on port 53       { 127.0.0.1; };
 
         //listen-on-v6 port 53  { any; };
         listen-on-v6 port 53    { ::1; };

 };  

4、在主配置文件(/var/named/chroot/etc/named.conf )中加入,zone參數:

詳細教程:如何搭建自己的DNS域名解析服務器?

 

 5、新建example.net.zone文件,example.net的域名解析文件,zone文件放在/var/named/chroot/var/named/下,zone文件可以以/var/named/chroot/var/named/named.localhost為模板。
命令:

cp /var/named/chroot/var/named/named.localhost /var/named/chroot/var/named/example.net.zone
詳細教程:如何搭建自己的DNS域名解析服務器?

 

文件example.net.zone的內容如下:

詳細教程:如何搭建自己的DNS域名解析服務器?

 

6、禁用bind默認方式啟動,改用bind-chroot方式啟動。命令如下:

[root@iZ2806l73p6Z named]# /usr/libexec/setup-named-chroot.sh /var/named/chroot on
[root@iZ2806l73p6Z named]# systemctl stop named   
[root@iZ2806l73p6Z named]# systemctl disable named  
[root@iZ2806l73p6Z named]# systemctl start named-chroot  
[root@iZ2806l73p6Z named]# systemctl enable named-chroot
[root@iZ2806l73p6Z named]#

圖:

詳細教程:如何搭建自己的DNS域名解析服務器?

 

注意:如果是CentOS 6.5的系統,這個步驟回有所區別,直接使用默認的service named start 啟動服務,bind就直接運行在chroot包中,如下圖:

詳細教程:如何搭建自己的DNS域名解析服務器?

 

7、查看是否啟動,命令:

ps -ef|grep named
詳細教程:如何搭建自己的DNS域名解析服務器?

 

 8、測試DNS服務,本例在本機上測試,也可在其他電腦上測試,修改DNS服務的ip地址即可(命令:vim /etc/resolv.conf ),然后使用命令dig(命令:dig www.example.net)測試。

詳細教程:如何搭建自己的DNS域名解析服務器?

 

內容如下:

詳細教程:如何搭建自己的DNS域名解析服務器?

 

測試結果:

詳細教程:如何搭建自己的DNS域名解析服務器?

 

注:非本機測試需要修改主配置文件named.conf,允許任何ip訪問,然后重啟服務器。

詳細教程:如何搭建自己的DNS域名解析服務器?

 


詳細教程:如何搭建自己的DNS域名解析服務器?

 

三、BIND從服務器

從服務器就是在bind的主配置文件中添加從域example.net的配置信息即可:

1、配置文件位置

/var/named/chroot/etc/named.conf

2、在主配置文件中添加一行域的zone定義:

zone "example.net" {
					type slave;             
					masters { 120.27.99.64; 
};              
file "slaves/example.net.zone";

 3、由于bind是以named用戶來運行的,所以要給存放zone文件的文件夾(/var/named/chroot/var/named/slaves)授權。
未授權前:

詳細教程:如何搭建自己的DNS域名解析服務器?

 

授權:

詳細教程:如何搭建自己的DNS域名解析服務器?

 

4、啟動bind服務,service named start,在存放zone文件夾(/var/named/chroot/var/named/slaves)中查看,已經把example.net.zone文件下下來了。

詳細教程:如何搭建自己的DNS域名解析服務器?

 

5、修改dns服務器ip地址,測試dig www.example.net。

詳細教程:如何搭建自己的DNS域名解析服務器?

 

四、緩存服務器及轉發服務器

一個DNS服務器可以即不是某個域的master服務器,也不是某個域的slave服務器,一個服務器可以不包含任務域的配置信息,它將接手到所有DNS查詢進行遞歸解析,將解析結果返回給查詢客戶端,并且將查詢結果緩存下來,這樣的DNS服務器稱之為caching name server。

通常一個局域網中配置緩存服務器是為了加速網絡訪問。

也可以為緩存服務器配置一個上游DNS服務器地址,緩存服務器可以給客戶提供一個上游DNS服務器的地址,我們可以通過 以下設置完成:    

在主配置文件中的option中加入:

forwarders { 192.168.0.168;};

還可以通過一下選項讓服務器轉發所有DNS查詢到forwarders服務器:

在主配置文件中的option中加入:

forward only;

 

詳細教程:如何搭建自己的DNS域名解析服務器?

 

到此DNS域名解析搭建教程結束,你學會了嗎?

 

如果你喜歡本文章,請幫忙關注、轉發、點贊,本人將定期更新一些技術“干貨”分享給大家,希望能幫助大家解決工作中的一些問題,謝謝!

分享到:
標簽:DNS
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定