DNS服務詳解

本文主要介紹:名字解析、DNS服務、實現主從服務器、實現子域、實現view、編譯安裝、壓力測試、DNS排錯

DNS服務原理詳解

DNS:Domain Name Service 域名解析服務

?因特網上作為域名和IP地址相互映射的一個分布式數據庫,能夠使用戶更方便的訪問互聯網,而不用去記住能夠被機器直接讀取的IP數串。通過主機名,最終得到該主機名對應的IP地址的過程叫做域名解析。

我們在訪問一個網站的時候,只要輸入該網站的網址就會跳轉到該網站頁面,而實現這一過程就需要DNS服務器將域名解析為IP地址,進而實現數據通信。

監聽端口:? udp/53,tcp/53

應用程序:? BIND? ? ? ? (Bekerley Internat Name Domain 國際域名)

 

 

一、DNS域名

根域

一級域名:Top Level Domain:? ? ??com, edu, mil, gov, net, org, int,arpa

組織域:.com, .org, .net, .mil, .edu, .gov, .info, .cc, .me, .tv

國家域:.cn, .us, .uk, .jp, .tw, .hk, .iq, .ir

反向域:.in-addr.arpa

最多127級域名

ICANN(The Internet Corporation for Assigned Names and Numbers)互聯網名稱與數字地址分配機構,負責在全球范圍內對互聯網通用頂級域名(gTLD)以及國家和地區頂級域名(ccTLD)系統的管理、以及根服務器系統的管理

 

DNS域名結構

20170603030441_49954

 

二、DNS查詢類型:

遞歸查詢? ? ?客戶端向小區DNS服務器查詢,負責到底,返回總結果

迭代查詢? ? ?根域? -> 二級域? -> 三級域… 一級一級的反饋,負責部分,返回部分結果 ??

名稱服務器:域內負責解析本域內的名稱的主機

根服務器:13組服務器????10在美國,主根在美國

解析類型:

FQDN –> IP? ? ? ? ? FQDN完整主機名

IP –> FQDN

注意:正反向解析是兩個不同的名稱空間,是兩棵不同的解析樹

 

補充:上級DNS服務器有下級的DNS服務器地址,下級沒有上級的地址;

新增ipv6 25組DNS服務器,中國有1主3輔。

 

 

三、DNS服務器類型:

主DNS服務器

從DNS服務器? ? ??多個??容錯能力

緩存DNS服務器(轉發器)

 

主DNS服務器:管理和維護所負責解析的域內解析庫的服務器

從DNS服務器:從主服務器或從服務器“復制”(區域傳輸)解析庫副本

序列號:解析庫版本號,主服務器解析庫變化時,其序列遞增

刷新時間間隔:從服務器從主服務器請求同步解析的時間間隔

重試時間間隔:從服務器請求同步失敗時,再次嘗試時間間隔

過期時長:從服務器聯系不到主服務器時,多久后停止服務

否定答案的緩存時長

“通知”機制:主服務器解析庫發生變化時,會主動通知從服務器

 

區域傳輸:

完全傳輸:傳送整個解析庫

增量傳輸:傳遞解析庫變化的那部分內容

Domain: Fully Qualified Domain Name

正向:FQDN –> IP

反向: IP –> FQDN

負責本地域名的正向和反向解析庫

正向區域

反向區域

 

四、DNS解析

一次完整的查詢請求經過的流程:

Client –>hosts文件 –>DNS Service Local Cache –> DNS Server(recursion) –> Server Cache –> iteration(迭代) –> 根–> 頂級域名DNS–>二級域名DNS…

解析答案:

肯定答案:

否定答案:請求的條目不存在等原因導致無法返回結果

權威答案:aa? ? 表示是自身知道的結果,不是問來的,如下圖

非權威答案:

d1

 

五、資源記錄

區域解析庫:由眾多RR組成:

資源記錄:Resource Record, RR

記錄類型:SOA, A, AAAA, PTR, NS, CNAME, MX…

SOA:Start Of Authority,起始授權記錄;一個區域解析庫有且僅能有一個SOA記錄,必須位于解析庫的第一條記錄

A:internet Address,作用,FQDN –> IPv4

AAAA: FQDN –> IPv6

PTR: PoinTeR,IP –> FQDN

NS: Name Server,專用于標明當前區域的DNS服務器,(包括總數,主,從)

CNAME:Canonical Name,別名記錄??大部分網站www都是別名

MX: Mail eXchanger,郵件交換器

?

資源記錄

資源記錄定義的格式:

語法:name??[TTL]??IN????rr_type(上述幾種資源記錄)????value(有多個)

注意:

(1)?TTL可從全局繼承,默認秒單位?沒有明確聲明TTL時默認用公用

(2)?@可用于引用當前區域的名字???例magedu.com

(3) 同一個名字可以通過多條記錄定義多個不同的值,此時DNS服務器會以輪詢方式響應???可以分流,均衡負載

(4) 同一個值也可能有多個不同的定義名字;通過多個不同的名字指向同一個值進行定義;此僅表示通過多個不同的名字可以找到同一個主機

圖片1

 

SOA記錄

name: 當前區域的名字,例如“magedu.com.”注意:最后有點

value: 有多部分組成

(1) 當前區域的主DNS服務器的FQDN,也可以使用當前區域的名字;名字隨便寫,跟下文對應即可

(2) 當前區域管理員的郵箱地址;但地址中不能使用@符號,一般用.替換,例如linuxedu.magedu.com

(3) 主從服務區域傳輸相關定義以及否定的答案的統一的TTL

 

序列號:解析庫版本號,主服務器解析庫變化時,其序列遞增?手動更改

刷新時間間隔:從服務器從主服務器請求同步解析的時間間隔

重試時間間隔:從服務器請求同步失敗時,再次嘗試時間間隔

過期時長:從服務器聯系不到主服務器時,多久后停止服務

“通知”機制:主服務器解析庫發生變化時,會主動通知從服務器

?

例如:

magedu.com. 86400 IN SOA??ns.magedu.com. ?nsadmin.magedu.com.

(

2015042201 ;序列號(大小有限,手動更改后從DNS服務器才會識別,更新改變)

2H ;刷新時間

10M ;重試時間

1W ;過期時間

1D ;否定答案的TTL值

)

?圖片2

注:下一行的記錄可以繼承上一行的記錄

rndc reload 重新讀取配置文件

 

NS記錄

name: 當前區域的名字

value: 當前區域的某DNS服務器的名字,例如ns.magedu.com.

注意:一個區域可以有多個NS記錄

例如:

magedu.com. ?IN ?NS ns1.magedu.com.

magedu.com. ?IN ?NS ns2.magedu.com.

注意:

(1) 相鄰的兩個資源記錄的name相同時,后續的可省略?(2) 對NS記錄而言,任何一個ns記錄后面的服務器名字,都應該在后續有一個A記錄

?

MX記錄

name: 當前區域的名字

value: 當前區域的某郵件服務器(smtp服務器)的主機名

一個區域內,MX記錄可有多個;但每個記錄的value之前應該有一個數字(0-99),表示此服務器的優先級;數字越小優先級越高

例如:

magedu.com. ?IN ?MX ?10 mx1.magedu.com.

IN ?MX ??20 ?mx2.magedu.com.

注意:

(1) 對MX記錄而言,任何一個MX記錄后面的服務器名字,都應該在后續有一個A記錄

圖片3

dig -t mx magedu.com 查詢指定域的郵件服務器。。然后可以冒充發郵件。。。

 

 

 

A記錄

name: 某主機的FQDN,例如www.magedu.com.

value: 主機名對應主機的IP地址

例如:

www.magedu.com. ??????IN ??A ??1.1.1.1

www.magedu.com.???????IN ??A???2.2.2.2

mx1.magedu.com.????????IN ??A???3.3.3.3??郵件服務器的聲明

magedu.com. ????????????IN ?A ??6.6.6.6

 

$GENERATE 1-254 HOST$ ??????A ???1.2.3.$

表示從host1 對應1.2.3.1一直到 host254 對應 1.2.3.254

 

*.magedu.com.???????????IN ??A???5.5.5.5

避免用戶寫錯名稱時給錯誤答案,可通過泛域名解析進行解析至某特定地址

 

?

其它記錄

AAAA:

name: FQDN

value: IPv6

PTR:

name: IP,有特定格式,把IP地址反過來寫,1.2.3.4,要寫作4.3.2.1;而有特定后綴:in-addr.arpa.,所以完整寫法為:4.3.2.1.in-addr.arpa.

value: FQDN

例如:

4.3.2.1.in-addr.arpa.???IN ??PTR???www.magedu.com.

如1.2.3為網絡地址,可簡寫成:

4??IN??PTR ??www.magedu.com.

注意:網絡地址及后綴可省略;主機地址依然需要反著寫

?

別名記錄

CNAME:

name: 別名的FQDN

value: 真正名字的FQDN

例如:

www.magedu.com.???IN ??CNAME???websrv.magedu.com.

?

?

六、子域

子域授權:每個域的名稱服務器,都是通過其上級名稱服務器在解析庫進行授權

類似根域授權tld:

.com. ?????IN ???NS ??ns1.com.

ns1.com.???IN ???A????2.2.2.1

magedu.com. 在.com的名稱服務器上,解析庫中添加資源記錄

@ ????????????IN? NS? ns1.magedu.com.

ns1??????????????A??3.3.3.1

glue record:粘合記錄,父域授權子域的記錄

 

七、互聯網域名

域名注冊:

代理商:萬網, 新網, godaddy

注冊完成以后,想自己用專用服務來解析

管理后臺:把NS記錄指向的服務器名稱,和A記錄指向的服務器地址

?

 

八、BIND安裝

BIND的安裝配置:

dns服務程序包:bind,unbound

程序名:named,unbound

程序包:yum list all bind*

bind:服務器

bind-libs:相關庫

bind-utils:客戶端

bind-chroot: /var/named/chroot/

?

bind服務器

服務的腳本和名稱:

/etc/rc.d/init.d/named???/usr/lib/systemd/system/named.service

主配置文件:修改前先備份,注意:cp -a 保留所有屬性?。?!

/etc/named.conf,?/etc/named.rfc1912.zones,請求注解,每個互聯網的技術文檔都有國際標準?/etc/rndc.key

解析庫文件:

/var/named/ZONE_NAME.ZONE

注意:

(1) 一臺物理服務器可同時為多個區域提供解析

(2) 必須要有根區域文件;?/var/named/name.ca

(3) 應該有兩個(如果包括ipv6的,應該更多)實現localhost和本地回環地址的解析庫

rndc: remote name domain controller,默認與bind安裝在同一主機,且只能通過127.0.0.1連接named進程提供輔助性的管理功能;53/tcp

 

補充:配置文件中 ??????????????????或

? ? ? ? ? ? /* ??開始 ?????????????????/* ??一行注釋 ?????*/

? ? ? ? ? 多行注釋

? ? ? ? ? ? */ ??結束

 

 

配置文件

主配置文件:

全局配置:options {};

日志子系統配置:logging {};

區域定義:本機能夠為哪些zone進行解析,就要定義哪些zone

zone “ZONE_NAME” IN {};

注意:任何服務程序如果期望其能夠通過網絡被其它主機訪問,至少應該監聽在一個能與外部主機通信的IP地址上

緩存名稱服務器的配置:

監聽外部地址即可

dnssec: 建議關閉dnssec,設為no

 

第一行和最后一行要修改: 或者直接用//注釋掉

圖片4

 

九、配置主DNS服務器

主DNS名稱服務器:

在主配置文件中定義區域

? ? ? ? ? ? ? ? ? ? (建議放/etc/named.rfc1912.zones文件,專門放區域設置的文件)

zone “ZONE_NAME” IN {

type {master|slave|hint|forward};

file “ZONE_NAME.zone”;

};

圖片5

(2) 定義區域解析庫文件??????/var/named/ZONE_NAME.ZONE

出現的內容? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 有例子named.localhost 復制修改

宏定義

資源記錄

主配置文件語法檢查:

named-checkconf

解析庫文件語法檢查:

named-checkzone?“magedu.com” /var/named/magedu.com.zone

 

rndc status|reload ;service named reload? ?重新讀取配置文件

?

主區域示例

$TTL 86400

$ORIGIN magedu.com.

@???????IN ???SOA????ns1.magedu.com. ?admin.magedu.com (

2015042201

1H

5M

7D

1D )

IN????? ? ? ? ? ? ? ? ? ????NS??? ? ? ? ? ? ? ? ? ?????ns1

IN ???? ? ? ? ? ? ? ? ? ????NS????? ? ? ? ? ? ? ? ? ???ns2

IN ?? ? ? ? ? ? ? ? ? ??????MX? ? ? ? ? ? ? ? ? ? ? 10???mx1

IN ?????? ? ? ? ? ? ? ? ? ??MX? ? ? ? ? ? ? ? ? ? ? 20???mx2

ns1? ? ? ? ? ? ?IN? ? ? ? ? ? ? ? ? ? ? ? ? ?A ?????? ? ? ? ? ? ? ? ? ?172.16.100.11

ns2? ? ? ? ? ? ?IN? ? ? ? ? ? ? ? ? ? ? ? ? ?A????? ? ? ? ? ? ? ? ? ???172.16.100.12

mx1? ? ? ? ? ? IN ????? ? ? ? ? ? ? ? ? ? ? A ?????? ? ? ? ? ? ? ? ? ?172.16.100.13

mx2? ? ? ? ? ? IN ????? ? ? ? ? ? ? ? ? ? ? A????? ? ? ? ? ? ? ? ? ???172.16.100.14

websrv? ? ? ? IN ? ? ? ? ? ? ? ? ? ???????A?????? ? ? ? ? ? ? ? ? ??172.16.100.11

websrv? ? ? ? IN? ?? ? ? ? ? ? ? ? ? ? ? ?A???? ? ? ? ? ? ? ? ? ????172.16.100.12

www? ? ? ? ? ? IN ?? ? ? ? ? ? ? ? ? ??????CNAME ?? ? ? ? ? ? ? ? ? ??websrv

 

圖片6

 

十、測試命令

測試命令dig

?dig [-t type] name [@SERVER] [query options]

dig只用于測試dns系統,不會查詢hosts文件進行解析

查詢選項:

+[no]trace:跟蹤解析過程 : dig +trace magedu.com

+[no]recurse:進行遞歸解析

測試反向解析:

dig -x IP = dig –t ptr reverseip.in-addr.arpa

模擬區域傳送:

dig -t axfr ZONE_NAME @SERVER

dig -t axfr magedu.com @10.10.10.11

dig -t axfr 100.1.10.in-addr.arpa @172.16.1.1

dig -t NS . @114.114.114.114

dig -t NS . @a.root-servers.net

?圖片7

?

測試命令??host

host [-t type] name [SERVER]

host -t NS magedu.com 172.16.0.1

host -t soa magedu.com

host -t mx magedu.com

host -t axfr magedu.com

host 1.2.3.4

 

測試命令??nslookup

nslookup命令: nslookup [-option] [name | -] [server]

交互式模式:

nslookup>

server IP: 指明使用哪個DNS server進行查詢

set q=RR_TYPE: 指明查詢的資源記錄類型

NAME: 要查詢的名稱

 

 

十一、反向區域??

必須建立,否則后期會影響某些測試,某些郵件服務嚴重依賴反向區域

 

區域名稱:網絡地址反寫.in-addr.arpa.???最后點可以省略

172.16.100. –> 100.16.172.in-addr.arpa.?????arpa? ?互聯網最早名稱

(1) 定義區域

zone “ZONE_NAME” IN {

type {master|slave|forward};

file “網絡地址.zone”

};

圖片8

 

(2) 定義區域解析庫文件

注意:不需要MX,以PTR記錄為主

 

 

反向區域示例

$TTL 86400

$ORIGIN 100.16.172.in-addr.arpa.

@ IN SOA??ns1.magedu.com. admin.magedu.com. (?2015042201??1H??5M??7D??1D )

IN ?NS? ? ? ? ?ns1.magedu.com.

IN??NS? ? ? ? ???ns2.magedu.com.

11 ? ? ? ?PTR?? ? ? ? ??ns1.magedu.com.

11 ? ? ? ?PTR? ? ? ? ???www.magedu.com.

12 ? ? ??PTR? ? ? ? ???mx1.magedu.com.

12 ? ? ? ?PTR? ? ? ? ? www.magedu.com.

13 ? ? ??PTR?? ? ? ? ??mx2.magedu.com.

?

十二、允許動態更新???

會自動更新SOA的序列號,方便從服務器同步

?

1、修改區域文件,指定的zone語句塊中:Allow-update {any;};??any可以換成指定IP

2、chmod 770 /var/named

setsebool -P named_write_master_zones on

3、nsupdate

>server 127.0.0.1

>zone magedu.com

>update add ftp.magedu.com 88888 IN A 8.8.8.8

>send

>update delete www.magedu.com A

>send

 

測試:dig ftp.magedu.com @127.0.0.1

ll /var/named/magedu.com.zone.jnl??生成新文件,稍后同步到文件中去,不可讀

命令可打開此文件,如下:

圖片9

cat /var/named/magedu.com.zone

 

動態刪除:如下

圖片10

?

?

?

十三、從服務器

?

1、應該為一臺獨立的名稱服務器

2、主服務器的區域解析庫文件中必須有一條NS記錄指向從服務器

3、從服務器只需要定義區域,而無須提供解析庫文件;解析庫文件應該放置于/var/named/slaves/目錄中

4、主服務器得允許從服務器作區域傳送

5、主從服務器時間應該同步,可通過ntp進行;

6、bind程序的版本應該保持一致;否則,應該從高,主低

定義從區域的方法:

zone “ZONE_NAME” IN {

type slave;

masters { MASTER_IP; };

file “slaves/ZONE_NAME.zone”;

};

 

十四、rndc命令

rndc:

rndc –> rndc (953/tcp)

 

rndc COMMAND

?COMMAND:

reload?????????????重載主配置文件和區域解析庫文件

reload zonename?????重載區域解析庫文件

retransfer zonename??手動啟動區域傳送,而不管序列號是否增加

notify zonenam??????重新對區域傳送發通知

reconfig????????????重載主配置文件

querylog????????開啟或關閉查詢日志文件/var/log/message,一般排錯用

status ?????????????查看級別

trace???????????????遞增debug一個級別,越高越詳細

trace LEVEL??????????指定使用的級別

notrace?????????????將調試級別設置為 0

flush???????????????清空DNS服務器的所有緩存記錄

 

 

 

十五、子域

子域授權:分布式數據庫

正向解析區域子域方法

定義一個子區域:

ops.magedu.com.? ? ? ? ? ?IN???NS ??ns1.ops.magedu.com.

ns1.ops.magedu.com.? ? IN? ? A?????1.1.1.1

fin.magedu.com.? ? ? ? ? ? ?IN ??NS????ns1.fin.magedu.com.

ns1.fin.magedu.com.? ? ? IN? ? A?????3.1.1.1

 

注意:在/etc/named.conf文件中 關閉dnssec功能:

dnssec-enable no;

dnssec-validation no;

 

 

補充:

子域

方法一:直接修改主服務器的資源記錄

方法二:在主服務器上

1、更改區域配置文件

圖片11

  • 建兩個文件/var/named/NAME,修改A記錄即可

 

方法三:子域授權:

 

 

?

十六、轉發服務器

注意:被轉發的服務器需要能夠為請求者做遞歸,否則轉發請求不予進行

(1) 全局轉發: 對非本機所負責解析區域的請求,全轉發給指定的服務器

Options {

forward first|only;??先轉到目標服務器,如果不通再去根 | 只去目標,不行就失敗

forwarders { ip;};

};

圖片12

(2) 特定區域轉發:僅轉發對特定的區域的請求,比全局轉發優先級高

zone “ZONE_NAME” IN {

type forward;

forward first|only;

forwarders { ip;};

};

 

注意:在主配置文件中

關閉dnssec功能:

dnssec-enable no;

dnssec-validation no;

?

開啟recursion功能:

?圖片13

?

?

十七、bind中ACL

bind中基礎的安全相關的配置:

acl: 把一個或多個地址歸并為一個集合,并通過一個統一的名稱調用

格式:

acl acl_name {

ip;

net/prelen;

……

};

示例:

acl mynet {

172.16.0.0/16;

10.10.10.10;

};

 

bind有四個內置的acl:

none??沒有一個主機

any????任意主機

localhost???本機

localnet???本機的IP同掩碼運算后得到的網絡地址

注意:只能先定義,后使用;因此一般定義在配置文件中,處于options的前面

?

訪問控制

訪問控制的指令:

allow-query {}: 允許查詢的主機;白名單

allow-transfer {}:允許區域傳送的主機;白名單

allow-recursion {}: 允許遞歸的主機,建議全局使用

allow-update {}: 允許更新區域數據庫中的內容

?

?

?

?

十八、智能DNS

??不同地區訪問,DNS服務器會分配相應地區的地址

圖片14

 

實現智能DNS

上海172.20、北京192.168兩個訪問 :

1、判斷地區,網上有地區地址段

2、準備兩份相應的區域數據庫,

3、各地IP ?分配 ?各地相應DNS解析

 

 

1、修改主配置文件

圖片15

注意:匹配順序:從上到下,點到即止

 

2、準備三個區域數據庫

圖片16

 

3、把主配置文件倒數第二塊 移到 區域配置文件中,放首部塊

 

4、在主配置文件尾部編輯view,兩種語法,如下:

圖片17

圖片18

 

5、cp -a 區域配置文件 ,改內容如下

圖片19

 

6、主配置文件語法檢查:

named-checkconf

 

?

?

CDN內容分發網絡

圖片20

 

 

十九、bind view

CDN: Content Delivery Network內容分發網絡

服務商:藍汛,網宿,帝聯等

智能DNS:

dnspod

dns.la

view:視圖:實現智能DNS:

一個bind服務器可定義多個view,每個view中可定義一個或多個zone

每個view用來匹配一組客戶端

多個view內可能需要對同一個區域進行解析,但使用不同的區域解析庫文件

?

注意:

(1) 一旦啟用了view,所有的zone都只能定義在view中

(2) 僅在允許遞歸請求的客戶端所在view中定義根區域

(3) 客戶端請求到達時,是自上而下檢查每個view所服務的客戶端列表

格式:

view VIEW_NAME {

match-clients { testacl; };

zone “magedu.com” {

type master;

file “magedu.com.zone”;

};

include “/etc/named.rfc1912.zones”;

};

?

二十、編譯安裝bind???了解

 

1、下載bind:

isc.org:

bind-9.10

bind-9.11

bind-10

 

 

tar xvf bind-9.11.0a3.tar.gz

cd bind-9.11.0a3/

groupadd -r -g 53 named

useradd -r -u 53 -g 53 named??如下:新建用戶指定家目錄

?圖片21

./configure –prefix=/usr/local/bind9?–sysconfdir=/etc/named/ –without-openssl?–disable-ipv6 –disable-chroot –enable-threads

make?-j 4 ?&& ?make install

 

2、環境變量:

vim /etc/profile.d/named.sh

export PATH=/usr/local/bind9/bin:/usr/local/bind9/sbin/:$PATH

 

3、庫和頭文件

vim /etc/ld.so.conf.d/named.conf

/usr/local/bind9/lib

ldconfig –v

ls -sv /usr/local/bind9/include /usr/include/named

 

4、man幫助

vim /etc/man.config | /etc/man_db.conf

MANPATH /usr/local/bind9/share/man

man named.conf

 

5、主配置文件

vim /etc/named/named.conf

options {

directory “/var/named/”

};

zone “.” IN {

type hint;

file “named.ca“;

};

zone “localhost” IN {

type master;

file “named.localhost”;

allow-update {none;};

};

zone “1.0.0.127.in-addr.arpa” IN {

type master;

file “named.loopback”;

allow-update {none;};

};

 

6、區域數據庫

mkdir /var/named

named-checkconf

dig +norec @a.root-servers.net > /var/named/named.ca

vim /var/named/named.localhost

$TTL 1d

@? ? ? ? ? ? ? ? ? ?IN ????SOA? ? ? localhost. admin.localhost. (?2016061801?1h?5m?7d?1d)

NS? ? ? ? ?localhost.

localhost.? ? ?IN? ? ? A? ? ? ? ? ?127.0.0.1

 

vim /var/named/named.loopback

$TTL 1d

@ IN SOA localhost. admin.localhost. (?2016061801??1h??5m? ?7d??1d)

NS? ? @

A? ? ? 127.0.0.1

PTR? ? localhost.

 

7、設置權限

chmod 640 /var/named/*

chmod 640 /etc/named/named.conf

chgrp -R named /var/named/

chgrp named /etc/named/named.conf

 

8、啟動服務和測試

man named

named -u named -f -g -d 3?前端級別3方式運行

named -u named?后臺運行

killall named

ss -tuln

tail /var/log/message

named -u named

 

9、支持rndc

rndc reload 觀察錯誤提示

rndc-confgen -r /dev/urandom > /etc/named/rndc.conf?生成key

tail /etc/named/rndc.conf >> /etc/named/named.conf

killall -SIGHUP named?????-1信號

rndc status

?

10、壓力測試

/root/bind-xxx/contrib/scripts

編譯壓力測試工具

cd /root/bind-xxx/contrib/queryperf

./configure

make

cp queryperf /usr/local/bind9/bin

queryperf -h??查看幫助

 

vim test.txt???準備測試文件

www.magedu.com A

magedu.com NS

magedu.com MX

pop3.magedu.com A

web.magedu.com A

cat >> ?test.txt < ?test.txt 瞬間復制文件內容N遍,趕緊終止!

queryperf -d test.txt -s 127.0.0.1

 

11、打開日志功能

rndc querylog

rndc status

queryperf -d test.txt -s 127.0.0.1

wc -l /var/log/message

?

 

 

 

二十一、DNS排錯

#dig A example.com

; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> A example.com

;; global options: +cmd

;; Got answer:

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

SERVFAIL:The nameserver encountered a problem while processing the query.

可使用dig +trace排錯,可能是網絡和防火墻導致

NXDOMAIN:The queried name does not exist in the zone.

可能是CNAME對應的A記錄不存在導致

REFUSED:The nameserver refused the client’s DNS request due to

policy restrictions.

可能是DNS策略導致

?

NOERROR不代表沒有問題,也可以是過時的記錄

查看是否為權威記錄,flags:aa標記判斷

被刪除的記錄仍能返回結果,可能是因為*記錄存在

如:*.example.com. IN A 172.25.254.254

注意“.”的使用

避免CNAME指向CNAME記錄,可能產生回環

test.example.com. IN CNAME lab.example.com.

lab.example.com. IN CNAME test.example.com.

正確配置PTR記錄,許多服務依賴PTR,如sshd,MTA

正確配置輪詢round-robin記錄

 

 

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/100656

(1)
bican813bican813
上一篇 2018-06-08 00:17
下一篇 2018-06-08 22:38

相關推薦

  • 學習筆記(14)

    學習筆記(14)

    Linux筆記 2018-04-30
  • 腳本練習題

    1.使用腳本打印出如下圖形 ************答案一:#!/bin/bash#1.接受一個參數為星星的個數。num=$1 #2.求出總共要打印的行數let lines=num*2 #3.for 循環處理每一行的數據for i in `seq $lines`;do#4.前半個星星處理邏輯if [ $i -le $num ];thenfor j in `s…

    Linux筆記 2018-03-26
  • 第二周作業20180521

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示 Linux常用的文件管理命令為cp,mv,rm cp: 格式用法: 源文件為文件 目標文件不存在,則在目標文件夾中新建文件 目標文件存在,則進行文件覆蓋,通過-i提示是否進行覆蓋 源為目錄,cp后要加-r,復制文件夾以及其下所有文件夾的文件,目的需為目錄 多文件復制,目的必須為目錄且…

    2018-05-21
  • 啟動和內核管理之centos6

    在本章的學習中,你的系統將會被你整的死去活來,在不斷地破壞和修復中,熟悉centos的啟動流程

    Linux筆記 2018-05-11
  • 第七周作業

    1、簡述linux操作系統啟動流程
    2、簡述grub啟動引導程序配置及命令行接口詳解
    3、實現kickstart文件制作與光盤鏡像制作

    Linux筆記 2018-06-22
  • 計算機的組成及其功能

    01.描述計算機的組成及其功能 計算器是由運算器,控制器,存儲器,輸入裝置和輸出裝置五大部件組成計算機, 每一部件分別按要求執行特定的基本功能。 輸入設備  將數據、程序、文字符號、圖象、聲音等信息輸送到計算機中。常用的輸入設備有鍵盤、鼠標、觸摸屏、數字轉換器等。 輸出設備  將計算機的運算結果或者中間結果打印或顯示出來。常用的輸出設備有:顯示器、打印機、繪…

    2018-08-09
欧美性久久久久