真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Solaris下怎么用Bind安裝和配置DNS

這篇文章主要介紹了Solaris下怎么用Bind安裝和配置DNS,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計制作、成都做網(wǎng)站、天等網(wǎng)絡(luò)推廣、成都小程序開發(fā)、天等網(wǎng)絡(luò)營銷、天等企業(yè)策劃、天等品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供天等建站搭建服務(wù),24小時服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com

一、DNS基礎(chǔ)

DNS:Domain Name System,域名解析服務(wù)器,它在互聯(lián)網(wǎng)的作用是把域名轉(zhuǎn)換成為網(wǎng)絡(luò)可以識別的ip地址。

BIND:Berkeley Internet Name Domain,是unix中DNS協(xié)議用的最多的一個實現(xiàn)。

如blog.sina.com.cn,blog是一四級域名,sina是三級域名,com是二級域名,cn是頂級域名。一完整域名最多可以是256個字符,各級別域名最多63個字符。

DNS使用in.named進程,如果/etc/named.conf存在,系統(tǒng)啟動時會開啟in.named進程并讀取/etc/named.conf文件,in.named其實就是/usr/sbin/named的一個鏈接。

名字到地址的查找稱為正向映射;地址到名字的查找稱為反向映射。

二、DNS服務(wù)器安裝配置

以下都為Solaris平臺下用root用戶操作,不論你使用哪個發(fā)行版本的unix,DNS的設(shè)置與unix的關(guān)系并沒有太大的關(guān)系。

1、安裝BIND,當(dāng)前Release版本是bind-9.4.2.tar.gz

為了方便用于其他操作系統(tǒng),我們還是從源代碼包方式安裝。首先從ISC公司的主頁(  http://www.isc.org/index.pl?/sw/bind/index.php )下軟件包。

解壓:

# pwd

/opt/wacos/encle

# gunzip bind-9.4.2.tar.gz

# tar -xvf bind-9.4.2.tar

配置編譯并安裝,BIND正常安裝在/usr/local目錄下,但可以調(diào)整通過--prefix參數(shù)設(shè)置,本例不用IPv6,啟動文件最后會安裝在/usr/local/sbin里:

# cd bind-9.4.2

# ./configure --prefix=/usr/local --sysconfdir=/etc --disable-ipv6

# make

# make install

安裝的時間會比較久,安裝完后看一看現(xiàn)版本是多少:

# /usr/local/sbin/named -v

到此Bind已經(jīng)安裝完成了。

2、生成RNDC(用于控制DNS服務(wù)器,Bind9有)配置文件/etc/rndc.conf

Bind9規(guī)定,如果要使用rndc來控制dns,必須先生成驗證文件 rndc.conf 和密鎖。rndc.conf文件的內(nèi)容,可用rndc-confgen命令生成所需內(nèi)容。

# /usr/local/sbin/rndc-confgen > /etc/rndc.conf

如果機器上沒有random產(chǎn)生器,這種情況下系統(tǒng)應(yīng)該讓你輸入一些無關(guān)字母來替代/dev/random的功能。

------------------------------------------

You must use the keyboard to create entropy, since your system is lacking

/dev/random (or equivalent)

start typing:

...............................

...........................

...........................

...........................

...........................

...........................

...........................

...........................

stop typing.

# Start of rndc.conf

...

# End of named.conf

------------------------------------------

生成的rndc.conf大致如下:

# cat /etc/rndc.conf

------------------------------------------

# Start of rndc.conf

key "rndc-key" {

        algorithm hmac-md5;

        secret "ZdAFUwS0QMr95427P7Xq+w==";

};

options {

        default-key "rndc-key";

        default-server 127.0.0.1;

        default-port 953;

};

# End of rndc.conf

# Use with the following in named.conf, adjusting the allow list as needed:

# key "rndc-key" {

#       algorithm hmac-md5;

#       secret "ZdAFUwS0QMr95427P7Xq+w==";

# };

#

# controls {

#       inet 127.0.0.1 port 953

#               allow { 127.0.0.1; } keys { "rndc-key"; };

# };

# End of named.conf

#

------------------------------------------

后面配置/etc/named.conf的時候要把“# Use with the following in named.conf, adjusting the allow list as needed:”這行下的所有復(fù)制到named.conf 文件里。

3、配置DNS服務(wù)器的引導(dǎo)文件/etc/named.conf

named.conf文件包含的內(nèi)容:

指出包含根服務(wù)器的文件位置;

建立首要服務(wù)器、輔助服務(wù)器、僅緩存服務(wù)器;

指出服務(wù)器的權(quán)威區(qū)域;

指出服務(wù)器的數(shù)據(jù)文件的位置;

為特定區(qū)域應(yīng)用安全選項;

定義日志規(guī)范;

可為一組區(qū)域應(yīng)用選項。

named.conf編寫規(guī)范:

陳述語句以;號結(jié)束;

每個陳述語句還可以包括一段{}括起來的陳述;

多行注釋為/* */;單行注釋#或//開始。

陳述語句可定義:

acl:定義一命名的IP地址匹配列表

options:控制全局服務(wù)器配置選項

zone:定義區(qū)域

先建立區(qū)域文件目錄/etc/named:

# mkdir /etc/named

配置named.conf示例:

# vi /etc/named.conf

------------------------------------------

options {

//定義區(qū)域文件目錄,表示以下各項配置中的文件默認在此目錄中

directory "/etc/named";

};

//指定根DNS服務(wù)器的配置文件/etc/named/named.root,此文件可從網(wǎng)絡(luò)下載

zone "." in {

type hint;

file "named.root";

};

//指定正向解析配置文件/etc/named/encle.zone

zone "encle.com" in {

type master;

file "encle.zone";

};

//指定反向解析配置文件/etc/named/encle.rzone,“111.19.172.”這里是根據(jù)網(wǎng)絡(luò)IP分配情況而定,是反向IP前三段

zone "111.19.172.in-addr.arpa" in {

type master;

file "encle.rzone";

};

//指定環(huán)回反向解析配置文件/etc/named/named.local

zone "0.0.127.in-addr.arpa" in {

type master;

file "named.local";

};

// 把上面生成的/etc/rndc.conf的Key和Controls段內(nèi)容拷到這里

key "rndc-key" {

      algorithm hmac-md5;

      secret "ZdAFUwS0QMr95427P7Xq+w==";

};

controls {

      inet 127.0.0.1 port 953

      allow { 127.0.0.1; } keys { "rndc-key"; };

};

------------------------------------------

4、配置區(qū)域文件

區(qū)數(shù)據(jù)文件的大部分條目被稱為DNS資源記錄(resource record)。

數(shù)據(jù)文件中資源記錄的順序如下:

SOA記錄

指示該區(qū)的權(quán)威

NS記錄

該區(qū)的一個名字服務(wù)器

其他記錄

有關(guān)該區(qū)中主機的數(shù)據(jù)

A 名字到地址的映射

PTR 地址到名字的映射

CNAME 別名

注釋:

使用分號(;)開頭的到行尾處結(jié)束。

設(shè)定區(qū)默認的TTL值:

名字服務(wù)器在查詢響應(yīng)中提供這個TTL值,允許其他服務(wù)器將數(shù)據(jù)在緩存中存放TTL所指定的時間。

允許的單位是: w=星期 d=天 h=小時 m=分鐘 s=秒

資源記錄格式:

[name] [ttl] [class] [type] [data]

name:域名

ttl:緩存生存時間,通常是86400(1天),也可表示成1d

class:網(wǎng)絡(luò)類別,通常IN表示互聯(lián)網(wǎng)

type:該域名的資源記錄類型

data:數(shù)據(jù),如主機名、ip、郵件地址等

資源記錄類型介紹:

; 注釋開頭

$TTL:Time To Live,緩存生存時間

SOA:Start of Authority,標(biāo)志主名城服務(wù)器、聯(lián)系信息等

NS:Name Server,名稱服務(wù)器

A:Address,指定一主機的IP

PTR:Pointer,指定一IP的主機名,用來反向解析(即把IP解析成主機名)

CNAME:Canonical Name,主機別名(如www可代替一主機名)

AAAA:quad-A,指定一主機的IPv6地址

a) /etc/named/named.root

This file is used when you are connected to internet.

可從  http://www.internic.net/zones/named.root 獲得該文件的最新版本。

c) /etc/named/encle.zone

# vi /etc/named/encle.zone

------------------------------------------

; This file resolves hostnames to IP addresses in the encle.com. domain.

$ORIGIN encle.com.

$TTL 1d

encle.com. IN SOA dns.encle.com. wangnc.gmail.com. (

20080201 ; serial number

1h ; refresh

15m ; retry

1w ; expire

1d ) ; ttl

encle.com. IN NS dns.encle.com.

dns IN A 172.19.111.37

www IN A 172.19.111.40

test IN A 172.19.111.42

------------------------------------------

c) /etc/named/encle.rzone

# vi /etc/named/encle.rzone

------------------------------------------

; This file resolves IP addresses to hostnames in the encle.com. domain.

$ORIGIN 1.168.192.IN-ADDR.ARPA.

$TTL 1d

111.19.172.IN-ADDR.ARPA. IN SOA dns.encle.com. wangnc.gmail.com. (

20080201 ; serial number

3h ; refresh

1h ; retry

1w ; expire

1d ) ; ttl

111.19.172.IN-ADDR.ARPA. IN NS dns.encle.com.

37 IN PTR dns.encle.com.

40 IN PTR www.encle.com.

42 IN PTR test.encle.com.

------------------------------------------

d) /etc/named/named.local

# vi /etc/named/named.local

------------------------------------------

$ORIGIN 0.0.127.IN-ADDR.ARPA.

$TTL 1d

0.0.127.IN-ADDR.ARPA. IN SOA dns.encle.com. wangnc.gmail.com. (

20080201 ; version number

3h ; refresh

1h ; retry

1w ; expire

1d ) ; ttl

0.0.127.IN-ADDR.ARPA. IN NS dns.encle.com.

1 IN PTR localhost.encle.com.

------------------------------------------

5、檢查配置文件

# /usr/local/sbin/named-checkconf /etc/named.conf

# /usr/local/sbin/named-checkzone encle.com /etc/named/encle.zone

6、在主DNS服務(wù)器上開啟in.named服務(wù)進程

# /usr/local/sbin/named 或 # /usr/local/sbin/named -c /etc/named.conf (針對named.conf沒放在默認位置/etc下的情況)

查看開啟的進程:

# ps -ef | grep named | grep -v grep

測試rndc是否成功:

# /usr/local/sbin/rndc status

number of zones: 14

debug level: 0

xfers running: 0

xfers deferred: 0

soa queries in progress: 0

query logging is OFF

recursive clients: 0/0/1000

tcp clients: 0/100

server is up and running

表示rndc已經(jīng)成功控制Bind9。如果沒有顯示上面的信息,請檢查你的/usr/local/etc/named.conf文件里面是否配置了/usr/local/etc/rndc.conf里面的key。

查看是否有錯誤日志信息:

# tail -f /var/adm/messages

Jan 30 14:26:54 fsdb37 named[15667]: [ID 873579 daemon.notice] starting BIND 9.4.2

Jan 30 14:26:54 fsdb37 named[15667]: [ID 873579 daemon.error] binding TCP socket: address in use

Jan 30 14:26:54 fsdb37 last message repeated 1 time

Jan 30 14:26:54 fsdb37 named[15667]: [ID 873579 daemon.notice] command channel listening on 127.0.0.1#953

Jan 30 14:26:54 fsdb37 named[15667]: [ID 873579 daemon.notice] running

注意:

solaris8&9版本中預(yù)裝的有bind,目錄在/usr/sbin,程序為in.named,也有自己的nslookup等程序,可以看它的版本:

# /usr/sbin/in.named -v

in.named BIND 8.2.4 Fri May 19 04:41:53 PDT 2006

        Generic Patch-5.8-May 2006

而且在/etc/rc2.d/S72inetsvc中有in.named的啟動定義:只有/etc下有named.conf文件,系統(tǒng)啟動時就會將in.named啟動起來。

------------------------------------------

...

if [ -f /usr/sbin/in.named -a -f /etc/named.conf ]; then

        echo 'starting internet domain name server.'

        /usr/sbin/in.named &

fi

...

------------------------------------------

而我們安裝自己的bind時,往往(默認是這樣的)會將named.conf文件放到/etc下的!這就造成了我們配置好我們的bind,一啟動server,solaris預(yù)裝的bind就啟動了,我們再去啟動我們的bind就會報錯:53端口已經(jīng)被占用了。解決的辦法是修改/etc/rc2.d/S72inetsvc,將相關(guān)in.named的全部注釋掉,將我們的named增加進去。這樣,我們的dns就會在系統(tǒng)啟動時自動運行了。

另外,系統(tǒng)自帶了一個nslookup是在 /usr/sbin/ 下,安裝Bind9后帶的nslookup是在 /usr/local/bin 下的。這樣,我們系統(tǒng)里就有了兩個nslookup了。而環(huán)境變量里的PATH變量中,/usr/sbin一般是在排名比較靠前,肯定是在/usr/local/bin之前的。這樣造成了我們鍵入nslookup時,運行的是老版本的nslookup。這樣我們可能會得到報錯信息。解決的辦法是將新的nslookup覆蓋掉老的文件,或者是將環(huán)境變量調(diào)整一下,將 /usr/local/bin 放到最前面。

三、DNS客戶端的配置

1、創(chuàng)建/etc/resolv.conf文件,記錄DNS服務(wù)器的地址和域名。

一個示例的resolv.conf文件如下:

# vi /etc/resolv.conf

------------------------------------------

domain encle.com    #默認的domain

nameserver 172.19.111.37    #DNS server ip

------------------------------------------

第一行是“domain 你申請的域名”,第二行是名稱服務(wù)器,其格式為“nameserver IP地址”,如果IP是127.0.0.1表示本機就是DNS服務(wù)器,該段可以是DNS的主域名稱服務(wù)器、備份域名稱服務(wù)器或緩沖名稱服務(wù)器,但是書寫時不可以超過3個服務(wù)器。

2、修改/etc/nsswitch.conf,是客戶機能夠使用DNS服務(wù),該文件記錄主機名的搜索順序等信息。

SUN客戶機缺省使用files作為服務(wù)器名字的解析,為了使用DNS名稱解析服務(wù)器,必須在 /etc/nsswitch.conf 指明使用DNS服務(wù)。

# vi /etc/nsswitch.conf

------------------------------------------

...

group:      files

hosts:      files dns

ipnodes:    files

...

------------------------------------------

如上例,只要在hosts一項添加dns項就可以。

3、用nslookup查詢DNS服務(wù)器,驗證客戶端的設(shè)置,下載DNS數(shù)據(jù)庫。

啟動時,nslookup缺省地以本地服務(wù)器為目標(biāo)。響應(yīng)中包括目標(biāo)服務(wù)器的名字和地址。>是提示符,這意味著可以開始發(fā)送名字服務(wù)詢問或配置。

# nslookup

> ...

> exit

4、BIND相關(guān)的一些工具介紹

dig 查詢DNS服務(wù)器。

host 一個DNS查找工具。

rndc 控制BIND的操作。

rndc-confgen 生成rndc.conf文件

named-checkconf 檢查named.conf文件的語法。

named-checkzone 檢查區(qū)域文件的合法性。

lwresd 是為本地進程提供的只有緩存的名字服務(wù)器。

named 是名字服務(wù)器守護進程。

dnssec-signzone 生成帶有簽名的區(qū)域文件。

dnssec-signkey 為區(qū)域文件密鑰集生成簽名。

dnssec-keygen 是DNS密鑰生成器。

dnssec-makekeyset 利用dnssec-keygen生成的一個或多個密鑰創(chuàng)建密鑰集。

nsupdate 用于提交DNS更新請求。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Solaris下怎么用Bind安裝和配置DNS”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!


網(wǎng)站欄目:Solaris下怎么用Bind安裝和配置DNS
新聞來源:http://weahome.cn/article/psshhi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部