日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

RHCE培训笔记——DNS基础

發布時間:2024/1/1 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RHCE培训笔记——DNS基础 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

RHCE培訓筆記——DNS基礎


DNS(Donmain Name Service)域名系統是一個分布式數據系統,其作用是將域名解析成IP地址。Linux DNS一般使用bind來完成,其中主要是對named服務的配置。


本文實驗平臺為CentOS 6.2。


DNS服務器


主機名:itpro ? ? ? ?IP地址:192.168.1.53


輔助DNS服務器


主機名:itsec ? ? ? ?IP地址:192.168.1.54


客戶端測試機


主機名:itclient ? ?IP地址:192.168.1.100


一、DNS服務器端配置


1.安裝相關軟件


bind是linux的DNS服務器程序,bind-chroot是bind的一個功能,使bind可以在一個chroot的模式下運行,也就是說bind運行時的/(根)目錄并不是系統真正的/(根)目錄,而是系統中的一個子目錄,這樣做的目的是為了提高安全性,因為在chroot的模式下,bind可以訪問的范圍僅限于這個子目錄的范圍里,無法進一步提升、進入到系統的其他目錄中。



[root@itpro ~]# yum install bind bind-chroot


[root@itpro ~]# service named start


Stopping named: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[ ?OK ?]


Generating /etc/rndc.key:^C


[root@itpro ~]# rndc-confgen -r /dev/urandom -a


wrote key file "/etc/rndc.key"


[root@itpro ~]# service named start


Stopping named: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[ ?OK ?]


Starting named: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[ ?OK ?]


[root@ itpro ~]# chkconfig named on




(注:實驗之初,安裝完成bind及bind-chroot后,重啟named服務時,rndc找不到key,等半天沒反應,主要原因在于RHEL6上沒有caching-named這個包。在網上查到,使用rndc-confgen -r /dev/urandom –a這條命令可以解決問題。另,記得將named設為開機啟動。)




進入到偽目錄/var/named/chroot,


[root@itpro ~]# cd /var/named/chroot/


[root@itpro chroot]# ls


dev ?etc ?usr ?var


[root@itpro chroot]# ls etc/


localtime ?named.conf ? ? ? ?named.rfc1912.zones ?pki


named ? ? ?named.iscdlv.key ?named.root.key ? ? ?rndc.key


[root@itpro chroot]# ls var/named/


chroot ?dynamic ?named.empty ? ? ?named.loopback


data ? ?named.ca ?named.localhost ?slaves


注:在偽目錄里,也有etc和var目錄,從這里讀到的配置及軟件相關文件,其實是根目錄下/etc和/var里面文件的一部分,但其他與named服務不相關的文件就看不到了,提高了操作的安全性。


實際操作建議在偽目錄中進行,也可以root目錄下進行。


為避免路徑過長或因切換路徑等而作多余的啰嗦,本文是在root目錄下進行的,請注意。

2.修改主配文件/etc/named.conf

在RHEL 6中,安裝完bind后,將會自動生成主配文件named.conf,現要對其進行修改。

修改后的內容如下

[root@itpro ~]# cat /etc/named.conf


1.options {

2.listen-on port 53 { any; }; //any表示監聽所有客戶端發來的信息

3.listen-on-v6 port 53 { any; }; //這個是針對IPv6的,當前環境下可以不改

4.directory "/var/named";

5.dump-file "/var/named/data/cache_dump.db";

6.statistics-file "/var/named/data/named_stats.txt";

7.memstatistics-file "/var/named/data/named_mem_stats.txt";

8.allow-query { any; }; //any表示允許所有客戶端進行dns查詢

9.recursion yes; //是否使用遞歸式DNS服務器,默認為yes

10.dnssec-enable yes;

11.dnssec-validation yes;

12.dnssec-lookaside auto;

13./* Path to ISC DLV key */

14.bindkeys-file "/etc/named.iscdlv.key";

15.managed-keys-directory "/var/named/dynamic";

16.};

17.logging {

18.channel default_debug {

19.file "data/named.run";

20.severity dynamic;

21.};

22.};

23.zone "." IN {

24.type hint; //表示這個區被定義為啟動時初始化高速緩存的域名服務器

25.file "named.ca";

26.};

27.include "/etc/named.rfc1912.zones";

28.include "/etc/named.root.key";


(注:主配置文件 named.conf里面只有“.”區域,在最下面有個 named.rfc1912.zones定義,是一個named.conf的輔助區域配置文件。意思是除了根域外,其他所有的區域配置建議在named.rfc1912.zones文件中配置,主要是為了方便管理,不輕易破壞主配置文件named.conf。)


3.修改輔助區域配置文件/etc/named.rfc1912.zones

在文件最末添加正向解析和反向解析域(注:本實驗,正向解析、反向解析一并實現),

修改后的內容為:

[root@itpro ~]# cat /etc/named.rfc1912.zones


1.…………省略部分輸出…………

2.zone "88181.com" IN { //這個是正向解析區域,區域名一般使用需要被解析的域名

3.type master; //master表示這個區被定義為主域名服務器

4.file "88181.com.zone"; //定義正向解析域的文件,名字隨意,一般標記為:域名+.zone

5.allow-update { none; };

6.};

7.zone "1.168.192.in-addr.arpa" IN { //這個是正向解析區域,這里遵循一般的命名格式

8.type master;

9.file "88181.com.local"; //定義反向解析域的文件, ,名字隨意,一般標記為:域名+.local

10.allow-update { none; };

11.};


4.創建解析文件

在/var/named中,以named.localhost為模板,創建正向和反向解析文件,

這兩個文件的文件名,要以/etc/named.rfc1912.zones 文件中定義的一致,即88181.com.zone和88181.com.local

[root@itpro ~]# ls /var/named/

chroot dynamic named.empty named.loopback

data named.ca named.localhost slaves

[root@itpro named]# cp -p /var/named/named.localhost /var/named/88181.com.zone

[root@itpro named]# cp -p /var/named/named.localhost /var/named/88181.com.local

[root@itpro named]# ll /var/named/

total 44

drwxr-x---. 6 root named 4096 Mar 18 02:04 chroot

drwxrwx---. 2 named named 4096 Mar 18 02:12 data

drwxrwx---. 2 named named 4096 Mar 22 06:11 dynamic

-rw-r-----. 1 root named 1892 Feb 18 2008 named.ca

-rw-r-----. 1 root named 152 Dec 15 2009 named.empty

-rw-r-----. 1 root named 152 Jun 21 2007 named.localhost

-rw-r-----. 1 root named 168 Dec 15 2009 named.loopback

drwxrwx---. 2 named named 4096 Feb 23 14:26 slaves

-rw-r-----. 1 root named 175 Mar 22 07:05 88181.com.local

-rw-r-----. 1 root named 175 Mar 22 06:59 88181.com.zone

(注:使命cp命令時,要使用-p選項,以保留文件的權限屬性。通過ll查看,可以看到這里的文件都是屬于named用戶組的,如果cp時不加-p選項,生成的文件將會屬root用戶組,不符合要求)


88181.com.zone文件內容為正向域名解析記錄,修改后內容如下:

[root@itpro ~]# cat /var/named/88181.com.zone


1.$TTL 1D

2.@ IN SOA ns.88181.com root ( //@表示當前域,IN指internet ,SOA起始授權機構,

3.//root管理員郵箱地址,也可寫作root.88181.com.,相當于root@88181.com.

4.0 ; serial

5.1D ; refresh

6.1H ; retry

7.1W ; expire

8.3H ) ; minimum

9.NS ns.88181.com. // ns指定域名服務器,只是個名稱

10.ns A 192.168.1.53 //指定域名服務器IP地址

11.//以下增加目標解析文件,可以是www、ftp等

12.www A 192.168.1.100 //A指定域名對應IP,這里表示www.88181.com

13.ftp A 192.168.1.101 //如果還有其他服務,依次添加映射,如ftp


(注:輸入的內容中,“ns.88181.com.”后面有一個“.”,表示根域,不能漏掉,如果不加,則表示nd.88181.com域還有后綴.88181.com, named會重啟失敗)


88181.com.local文件內容為反向域名解析記錄,修改后內容如下:

[root@itpro ~]# cat /var/named/88181.com.local


1.$TTL 1D

2.@ IN SOA ns.88181.com. root (

3.0 ; serial

4.1D ; refresh

5.1H ; retry

6.1W ; expire

7.3H ) ; minimum

8.NS ns.88181.com.

9.ns A 192.168.1.53

10.100 PTR www.88181.com. //反向解析是PTR

11.101 PTR ftp.88181.com.


5.重啟dns服務

[root@itpro ~]# service named restart

Stopping named: . [ OK ]

Starting named: [ OK ]

(如果重啟報錯,請檢查設置是否正確)



二、客戶端配置及測試


這里使用的客戶端是Linux系統,需要修改resolv.conf文件,

如果是Windows客戶端直接在本地連接屬性窗口里改就可以了。


1.修改resolv.conf文件

使DNS指向域名服務器(192.168.1.53)

[root@ itclient ~]# cat /etc/resolv.conf

nameserver 192.168.1.53


2.使用nslookup測試

[root@ itclient ~]# nslookup www.88181.com

Server: 192.168.1.53

Address: 192.168.1.53#53


Name: www.88181.com

Address: 192.168.1.100


[root@ itclient ~]# nslookup 192.168.1.100

Server: 192.168.1.53

Address: 192.168.1.53#53


100.1.168.192.in-addr.arpa name = www.88181.com.


[root@ itclient ~]# nslookup ftp.88181.com

Server: 192.168.1.53

Address: 192.168.1.53#53


Name: ftp.88181.com

Address: 192.168.1.101


客戶端能解析正常,說明DNS服務器的配置順利完成。


三、輔助DNS服務器配置


輔助DNS服務器(Slave DNS),也可以向客戶機提供域名解析服務,但是它的數據不是直接輸入的,而是從其他Master或Slave DNS服務器中復制過來的。


1.安裝相關軟件

首先也是要安裝bind及bind-chroot;然后啟動,并在chkconfig中設為開機啟動。


2.修改主配文件/etc/named.conf

同主DNS服務器的配置,就是將listen-on port 53、allow-query大括號中的值改為any。


3.修改輔助區域配置文件/etc/named.rfc1912.zones

在文件最末添加正向解析和反向解析域(注:本實驗,正向解析、反向解析一并實現),

修改后的內容為:

[root@itpro ~]# cat /etc/named.rfc1912.zones


1.…………省略部分輸出…………

2.zone "88181.com" IN { //這個是正向解析區域

3.type slave; //slave表示這個區被定義為輔助域名服務器

4.file "slaves/88181.com.zone";

5.masters { 192.168.1.53; }; //指明主DNS,可以是多個,

6.allow-update { none; };

7.};

8.zone "1.168.192.in-addr.arpa" IN { //這個是反向解析區域

9.type slave;

10.file "slaves/88181.com.local";

11.masters { 192.168.1.53; };

12.allow-update { none; };

13.};


4.重啟DNS

[root@itsec ~]# service named restart

Stopping named: . [ OK ]

Starting named: [ OK ]


重啟后,在/var/named/slaves/目錄下會生成一個88181.com.zone文件和一個88181.com.local文件,里面的內容是分別從主DNS服務器上的88181.com.zone和88181.com.local中讀過來的。


[root@itsec ~]# cat /var/named/slaves/88181.com.zone


1.$ORIGIN .

2.$TTL 86400 ; 1 day

3.88181.com IN SOA ns.88181.com.88181.com. root.88181.com. (

4.0 ; serial

5.86400 ; refresh (1 day)

6.3600 ; retry (1 hour)

7.604800 ; expire (1 week)

8.10800 ; minimum (3 hours)

9.)

10.NS ns.88181.com.

11.$ORIGIN 88181.com.

12.ftp A 192.168.1.101

13.ns A 192.168.1.53

14.www A 192.168.1.100


[root@itsec ~]# cat /var/named/slaves/88181.com.local


1.$ORIGIN .

2.$TTL 86400 ; 1 day

3.1.168.192.in-addr.arpa IN SOA ns.88181.com. root.1.168.192.in-addr.arpa. (

4.0 ; serial

5.86400 ; refresh (1 day)

6.3600 ; retry (1 hour)

7.604800 ; expire (1 week)

8.10800 ; minimum (3 hours)

9.)

10.NS ns.88181.com.

11.$ORIGIN 1.168.192.in-addr.arpa.

12.100 PTR www.88181.com.

13.101 PTR ftp.88181.com.

14.ns A 192.168.1.53


至此,從DNS服務器設置完成。比主DNS服務器的設置簡單多了。


1.修改客戶端的resolv.conf文件

增加一條指向從DNS服務器的記錄,修改后內容如下:

[root@ itclient ~]# cat /etc/resolv.conf

nameserver 192.168.1.53

nameserver 192.168.1.54


2.在客戶端使用nslookup命令測試

可以看到此時是通過主DNS服務器(192.168.1.53)解析域名的,

[root@itclient ~]# nslookup www.88181.com

Server: 192.168.1.53

Address: 192.168.1.53#53


Name: www.88181.com

Address: 192.168.1.100


3.在主DNS服務器上關閉dns服務

[root@itpro ~]# service named stop

Stopping named: . [ OK ]


4.再在客戶端使用nslookup命令測試

可以看到此時是通過輔助DNS服務器(192.168.1.54)解析域名的,

[root@itclient ~]# nslookup www.88181.com

Server: 192.168.1.54

Address: 192.168.1.54#53


Name: www.88181.com

Address: 192.168.1.100


[root@itclient ~]# nslookup 192.168.1.101

Server: 192.168.1.154

Address: 192.168.1.154#53


101.1.168.192.in-addr.arpa name = ftp.88181.com.


5.在客戶端使用dig命令可以查看到更詳細的信息

[root@itclient ~]# dig www.88181.com


; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6.3 <<>> www.88181.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50191

;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1


;; QUESTION SECTION:

;www.88181.com. IN A


;; ANSWER SECTION:

www.88181.com. 86400 IN A 192.168.1.100


;; AUTHORITY SECTION:

88181.com. 86400 IN NS ns.88181.com.


;; ADDITIONAL SECTION:

ns.88181.com. 86400 IN A 192.168.1.53


;; Query time: 2 msec

;; SERVER: 192.168.1.54#53(192.168.1.54)

;; WHEN: Tue Mar 26 05:39:07 2013


五、主輔DNS服務器數據同步問題


主DNS服務器修改記錄,輔助DNS同步不過去,或者需要很長時間。這在現實生活中,會造成各地訪問的結果不同。


通過修改主DNS服務器上的配置文件,是可以做到將數據快速同步到其他輔助DNS服務器的。這里用到一個also-notify字段。


1.在主DNS服務器的主配文件/etc/named.conf的options{ }里,增加一條記錄:

also-notify { 192.168.1.54; }; //這里指通知的對象是192.168.1.54輔助DNS


2.主DNS數據變更,這里以修改區域88181.com為例,

刪除里面的“ftp A 192.168.1.101”記錄,同時將序列號數值加1,

[root@itpro ~]# cat /var/named/88181.com.zone


1.$TTL 1D

2.@ IN SOA ns.88181.com root (

3.1 ; serial //這里由0改為1

4.1D ; refresh

5.1H ; retry

6.1W ; expire

7.3H ) ; minimum

8.NS ns.88181.com.

9.ns A 192.168.1.53

10.www A 192.168.1.100


修改完成后,重啟DNS

[root@itpro ~]# service named restart

Stopping named: . [ OK ]

Starting named: [ OK ]


3.在輔助DNS上查看88181.com的信息,可以看到,主DNS上該區域的信息已經同步過來了,

[root@itsec ~]# cat /var/named/slaves/88181.com.zone


1.$ORIGIN .

2.$TTL 86400 ; 1 day

3.88181.com IN SOA ns.88181.com.88181.com. root.88181.com. (

4.1 ; serial

5.86400 ; refresh (1 day)

6.3600 ; retry (1 hour)

7.604800 ; expire (1 week)

8.10800 ; minimum (3 hours)

9.)

10.NS ns.88181.com.

11.$ORIGIN 88181.com.

12.ns A 192.168.1.53

13.www A 192.168.1.100


(注:序列號的值務必要改大,輔助DNS收到主DNS的通知后,會先檢查序列號,如果主DNS發過來的信息,序列號的值小于輔助DNS中序號的值,輔助DNS是會將新信息丟棄的。)


also-notify這個字段可以在named.conf中options里聲明,也可以在單個區域文件中聲明。不過我在單個文件區域,比如本實驗中主DNS的/etc/named.rfc1912.zones中zone "88181.com" IN { }里聲明時,并不生效。未解決。



轉載于:https://blog.51cto.com/captain8/1273074

總結

以上是生活随笔為你收集整理的RHCE培训笔记——DNS基础的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。