BIND9.2.2安裝配置終極手冊(上)

 

作者:劉穎博 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

時間:2003-6-6

mail[email protected],請指正

 

轉載請註明出處及作者

環境

操作系統:red hat linux

內核版本2.4.20-8

下載源代碼

Internet Software Consortium(ISC)ftp

ftp://ftp.isc.org/isc/bind9/9.2.2/ 下載源代碼包bind-9.2.2.tar.gz

 

目前最高的rpm版本是9.2.1

rpm包可以下載:ftp://updates.redhat.com/7.3/en/os/SRPMS/bind-9.2.1-1.7x.2.src.rpm

解壓縮包

gzip -d  bind-9.2.2.tar.gz

//執行成功後生成bind-9.2.2.tar文件,bind-9.2.2.tar.gz不存在

 

tar xvf bind-9.2.2.tar

//執行成功後生成目錄bind-9.2.2

 

或者tar zxvf binf-9.2.2.tar.gz

//執行成功後生成目錄bind-9.2.2

 

編譯

編譯前需要確認的環境變量

在運行./configure之間需要確認的環境變量,這幾個環境變量將影響編譯:(主要是確認環境變量正確性,如不存在以下環境變量,沒有關係,執行./configure會自動配置)

CC

The C compiler to use. configure tries to figure out the right one for supported systems.

CFLAGS

C compiler flags. Defaults to include -g and/or -O2 as supported by the compiler.

STD_CINCLUDES

System header file directories. Can be used to specify where add-on thread or IPv6 support is, for example. Defaults to empty string.

STD_CDEFINES

Any additional preprocessor symbols you want defined. Defaults to empty string.

To build shared libraries, specify "--with-libtool" on the configure command line.

 

執行編譯安裝步驟:

 

./configure

//可以 ./configure --help獲得幫助

//自動配置系統信息生成一些相關文件

 

make all

 

make install

 

//時間比較長,同時會產生一些warning,不會產生影響

注:make clean (make superclean)

//卸裝

這樣就安裝成功了!

 

配置

區數據文件(db.DOMAIN 與 db.ADDR文件) 配置

 

SOA記錄: 指示該區的權威

NS記錄:列出該區的一個名子服務器

其他記錄:有關該區中主機的數據,包括

       A:名字到地址的映射

       PTR:地址到名字的映射

       CNAME:規範名字(相對於別名)

 

a.針對 db.DOMAIN db.ADDR文件

bind8.2版本以後使用$TTL語句設定默認的TTL(time to live生存期)的值

$TTL 86400  (或者用1D,24H)

b. 針對db.DOMAIN db.ADDR文件

接下來就是SOA(start of authority)記錄,每個db.DOMAIN

db.ADDR文件都是必須有一個也職能有一個SOA記錄.我們的服務器享有對區yncnc.net

權威,所以格式如下:

yncnc.net.  IN SOA  ns.yncnc.net. root.yncnc.net. (

                     1       ;序列號

                     3H   ;3小時後刷新

                     15M ;15分鐘後重試

                     1W  ;1星期後過期

                     1D)  ;否定緩存TTL1

其中IN 表示Internet

SOA後面的第一個名字(ns.yncnc.net.)yncnc.net區的主名字服務器.第二個名字(roo

t.yncnc.net.)是管理該區的人的郵件.

c. 針對db.DOMAIN db.ADDR文件

NS(name server)記錄,爲我們的區的每一個權威名字服務器都添加一個NS記錄

:

yncnc.net. IN NS ns.yncnc.net.

d. 針對db.DOMAIN 文件

地址和別名記錄,創建名字到地址的映射,加下列/資源記錄

;

;主機地址

;A代表地址

www.yncnc.net. IN A 221.3.128.268

ns.yncnc.net.  IN A 221.3.131.4

mail.yncnc.net. IN A 221.3.131.5

;

;別名

;CNAME(canonical name,規範名)

pop.yncnc.net. IN CNAME mail.yncnc.net.

pop3.yncnc.net. IN CNAME mail.yncnc.net.

smtp.yncnc.net IN CNAME mail.yncnc.net.

e. 針對db.ADDR文件

PTR記錄,如下

5.131.3.221.in-addr.arpa. IN PTR mail.yncnc.net

注意:地址只能指向一個名字:規範名

 

上面就是完整的區數據文件中的各種資源記錄

 

bind配置文件 ànamed.conf

註釋

/**/

//

#

區數據文件的目錄

option {

       directory “/var/named”;

       //這裏放置區數據文件

}

區數據文件對應的說明

zone “yncnc.net”  in {

       type master;

       file “db.yncnc.net”

}

配置根線索文件

zone “.” in {

       type hint;

       file “db.cache”

       //ftp.rs.internic.net(198.41.0.6) 匿名下載domain目錄最新的named.boot,改名

}

 

地址匹配列表ACL的語法

acl name {address_match_lists;};

 

blackhole子句語法,避免對一些地址作出相應

 

options {

       /*不對私有地址作出相應*/

       blackhole {

              10/8;

172.18/12;

192.168/16;

}

}

 

建立輔名字服務器

只需將區數據文件類似於

zone  “yncnc.net” in {

       type master;

       file “db.yncnc.net”;

}

改爲

zone  “yncnc.net” in {

       type slave;

       file “bak.yncnc.net”;

       master {221.3.131.4;};

       //其主域名服務器的地址

}

 

DNS中電子郵件 MX記錄的配置

yncnc.net. IN  MX  0   mail.yncnc.net

yncnc.net. IN  MX  10   mail2.yncnc.net

//假設存在兩個郵件服務器,其中0 10 是配置的優先級,值越小優先級越高

注意配置的優先級 必須使用規範名,不能使用別名

 

配置解析器

 

主要resolv.conf文件

search指令:搜索列表,支持8個域名

nameserver指令:查詢的名字服務器的地址,最多三個

options指令:debug,ndots,attempts,timeout,rotate,no-check-names幾個選項

sortlist指令:指定優先使用的子網和網絡,最多十個

domain指令:指定本地域名

 

 

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