- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會(huì )理事單位
- 安全聯(lián)盟認證網(wǎng)站身份V標記
- 域名注冊服務(wù)機構許可:滇D3-20230001
- 代理域名注冊服務(wù)機構:新網(wǎng)數碼
DNS軟件bind
我們說(shuō)DNS是一種協(xié)議,而對于每一種協(xié)議的實(shí)現都需要程序員開(kāi)發(fā)出遵循這種協(xié)議規范的軟件程序來(lái)實(shí)現,這里要介紹的BIND就是DNS協(xié)議的一種開(kāi)源實(shí)現。據統計,使用bind作為DNS服務(wù)器軟件的DNS服務(wù)器大約占所有DNS服務(wù)器的九成。BIND全稱(chēng)為Berkeley Internet Name Domain,因為當今互聯(lián)網(wǎng)上的通信幾乎都必須借助于DNS服務(wù)器來(lái)解析主機名,得到通信對方的IP地址,而在DNS服務(wù)器上最常用的軟件就是bind,所以,bind這款軟件幾乎可以說(shuō)是當今互聯(lián)網(wǎng)上常用的軟件了。
目前bind由ISC.org(Internet Systems Consortium,互聯(lián)網(wǎng)系統協(xié)會(huì ))負責開(kāi)發(fā)與維護。
bind包相關(guān)工具
dns服務(wù), 程序包名:bind, 程序名:named
bind #提供dns server程序,以及幾個(gè)常用的測試工具。
bind-libs #提供bind和bind-utils包中的程序共同用到的庫文件。
bind-utils #bind客戶(hù)端程序集,例如提供host, nslookup, dig等工具。
bind-chroot #類(lèi)似chroot,把dns服務(wù)限制在某個(gè)范圍之類(lèi). 安全包
bind相關(guān)文件
服務(wù)腳本:/etc/rc.d/init.d/named
主配置文件:/etc/named.conf,/etc/rfc1912.zones,/etc/rndc.key
解析文件:
/var/named/ZONE_NAME.ZONE
根區域解析庫文件:named.ca.
注意:
一臺物理服務(wù)器可同時(shí)為多個(gè)區域提供解析;
必須要有根區域文件;named.ca
應該有兩個(gè)(如果包括ipv6的,應該更多)實(shí)現localhost和本地回環(huán)地址的解析庫;
rndc: remote name domain controller,默認與bind安裝在同一主機,且只能通過(guò)127.0.0.1來(lái)連接named進(jìn)程;提供輔助性的管理功能;監聽(tīng)端口:953/tcp
bind配置文件說(shuō)明
主配置文件:
/etc/named.conf
全局配置:option {}
日志配置:logging{}
區域配置配置文件:
/etc/rfc1912.zones
區域配置:本機能夠為哪些zone進(jìn)行解析,就要定義哪些zone;例如:zone "ZONE_NAME" IN {}
默認CentOS會(huì )默認配置回環(huán)地址
至于options內的比較重要的子參數簡(jiǎn)單敘述如下:
listen-on port 53 { any; };
監聽(tīng)在當前主機上的哪個(gè)網(wǎng)絡(luò )接口。默認是監聽(tīng)在localhost,也就是只有本機才能夠查詢(xún),這顯然是不符合現實(shí)需要的,因此可以改為any,表示可以監聽(tīng)多個(gè)網(wǎng)絡(luò )接口,any之后要加上分號才算結束。只要監聽(tīng)在能夠與外網(wǎng)主機進(jìn)行通信的網(wǎng)絡(luò )接口上,就可以為外網(wǎng)主機提供解析服務(wù),當前前提是別人知道自己主機的IP地址。這里也可以監聽(tīng)在指定的網(wǎng)絡(luò )接口上,可以監聽(tīng)多個(gè)接口,每個(gè)地址后面都需要加上分號。
directory "/var/named";
這里的意思是如果在/etc/named.conf(包括被包含進(jìn)來(lái)的配置文件)中定義了正反解區域解析庫文件的文件名時(shí),該文件名默認應該存放于哪個(gè)目錄下,默認是存放在/var/named/目錄下。需要注意的是,如果安裝了bind-chroot程序包,則這些區域解析庫文件最終會(huì )被主動(dòng)鏈接到/var/named/chroot/var/named/這個(gè)目錄。
*dump-file、statistics-file、memstatistics-file
與named這個(gè)服務(wù)有關(guān)的許多統計信息,如果想要輸出為文件的話(huà),默認的文件名就由這三項指定。
allow-query { any; };
這是針對DNS客戶(hù)端的設置,表示誰(shuí)可以向我的DNS服務(wù)提出查詢(xún)請求的意思。默認設置為localhost,表示僅允許本地查詢(xún),這里修改為any,表示對所有的用戶(hù)開(kāi)放(當然,防火墻必須放行才行)。
allow-transfer { none; };
當架設主-從DNS服務(wù)器時(shí),允許哪臺從DNS服務(wù)器向我的這臺DNS服務(wù)器轉發(fā)區域解析庫文件的數據。
recursion yes;
是否允許為DNS客戶(hù)端做遞歸查詢(xún)。默認為yes.
rndc命令管理dns服務(wù)器
我們知道,DNS服務(wù)默認的監聽(tīng)端口是53,當我們在主機上啟動(dòng)DNS服務(wù)之后,用netstat查看監聽(tīng)端口,顯示如下:
[root@localhost ~]# netstat -tunlp | grep named
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 1387/named
tcp 0 0 192.168.1.120:53 0.0.0.0:* LISTEN 1387/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 1387/named
tcp6 0 0 ::1:953 :::* LISTEN 1387/named
tcp6 0 0 ::1:53 :::* LISTEN 1387/named
udp 0 0 192.168.1.120:53 0.0.0.0:* 1387/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 1387/named
udp6 0 0 ::1:53 :::* 1387/named
復制
上面結果顯示,除了能夠看到53號端口之外,還能看到953端口,那是namd在953端口多啟動(dòng)了一個(gè)服務(wù),這就是rndc了。 這個(gè)rndc的全稱(chēng)是Remote Name Domain Controller,它可以幫助用戶(hù)更方便地管理DNS服務(wù)器,包括可以檢查DNS服務(wù)器的狀態(tài)與統計信息、重載配置文件及zone或單獨重載某個(gè)區域而不需要重新啟動(dòng)整個(gè)DNS服務(wù),還有查看已存在DNS緩存當中的資料等。 rndc服務(wù)默認監聽(tīng)在tcp的953端口,且默認監聽(tīng)于127.0.0.1地址,因此默認僅允許本地使用。
rndc的常見(jiàn)用法:
rndc reload:在不重新啟動(dòng)DNS服務(wù)的情況下,重新加載配置文件及zone.
rndc reload zone:重新加載指定的zone.
rndc status:查看當前DNS服務(wù)器的狀態(tài)。
rndc stats:將當前系統的DNS統計數據記錄下來(lái),默認會(huì )將數據存儲為一個(gè)文件:/var/named/data/named_stats.txt.
rndc dumpdb:將當前DNS高速緩存中的數據記錄下來(lái),與stats類(lèi)似,默認會(huì )將數據存儲為一個(gè)文件:/var/named/data/cache_dump.db.、
rndc flush:清空當前DNS服務(wù)器上的所有緩存。
售前咨詢(xún)
售后咨詢(xún)
備案咨詢(xún)
二維碼
TOP