dns的基本設定(二)

一、從屬dns

在網絡越來越發達的時代,若dns出現問題,則整個網絡均會處於癱瘓的狀態,爲了緩解dns的巨大壓力,所以出現了主從dns服務器。

dns利用類似於樹形目錄的架構,將主機名的管理分配在不同的層級的dns服務器中,並進行分層管理,所以每一臺dns服務器記憶的信息就不會很多,而且若有ip的變動時也相對來說更容易修改。

##開啓第二臺虛擬機,作出以下策略。

1、配置yum源。

2、yum install bind -y

3、systemctl stop firewalld

4、systemctl disable firewalld

5、systemctl start named

6、systemctl enable named

##配置好從屬dns後.

vim /etc/named.conf

 10 options {
 11         listen-on port 53 { any; };
 12         listen-on-v6 port 53 { ::1; };
 13         directory       "/var/named";
 14         dump-file       "/var/named/data/cache_dump.db";
 15         statistics-file "/var/named/data/named_stats.txt";
 16         memstatistics-file "/var/named/data/named_mem_stats.txt";
 17         allow-query     { any; };

vim  /etc/named.rfc1912.zones

 24 zone "westos.com" IN {
 25         type slave;                                                 ##類型爲從屬dns
 26         masters {172.25.254.173;};                       ##主dns爲172.25.254.173
 27         file "slavec/westos.com.inter";                   ##文件爲172.25.254.173的westos.com.inter
 28         allow-update { none; };                              ##沒有人可以進行更新
 29 };

主dns服務器:

因爲在主dns服務器上設置過雙向解析的實驗,所以以下實驗均在外網的配置文件中實現。

vim /etc/named.rfc1912.zones.inter

 24 zone "westos.com" IN {
 25         type master;
 26         file "westos.com.inter";
 27         allow-update { none; };
 28         also-notify {172.25.254.71;};          ##更新知會71從屬dns服務器。
 29 };

在主dns與從屬dns上,如果將主dns中文件進行了改變,在從屬dns服務器上若必須進行重啓服務的行爲,則是一種非常麻煩的行爲,所以可以在雙方的配置文件中進行配置,在主dns上改變了相應的文件,從屬dns是在不用重啓服務的情況下,直接進行文件的更新。在此在配置文件中有一個非常重要的參數,(serial)。每次在將主dns上的配置文件改變是,必須將serial參數進行相應的改變,從屬dns纔會有對配置文件的更新,此參數的最大數值爲10位數,所以可將此數改爲2017112701,表示爲2017年11月27號文件的第一次改動,會更加方便管理。

改變主dns服務器上westos.com.inter文件的內容。

對主dns進行重啓服務,systemctl restart named

測試:

###理論上講,在從屬dns上的/var/named/slaves/目錄中應該有主dns的westos.com.inter文件,但若沒有出現,則或許是selinux,權限的問題。

####在進行以下實驗時,注意將主dns上的文件westos.com.inter進行復制一份,因爲在進行以下實驗時,若在主dns上將服務重啓後,改文件會進行相應的改變,爲了方便下次實驗的進行,最好將該文件複製一份,在複製時,注意加上-p,

二、dns的遠程更新

在dns服務器上修改配置文件

vim /etc/named.rfc1912.zones.inter

 24 zone "westos.com" IN {
 25         type master;
 26         file "westos.com.inter";
 27         allow-update { 172.25.254.71; };            ##允許172.25.254.71主機進行遠程更新
 28         also-notify {172.25.254.71;};
 29 };
重啓服務systemctl restart named

測試:##此時測試時會出現問題,注意日誌的報錯。

[root@slave slaves]# nsupdate
> server 172.25.254.173
> update add bbs.westos.com 86400 A 1.1.1.116
> send
update failed: REFUSED


日誌報錯爲:文件權限不夠,被拒絕

解決方法:chmod g+w /var/named

重新測試:

[root@slave slaves]# nsupdate
> server 172.25.254.173
> update add bbs.westos.com 86400 A 1.1.1.116
> send

在主dns上重啓服務後,westos.com.intet被改變爲:

三、key的製作

遠程更新的ip是可以被別的主機進行冒充,會造成不安全的行爲所以在此製作一個key,將公鑰與私鑰傳給需要遠程更新的主機。

1、製作key

cp -p /etc/rndc.key /etc/zhaoyan.key

2、[root@server named]# dnssec-keygen -a HMAC-MD5 -b 128 -n HOST zhaoyan
Kzhaoyan.+157+38425

3、改變/etc/zhaoyan/key 中的內容

  1 key "zhaoyan" {
  2         algorithm hmac-md5;
  3         secret "7DZwUW8TwNC4GYeblR0vPQ==";
  4 };

4、改變/etc/named.conf文件中的內容

將所建成的公鑰私鑰傳給遠程更新的主機

scp Kzhaoyan.+157+38425.* [email protected]:/mnt/

5、重啓服務

測試:

[root@desktop mnt]# nsupdate -k Kzhaoyan.+157+38425.key
> server 172.25.254.173
> update delete bbs.westos.com
> send
>


四、動態ip的遠程更新

(要進行遠程更新主機與域名必須一致,本次實驗爲www.westos.com)

上述的遠程的更新的ip是靜態的,但也是一種不安全的行爲,若其他主機將ip改爲配置文件中允許遠程更新的ip,是一種非常不安全的行爲,若可進行遠程更新的主機是一個動態獲取ip,在每次重啓網絡服務時就會改變ip,更加不利於管理。此時,將dhcp與dns進行一種結合,會是一種非常明智的行爲.

1、下載dhcp服務

2、修改配置文件

3、先做好dhcpd服務
vim /etc/dhcp/dhcpd.conf

  7 option domain-name "westos.com";                                           ##域名爲westos.com
  8 option domain-name-servers 172.25.254.173;                          ##dns爲172.25.254.173


 30 subnet 172.25.254.0 netmask 255.255.255.0 {              
 31   range 172.25.254.190 172.25.254.200;                       ##要使ip在此範圍內
 32   option routers 172.25.254.173;                                    ##網關爲172.25.254.173
 33 }

重啓服務:

此時應已經可以實現dhcp的動態獲取

但與dns並沒有關聯,通過man得知interim的使用

在/etc/dhcp/dhcpd.conf文件中修改配置文件

此時要遠程更新的鑰匙是不用給對應的主機了,在dns服務器上是知道此ip與鑰匙的。

 34 key zhaoyan {
 35         algorithm hmac-md5;
 36         secret "Ki9lzMIPZJOLSGoxQMaJgg==";
 37 };
 38
 39 zone westos.com. {
 40   primary 127.0.0.1;                                   ##使用dns服務器內部的傳輸,速度會有很大的提升
 41   key zhaoyan;
 42 }

此時打開另一臺虛擬機,將ip的配置文件改爲dhcp動態獲取模式,並且關閉除了dns服務器之外其他所有的dhcp服務,以免造成干擾,然後在這臺虛擬機上重啓網絡服務。

測試結果:

動態獲取的結果:


dns服務器監控結果:


###總結:在dns的所有配置中,有報錯,基本會有以下幾點。

1、 NXDOMAIN  證明在dns服務器上沒有此域名

2、SERFAIL  :

(1)、本機沒有做本地解析文件,出現失敗的報錯

(2)、dns服務器上沒有關閉firewalld

(3)、dns服務器上沒有關閉selinux

(4)、實驗中經常會出現cp文件,沒有加-p參數,使得權限出現了問題。

##排錯思想均爲連接出現失敗時,清空日誌,重新連接,找出錯誤原因,大部分原因均是打錯行爲,尤其是在name.localname文件複製過去後,重新編輯此文件,注意此文件中@的用法,很重要!!!




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