當前位置:首頁 » 操作系統 » Namedforlinux

Namedforlinux

發布時間: 2022-07-05 17:45:38

1. 在linux上搭建DNS服務如果named.conf和zone文件配置都沒有問題但啟動失敗是何原因

安裝 BIND 軟體包
1、安裝
# yum -y install bind caching-nameserver
2、配置
下面的例子是以公網IP(172.16.0.80/29),區域網IP(192.168.0.0/24),域名(linuxde.net)作說明。在配置你自己的伺服器時,請使用你自己的IP和域名。
# vim /etc/named.conf
options {
directory "/var/named";
# query range
allow-query { localhost; 192.168.0.0/24; };
# transfer range
allow-transfer { localhost; 192.168.0.0/24; };
# recursion range
allow-recursion { localhost; 192.168.0.0/24; };
};
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
# here is the section for internal informations
vimew "internal" {
match-clients {
localhost;
192.168.0.0/24;
};
zone "." IN {
type hint;
file "named.ca";
};
# set zones for internal
zone "linuxde.net" IN {
type master;
file "linuxde.net.lan";
allow-update { none; };
};
# set zones for internal
zone "0.168.192.in-addr.arpa" IN {
type master;
file "0.168.192.db";
allow-update { none; };
};

zone "localdomain" IN {
type master;
file "localdomain.zone";
allow-update { none; };
};

zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};

zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};

zone "255.in-addr.arpa" IN {
type master;
file "named.broadcast";
allow-update { none; };
};

zone "0.in-addr.arpa" IN {
type master;
file "named.zero";
allow-update { none; };
};
};

vimew "external" {
match-clients {
any;
};

zone "." IN {
type hint;
file "named.ca";
};

# set zones for external
zone "linuxde.net" IN {
type master;
file "linuxde.net.wan";
allow-update { none; };
};

# set zones for external *note
zone "80.0.16.172.in-addr.arpa" IN {
type master;
file "80.0.16.172.db";
allow-update { none; };
};
};

include "/etc/rndc.key";

# *note : For How to write for reverse resolvimng, Write network address reversely like below.

the case for 192.168.0.0/24
network address? 192.168.0.0
range of network? 192.168.0.0 - 192.168.0.255
how to write? 0.168.192.in-addr.arpa

case of 172.16.0.80/29
network address? 172.16.0.80
range of network? 172.16.0.80 - 172.16.0.87
how to write? 80.0.16.172.in-addr.arp

設置Zones
創建zone文件以便伺服器能解析域名IP。
1、內部zone文件
這個例子使用的是內網地址(192.168.0.0/24),域名(linuxde.net),請根據自己的具體情況配置。
# vim /var/named/linuxde.net.lan
$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL

)
# define name server
IN NS ns.linuxde.net.
# internal IP address of name server
IN A 192.168.0.17
# define mail exchanger
IN MX 10 ns.linuxde.net.

# define IP address and hostname
ns IN A 192.168.0.17

2、外部zone文件
這個例子使用的是外網地址(172.16.0.80/29),域名(linuxde.net),請替換成自己的。
# vim /var/named/linuxde.net.wan
$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.
# external IP address of name server
IN A 172.16.0.82
# define Mail exchanger
IN MX 10 ns.linuxde.net.

# define IP address and hostname
ns IN A 172.16.0.82

創建zone文件使伺服器能夠反向解析IP到域名。
3、內部zone文件
這個例子使用的是內網地址(192.168.0.0/24),域名(linuxde.net),請使用自己的設置替換。
# vim /var/named/0.168.192.db
$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.

# define range that this domain name in
IN PTR linuxde.net.
# define IP address and hostname
IN A 255.255.255.0

17 IN PTR ns.linuxde.net.

4、外部zone文件
這例子使用外網地址(172.16.0.80/29),域名(linuxde.net),請替換成自己的。
# vim /var/named/80.0.16.172.db
$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.

# define range that this domain name in
IN PTR linuxde.net.
# define IP address and hostname
IN A 255.255.255.248

82 IN PTR ns.linuxde.net.

啟動BIND
1、完成BIND的配置後,在啟動named之前,還需要建立chroot環境。
# yum -y install bind-chroot
# /etc/rc.d/init.d/named start
# chkconfig named on
2、操作檢驗
確認伺服器已經正確解析域名或IP地址。
# dig ns.linuxde.net.
; <<>> DiG 9.3.4 <<>> ns.linuxde.net.
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54592
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;ns.linuxde.net. IN A

;; ANSWER SECTION:
ns.linuxde.net. 86400 IN A 192.168.0.17

;; AUTHORITY SECTION:
linuxde.net. 86400 IN NS ns.linuxde.net.

;; Query time: 0 msec
;; SERVER: 192.168.0.17#53(192.168.0.17)
;; WHEN: Thu Mar 8 19:35:19 2007
;; MSG SIZE rcvd: 68
# dig -x 192.168.0.17
; <<>> DiG 9.3.4 <<>> -x 192.168.0.17
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45743
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;17.0.168.192.in-addr.arpa. IN PTR

;; ANSWER SECTION:
17.0.168.192.in-addr.arpa. 86400 IN PTR ns.linuxde.net.

;; AUTHORITY SECTION:
0.168.192.in-addr.arpa. 86400 IN NS ns.linuxde.net.

;; ADDITIONAL SECTION:
ns.linuxde.net. 86400 IN A 192.168.0.17

;; Query time: 0 msec
;; SERVER: 192.168.0.17#53(192.168.0.17)
;; WHEN: Thu Mar 8 19:37:50 2007
;; MSG SIZE rcvd: 107
配置從DNS伺服器
配置從DNS伺服器比較簡單。下面的例子主DNS是「ns.linuxde.net」,從DNS是「ns.example.info」。
1、在主DNS伺服器的zone文件作如下配置
# vim /var/named/linuxde.net.wan
$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
# update serial
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
IN NS ns.linuxde.net.
# add name server
IN NS ns.example.info.
IN A 172.16.0.82
IN MX 10 ns.linuxde.net.

ns IN A 172.16.0.82

# rndc reload
server reload successful
2、配置從DNS伺服器
# vim /etc/named.conf
# add these lines below
zone "linuxde.net" IN {
type slave;
masters { 172.16.0.82; };
file "slaves/linuxde.net.wan";
};
# rndc reload
server reload successful
# ls /var/named/slaves
linuxde.net.wan # zone file in master DNS has been just transfered
設置別名記錄,如果你想為你的主機設置另一個名稱,在zone文件定義CNAME記錄
# vim /var/named/server-Linux.info.wan
$TTL 86400
@ IN SOA ns.server-linux.info. root.server-linux.info. (
# update serial
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
IN NS ns.server-linux.info.
IN A 172.16.0.82
IN MX 10 ns.server-linux.info.

ns IN A 172.16.0.82
# aliase IN CNAME server's name
ftp IN CNAME ns.server-linux.info.

# rndc reload
server reload successful

2. Linux域名解析

你已經作對了啊,就是做A記錄指到你的IP就行了。

只是生效需要一段時間而已。

剛Ping了一下,www.feelworld.com指向的IP是82.98.86.175,你的IP應該是173.231.6.89,那把這個A記錄的IP改一下就行了

3. Linux中如何設置域名伺服器

etc/hosts 文件的具體內容如下: # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 localhost.localdomain localhost fc4 192.168.1.3 a.test.com a 192.168.1.1 b.test.cn b /etc/host.conf 文件: order hosts,bind 表示先用hosts文件做解析,在用DNS解析 /etc/resolv.conf 文件: ; generated by NetworkManager, do not edit! search test.com nameserver 127.0.0.1 search test.cn nameserver 192.168.1.1 nameserver 61.144.56.100 /etc/named.conf 文件: // // named.conf for Red Hat caching-nameserver // options { directory "/var/named"; mp-file "/var/named/data/cache_mp.db"; statistics-file "/var/named/data/named_stats.txt"; /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versions of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged * port by default. */ // query-source address * port 53; }; // // a caching only nameserver config // controls { inet 127.0.0.1 allow { localhost; } keys { rndckey; }; }; zone "." IN { type hint; file "named.ca"; }; zone "test.com"IN { type master; file "test.com"; allow-update { none; }; }; zone "1.168.192.in-addr.arpa"IN { type master; file "192.168.1.rev"; allow-update { none; }; }; zone "test.cn"IN { type master; file "test.cn"; allow-update { none; }; }; zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN { type master; file "named.ip6.local"; allow-update { none; }; }; zone "255.in-addr.arpa" IN { type master; file "named.broadcast"; allow-update { none; }; }; zone "0.in-addr.arpa" IN { type master; file "named.zero"; allow-update { none; }; }; include "/etc/rndc.key"; 在/var/name/test.com 文件下: $TTL 86400 @ IN SOA a.test.com. root.a.test.com ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum IN NS a.test.com. IN MX 10 mail.test.com. a IN A 192.168.1.3 mail IN A 192.168.1.3 //其中root.a.test.com的含義是管理員的郵箱 /var/name/test.cn 文件下: $TTL 86400 @ IN SOA b.test.cn. root.a.test.com ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum IN NS b.test.cn. IN MX 10 mail.test.cn. b IN A 192.168.1.1 mail IN A 192.168.1.1 /var/name/192.168.1.rev 文件下: $TTL 86400 @ IN SOA 1.168.192.in-addr.arpa. root.test.com. ( 1997022700 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS a.test.com. IN NS b.test.cn. IN MX 10 mail.test.com. IN MX 10 mail.test.cn. 3 IN PTR a.test.com. 3 IN PTR mail.test.com. 1 IN PTR b.test.cn. 1 IN PTR mail.test.cn. 然後用/etc/init.d/named restart重啟DNS服務,在重啟過程中,我曾經出現過好幾次的錯誤,按照出錯的提示,會提示是named.conf文件第幾行出錯的。或者提示在那些包含文件例如test.cn這些文件裡面的問題,然後一個一個排除。 最後還有一些nslookup的命令比較有用: set all用於顯示使用nslookup工具這台機器上的DNS伺服器的一些信息 set type=any會顯示完整信息包括域中郵件伺服器和主從DNS伺服器的名字和IP地址 server 192.168.0.1更換查詢的DNS伺服器地址

4. Linux下常用的DNS服務軟體是什麼,常用的DNS記錄有

Linux下常用的DNS服務軟體是BIND

以下是一個配置DNS服務的實例:

………………………………………………DNS的配置步驟:……………………………………………………

一、配置靜態IP地址:
#vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.198.0.5
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
#/etc/init.d/network restart
#ifconfig eth0
二、使用BIND構建DNS伺服器
1、BIND伺服器安裝
RHEL4中包括了BIND服務相關的軟體包
bind-libs-9.2.4-2
提供了實現域名解析功能必備的庫文件 ,系統默認安裝
bind-utils-9.2.4-2
提供了對DNS伺服器的測試工具程序 ,系統默認安裝
bind-9.2.4-2 安裝文件位於第4張安裝光碟中
# rpm -ivh bind-9.2.4-2.i386.rpm
BIND伺服器的服務程序腳本名稱是named,默認沒有啟動,需手動設置。
#rpm -ql bind | grep init.d
/etc/rc.c/init.d/named
#chkconfig --level 35 named on
#chkconfig --list named
三、主域名伺服器的配置
1、在named.conf文件中設置域
全局配置
options {
directory "/var/named";
mp-file "/var/named/data/cache_mp.db";
statistics-file "/var/named/data/named_stats.txt";
};

controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};

建立正向解析域
zone "." IN { (指定根域)
type hint;
file "named.ca";
};

zone "benet.com" { (指定本地域)
type master;
file "benet.com.zone";
};

建立反向解析域
zone "0.168.192.in-addr.arpa" { (指定反向域)
type master;
file "192.168.0.rev";
};

2、建立正向區域文件 (該文件需要用vi編輯器手動建立在/var/named中,並寫其內容)
#cat /var/named/benet.com.zone
$TTL 86400 (秒)
@ IN SOA benet.com. hostmaster.benet.com. (
42 ; serial (d. adams) (序列號)
3H ; refresh (3小時更新)
15M ; retry (15分鍾重試)
1W ; expiry (1周)
1D ) ; minimum (1天)
@ IN NS ns1.benet.com.
@ IN NS ns2.benet.com.

ns1 IN A 192.168.0.5
ns2 IN A 192.168.0.6
host1 IN A 192.168.0.7
host2 IN A 192.168.0.8

mail IN CNAME host1.benet.com.
www IN CNAME host2.benet.com.

@ IN MX 5 mail.benet.com.
3、建立反向區域文件 (該文件需要用vi編輯器手動建立在/var/named中,並寫其內容)
# cat /var/named/192.168.0.rev
$TTL 86400
@ IN SOA ns1.ltest.com. hostmaster.ltest.com. (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
@ IN NS ns1.ltest.com.
@ IN NS ns2.ltest.com.

2 IN PTR ns1.ltest.com. (PTR可用IP省略方法,1.168.192.in-addr.rapa表192.168.1.2可寫為2)
3 IN PTR ns2.ltest.com.
11 IN PTR host1.ltest.com.
12 IN PTR host2.ltest.com.
4、配置文件和區域文件的測試
A、測試named.conf主配置文件
# named-checkconf (如果不顯示任何信息表示語法正確 )
B、測試區域文件
# named-checkzone benet.com /var/named/benet.com.zone
# named-checkzone 0.168.192.in-addr.arpa /var/named/192.168.0.rev
(named-checkzone命令對正向區域文件和反向區域文件進行檢查語法是否錯誤,第一個參數指定區域名稱,第二個參數指定區域文件名稱,如果語法正確將顯示OK)
5、重啟named服務
#service named restart
四、從域名伺服器 的配置
(它做為主域名伺服器的輔助和備份伺服器,自身不建立區域文件,而是從主域名伺服器中查詢並保存,它可以與主域名伺服器提供相同的域名解析服務,它需要在與主域名伺服器不同的主機中構建)
1、在named.conf文件中設置域
建立正向解析域
zone "benet.com" {
type slave; (type設置為「slave」,表示當前DNS伺服器是該域的從域名伺服器類型 )
file "slaves/benet.com.zone" (從域名伺服器中的區域文件應設置保存在 「slaves」子目錄中,區域文件將從主 域名伺服器中獲取並保存在該目錄中,為了便於管理,盡量使用與主伺服器相 同的區域文件名稱)
masters { 192.168.0.5; }; ( 使用masters設置主域名伺服器的IP地址 )
};
建立反向解析域
zone "0.168.192.in-addr.arpa" {
type slave;
file " slaves/192.168.0.rev";
masters { 192.168.0.5; };
};
2、檢測配置文件和啟動named服務
從域名伺服器只需要檢測配置文件的語法
# named-checkconf
啟動從域名伺服器
# service named start
查看區域文件
從伺服器啟動後將從主域名伺服器中獲得區域文件並保存在指定的目錄中
# ls /var/named/slaves/
192.168.0.rev benet.com.zone
(如果/var/named/slaves/目錄中沒有發現區域文件,說明從域名伺服器和主域名伺服器之間傳輸區域文件不成功,需要排錯。)
五、緩存域名伺服器的配置
(它應保證能夠與互聯網中的其他DNS伺服器進行連接,它的主要作用是提高域名解析速度和節約出口帶寬)
1、安裝caching-nameserver軟體包
(RHEL4系統為配置緩存域名伺服器專門提供了名為「caching-nameserver」的軟體包,該軟體包保存在第1張安裝光碟中,默認沒有安裝。)
# rpm -ivh caching-nameserver-7.3-3.noarch.rpm
(caching-nameserver軟體包安裝時將對BIND伺服器的配置文件named.conf的內容進行更改,原文件中的內容保存在/etc/named.conf.rpmorig中。)
2、named.conf中的全局設置 (其中以//開頭的行是無效行)
options {
directory "/var/named"; (directory用於設置BIND伺服器的工作目錄,即域名區域文件保存的目錄 )
mp-file "/var/named/data/cache_mp.db"; (mp-file用於設置域名緩存文件的保存位置和文件名 )
statistics-file "/var/named/data/named_stats.txt";
};
3、根區域設置
named.conf中的根區域設置
zone "." IN {
type hint; (type設置為hint表示該區域的類型是根區域)
file "named.ca"; (file用於設置區域文件,根區域文件的名稱是「named.ca」 )
};
(named.ca是根區域文件,位於「/var/named/ 」目錄中,named.ca中包含全球DNS根伺服器的地址信息請不要更改)
4、localhost正向解析
(localhost區域的作用是對主機名稱「localhost」和環回地址「127.0.0.1」 進行解析,總是代表本機)
zone "localhost" IN {
type master; ( type設置為master表示區域的類型為主伺服器 )
file "localhost.zone"; (file設置區域文件名的名字 ,localhost.zone在/var/named中,是安裝caching- nameserver時自動安裝的,用cat /var/named/localhost.zone查看內容)
};
5、localhost反向解析
zone "0.0.127.in-addr.arpa" IN {
type master; ( type設置為master表示區域的類型為主伺服器 )
file "named.local"; (file設置區域文件名的名字,named.local在/var/named中,是安裝caching-nameserver時 自動安裝的,用cat /var/named/named.local查看內容)
};
6、緩存域名伺服器在安裝caching-nameserver軟體包後不需要任何其他配置就可以啟動運行,並實現域名查詢和緩存功能,但它必須能夠訪問互聯網。可以使用nslookup命令進行測試。
六、DNS伺服器的測試
1、DNS測試原理
DNS伺服器的主要測試方法
使用nslookup、dig和host等專用工具可以對DNS伺服器進行較全面的測試
nslookup命令在Linux和Windows系統中都默認安裝,是比較常用的測試工具
2、使用nslookup測試DNS伺服器
進入nslookup命令交換環境
# nslookup
>
設置使用指定的DNS伺服器
> server 192.168.0.5
測試localhost主機域名的正向解析
> localhost
測試localhost主機域名的反向解析
> 127.0.0.1
測試互聯網中的域名解析
> www.benet.com
測試benet.com域中的A記錄
> host1.benet.com
測試benet.com域中的PTR記錄
> 192.168.0.7
測試benet.com域中的CNAME記錄
> www.benet.com
測試benet.com域中的NS記錄
> set type=ns (設置域名查詢類型為NS即域名記錄)
> benet.com
測試benet.com域中的MX記錄
> set type=mx (設置域名查詢類型為MX即郵件交換記錄)
> benet.com
設置進行A記錄的測試
> set type=a (設置域名查詢類型為A即地址記錄)
>mail.benet.com
3、使用dig測試DNS伺服器 (dig只運行在liunx平台,是domain information grep的縮寫)
1)#dig --help
dig命令的格式
Usage: dig [@global-server] [domain] [q-type] [q-class] {q-opt}
{global-d-opt} host [@local-server] {local-d-opt}
[ host [@local-server] {local-d-opt} [...]]
Use "dig -h" (or "dig -h | more") for complete list of options

2)dig命令可以比nslookup命令顯示更多的DNS伺服器信息
# dig @192.168.0.5 benet.com (@後是被查詢的DNS伺服器的IP地址,benet.com域名做為命令參數)
; <<>> DiG 9.2.4 <<>> @192.168.0.5 benet.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51201
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;benet.com. IN A
;; AUTHORITY SECTION:
benet.com. 86400 IN SOA ns1.benet.com. hostmaster.benet.com. 42 10800 900 604800 86400

以上dns是以benet.com域為實例講解………………

5. Linux named啟動不了

配置問題報錯已經說得很清楚了
沒有找到 /etc/named.local.zones 文件
查看你的配置文件 /etc/named.conf 72行左右的配置
ls /etc/named.local.zones 看看這個文件存在嗎

6. linux下如何配置DNS伺服器,

在linux下配置DNS伺服器,下面是配置過程中設置過的一些文件,

/etc/hosts 文件的具體內容如下:

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1 localhost.localdomain localhost fc4

192.168.1.3 a.test.com a

192.168.1.1 b.test.cn b

/etc/host.conf 文件:

order hosts,bind

表示先用hosts文件做解析,在用DNS解析

/etc/resolv.conf 文件:

; generated by NetworkManager, do not edit!

search test.com

nameserver 127.0.0.1

search test.cn

nameserver 192.168.1.1

nameserver 61.144.56.100

/etc/named.conf 文件:

//

// named.conf for Red Hat caching-nameserver

//

options {

directory "/var/named";

mp-file "/var/named/data/cache_mp.db";

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

/*

* If there is a firewall between you and nameservers you want

* to talk to, you might need to uncomment the query-source

* directive below. Previous versions of BIND always asked

* questions using port 53, but BIND 8.1 uses an unprivileged

* port by default.

*/

// query-source address * port 53;

};

//

// a caching only nameserver config

//

controls {

inet 127.0.0.1 allow { localhost; } keys { rndckey; };

};

zone "." IN {

type hint;

file "named.ca";

};

zone "test.com"IN {

type master;

file "test.com";

allow-update { none; };

};

zone "1.168.192.in-addr.arpa"IN {

type master;

file "192.168.1.rev";

allow-update { none; };

};

zone "test.cn"IN {

type master;

file "test.cn";

allow-update { none; };

};

zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {

type master;

file "named.ip6.local";

allow-update { none; };

};

zone "255.in-addr.arpa" IN {

type master;

file "named.broadcast";

allow-update { none; };

};

zone "0.in-addr.arpa" IN {

type master;

file "named.zero";

allow-update { none; };

};

include "/etc/rndc.key";

在/var/name/test.com 文件下:

$TTL 86400

@ IN SOA a.test.com. root.a.test.com (

42 ; serial (d. adams)

3H ; refresh

15M ; retry

1W ; expiry

1D ) ; minimum

IN NS a.test.com.

IN MX 10 mail.test.com.

a IN A 192.168.1.3

mail IN A 192.168.1.3

//其中root.a.test.com的含義是管理員的郵箱

/var/name/test.cn 文件下:

$TTL 86400

@ IN SOA b.test.cn. root.a.test.com (

42 ; serial (d. adams)

3H ; refresh

15M ; retry

1W ; expiry

1D ) ; minimum

IN NS b.test.cn.

IN MX 10 mail.test.cn.

b IN A 192.168.1.1

mail IN A 192.168.1.1

/var/name/192.168.1.rev 文件下:

$TTL 86400

@ IN SOA 1.168.192.in-addr.arpa. root.test.com. (

1997022700 ; Serial

28800 ; Refresh

14400 ; Retry

3600000 ; Expire

86400 ) ; Minimum

IN NS a.test.com.

IN NS b.test.cn.

IN MX 10 mail.test.com.

IN MX 10 mail.test.cn.

3 IN PTR a.test.com.

3 IN PTR mail.test.com.

1 IN PTR b.test.cn.

1 IN PTR mail.test.cn.

然後用/etc/init.d/named restart重啟DNS服務,在重啟過程中,我曾經出現過好幾次的錯誤,按照出錯的提示,會提示是named.conf文件第幾行出錯的。或者提示在那些包含文件例如test.cn這些文件裡面的問題,然後一個一個排除。

最後還有一些nslookup的命令比較有用:

set all用於顯示使用nslookup工具這台機器上的DNS伺服器的一些信息

set type=any會顯示完整信息包括域中郵件伺服器和主從DNS伺服器的名字和IP地址

server 192.168.0.1更換查詢的DNS伺服器地址

7. Linux中/etc/named.conf配置文件如何設置

1、首先打開一台linux虛擬機。

8. linux dns伺服器怎麼設置

在linux系統中一般通過bind軟體包來提供dns服務。


1、環境准備:

臨時關閉selinux和iptables

#setenforce0
#serviceiptablesstop


2、查詢相關軟體包:

[root@localhost~]#yumsearchbind
Loadedplugins:proct-id,refresh-packagekit,subscription-manager
UpdatingRedHatrepositories.
======================================================================================N/SMatched:bind======================================================================================
PackageKit-device-rebind.i686:
bind.i686:TheBerkeleyInternetNameDomain(BIND)DNS(DomainNameSystem)server
bind-chroot.i686:,named(8)
bind-utils.i686:

其中各軟體包的作用如下:

1)、bind: 提供域名服務的主要程序及相關文件。

2)、bind-chroot:為bind提供一個偽裝的根目錄以增強安全性。

3)、bind-utils:提供對DNS伺服器測試的工具程序(如nslookup、dig等)。


3、安裝BIND軟體包

#yuminstall*bind*

4、配置DNS伺服器:

1)、bind伺服器端程序

主要執行程序:/usr/sbin/named

服務腳本:、etc/init.d/named

默認監聽埠:53

主配置文件: /etc/named.conf

保存DNS解析記錄的數據文件: /var/named/chroot/var/named

2)、查詢bind程序的配置文件列表

[root@localhost~]#rpm-qcbind
/etc/logrotate.d/named
/etc/named.conf
/etc/named.iscdlv.key
/etc/named.rfc1912.zones
/etc/named.root.key
/etc/rndc.conf
/etc/rndc.key
/etc/sysconfig/named
/var/named/named.ca
/var/named/named.empty
/var/named/named.localhost
/var/named/named.loopback

3)、查看主配置文件named.conf

#vim/etc/named.conf


4)、主配置文件解析:

a、全局配置部分,默認的全局配置項如下:

options{
11listen-onport53{127.0.0.1;};//監聽的埠和介面IP地址
12listen-on-v6port53{::1;};
13directory"/var/named";//dns區域的數據文件默認存放位置
14mp-file"/var/named/data/cache_mp.db";
15statistics-file"/var/named/data/named_stats.txt";
16memstatistics-file"/var/named/data/named_mem_stats.txt";
17allow-query{localhost;};//允許dns查詢的客戶機列表,any表示所有
18recursionyes;//是否允許客戶機進行遞歸查詢
19
20dnssec-enableyes;
21dnssec-validationyes;
22dnssec-lookasideauto;
23
24/*PathtoISCDLVkey*/
25bindkeys-file"/etc/named.iscdlv.key";
26};

全局配置中還有如下選項:

//將本域名伺服器不能解析的條目轉發給其它DNS伺服器的IP地址
forwarders{202.102.24.68;12.3.3.3;};

b、默認的區域配置項如下:

35zone"."IN{
36typehint;//區域類型。hint為根區域;master為主區域;slave為輔助區域
37file"named.ca";//該區域對應的區域數據配置文件名
38};

區域配置中還有如下選項:

//允許下載區域資料庫的從域名伺服器IP地址
allow-transfer{189.98.90.23;};
//允許動態更新的客戶端IP地址(none表示全部禁止)
allow-update{none;};

添加如下區域配置:

zone「my.com」IN{
typemaster;//主區域
file「my.com」;//該區域對應的區域數據配置文件名
allow-transfer{192.168.153.1;};//允許下載區域資料庫的從域名伺服器IP地址
allow-update{none;};
};
zone「153.168.192.in-addr.arpa」IN{//表示針對IP192.168.153.130反向解析
typemaster;//主區域
file「192.168.153.my.arpa」;//該區域對應的區域數據配置文件名
};

5)、配置完了,可以執行如下命令對named.conf文件進行語法檢查。

#named-checkconf


注意:倒序網路地址.in-addr.arpa 表示反向區域

主配置文件最後還有一行是:

//該文件包含/etc/named.rfc1912.zones文件
include「/etc/named.rfc1912.zones」

區域數據配置文件:

先看一下named.localhost的內容:

$TTL1D//timetolive生存時間
@[email protected].(//」rname.invalid」DNS區域地址
0;serial//更新序列號
1D;refresh//更新時間
1H;retry//重試延時
1W;expire//失效時間
3H);minimum//無效地址解析記錄的默認緩存時間
NS@//nameserver域名服務記錄
A127.0.0.1//address只用在正向解析的區域數據文件中
AAAA::1

新建2個對應的區域數據配置文件:

#touchmy.com
#touch192.168.153.my.arpa
#vimmy.com
$TTL86400
@INSOAmy.com.admin.my.com(//admin.my.cm為該區域管理員的郵箱地址
200900201
3H
15M
1W
1D
)
@INNSns1.my.com.//當前域的DNS伺服器地址
INMX10mail.my.com.//用於設置當前域的郵件伺服器域名地址,數字10表示優先順序別,數字越大優先順序越低
ns1INA192.168.153.130
mailINA192.168.153.130
wwwINA192.168.153.130
ftpINCNAMEwww//CNAME別名(canonicalname)記錄,表示ftp.my.com和www.my.com對應同一個IP.

[root@localhostnamed]#vim192.168.153.my.arpa
$TTL86400
@INSOAmy.com.admin.my.com(
200900201
3H
15M
1W
1D
)
@INNSns1.my.com.
130INPTRftp.my.com

啟動DNS服務

[root@localhost~]#servicenamedstart

4、測試:

配置一台ftp伺服器用於測試:

#servicevsftpdstart//啟動vsftpd服務
當前網卡的配置:
eth0:192.168.0.1/24
eth1:192.168.153.130/24
[root@localhostnamed]#nslookup192.168.153.130
Server:127.0.0.1
Address:127.0.0.1#53

130.153.168.192.in-addr.arpaname=www.my.com.

[root@localhost~]#nslookupftp.my.com
Server:127.0.0.1
Address:127.0.0.1#53

ftp.my.comcanonicalname=www.my.com.
Name:www.my.com
Address:192.168.153.130

9. 如何在在Linux系統上配置DNS伺服器

安裝 BIND 軟體包

1、安裝

# yum -y install bind caching-nameserver

2、配置

下面的例子是以公網IP(172.16.0.80/29),區域網IP(192.168.0.0/24),域名(linuxde.net)作說明。在配置你自己的伺服器時,請使用你自己的IP和域名。

# vim /etc/named.conf

options {
directory "/var/named";
# query range
allow-query { localhost; 192.168.0.0/24; };
# transfer range
allow-transfer { localhost; 192.168.0.0/24; };
# recursion range
allow-recursion { localhost; 192.168.0.0/24; };
};
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
# here is the section for internal informations
vimew "internal" {
match-clients {
localhost;
192.168.0.0/24;
};
zone "." IN {
type hint;
file "named.ca";
};
# set zones for internal
zone "linuxde.net" IN {
type master;
file "linuxde.net.lan";
allow-update { none; };
};
# set zones for internal
zone "0.168.192.in-addr.arpa" IN {
type master;
file "0.168.192.db";
allow-update { none; };
};

zone "localdomain" IN {
type master;
file "localdomain.zone";
allow-update { none; };
};

zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};

zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};

zone "255.in-addr.arpa" IN {
type master;
file "named.broadcast";
allow-update { none; };
};

zone "0.in-addr.arpa" IN {
type master;
file "named.zero";
allow-update { none; };
};
};

vimew "external" {
match-clients {
any;
};

zone "." IN {
type hint;
file "named.ca";
};

# set zones for external
zone "linuxde.net" IN {
type master;
file "linuxde.net.wan";
allow-update { none; };
};

# set zones for external *note
zone "80.0.16.172.in-addr.arpa" IN {
type master;
file "80.0.16.172.db";
allow-update { none; };
};
};

include "/etc/rndc.key";

# *note : For How to write for reverse resolvimng, Write network address reversely like below.

the case for 192.168.0.0/24
network address? 192.168.0.0
range of network? 192.168.0.0 - 192.168.0.255
how to write? 0.168.192.in-addr.arpa

case of 172.16.0.80/29
network address? 172.16.0.80
range of network? 172.16.0.80 - 172.16.0.87
how to write? 80.0.16.172.in-addr.arp
設置Zones

創建zone文件以便伺服器能解析域名IP。

1、內部zone文件

這個例子使用的是內網地址(192.168.0.0/24),域名(linuxde.net),請根據自己的具體情況配置。

# vim /var/named/linuxde.net.lan

$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL

)
# define name server
IN NS ns.linuxde.net.
# internal IP address of name server
IN A 192.168.0.17
# define mail exchanger
IN MX 10 ns.linuxde.net.

# define IP address and hostname
ns IN A 192.168.0.17
2、外部zone文件

這個例子使用的是外網地址(172.16.0.80/29),域名(linuxde.net),請替換成自己的。

# vim /var/named/linuxde.net.wan

$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.
# external IP address of name server
IN A 172.16.0.82
# define Mail exchanger
IN MX 10 ns.linuxde.net.

# define IP address and hostname
ns IN A 172.16.0.82
創建zone文件使伺服器能夠反向解析IP到域名。

3、內部zone文件

這個例子使用的是內網地址(192.168.0.0/24),域名(linuxde.net),請使用自己的設置替換。

# vim /var/named/0.168.192.db

$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.

# define range that this domain name in
IN PTR linuxde.net.
# define IP address and hostname
IN A 255.255.255.0

17 IN PTR ns.linuxde.net.
4、外部zone文件

這例子使用外網地址(172.16.0.80/29),域名(linuxde.net),請替換成自己的。

# vim /var/named/80.0.16.172.db

$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.

# define range that this domain name in
IN PTR linuxde.net.
# define IP address and hostname
IN A 255.255.255.248

82 IN PTR ns.linuxde.net.
啟動BIND

1、完成BIND的配置後,在啟動named之前,還需要建立chroot環境。

# yum -y install bind-chroot
# /etc/rc.d/init.d/named start
# chkconfig named on

2、操作檢驗

確認伺服器已經正確解析域名或IP地址。

# dig ns.linuxde.net.
; <<>> DiG 9.3.4 <<>> ns.linuxde.net.
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54592
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;ns.linuxde.net. IN A

;; ANSWER SECTION:
ns.linuxde.net. 86400 IN A 192.168.0.17

;; AUTHORITY SECTION:
linuxde.net. 86400 IN NS ns.linuxde.net.

;; Query time: 0 msec
;; SERVER: 192.168.0.17#53(192.168.0.17)
;; WHEN: Thu Mar 8 19:35:19 2007
;; MSG SIZE rcvd: 68

# dig -x 192.168.0.17
; <<>> DiG 9.3.4 <<>> -x 192.168.0.17
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45743
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;17.0.168.192.in-addr.arpa. IN PTR

;; ANSWER SECTION:
17.0.168.192.in-addr.arpa. 86400 IN PTR ns.linuxde.net.

;; AUTHORITY SECTION:
0.168.192.in-addr.arpa. 86400 IN NS ns.linuxde.net.

;; ADDITIONAL SECTION:
ns.linuxde.net. 86400 IN A 192.168.0.17

;; Query time: 0 msec
;; SERVER: 192.168.0.17#53(192.168.0.17)
;; WHEN: Thu Mar 8 19:37:50 2007
;; MSG SIZE rcvd: 107

配置從DNS伺服器

配置從DNS伺服器比較簡單。下面的例子主DNS是「ns.linuxde.net」,從DNS是「ns.example.info」。

1、在主DNS伺服器的zone文件作如下配置

# vim /var/named/linuxde.net.wan

$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
# update serial
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
IN NS ns.linuxde.net.
# add name server
IN NS ns.example.info.
IN A 172.16.0.82
IN MX 10 ns.linuxde.net.

ns IN A 172.16.0.82
# rndc reload
server reload successful

2、配置從DNS伺服器

# vim /etc/named.conf

# add these lines below
zone "linuxde.net" IN {
type slave;
masters { 172.16.0.82; };
file "slaves/linuxde.net.wan";
};

# rndc reload
server reload successful
# ls /var/named/slaves
linuxde.net.wan # zone file in master DNS has been just transfered

設置別名記錄,如果你想為你的主機設置另一個名稱,在zone文件定義CNAME記錄

# vim /var/named/server-Linux.info.wan

$TTL 86400
@ IN SOA ns.server-linux.info. root.server-linux.info. (
# update serial
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
IN NS ns.server-linux.info.
IN A 172.16.0.82
IN MX 10 ns.server-linux.info.

ns IN A 172.16.0.82
# aliase IN CNAME server's name
ftp IN CNAME ns.server-linux.info.
# rndc reload
server reload successful

以下是一個整理的主配文件參數解釋(僅供參考)/**/代表注釋:

options { /*OPTIONS選項用來定義一些影響整個DNS伺服器的環境,如這里的DI RECTORY用來指定在本文件指定的文件的路徑,如這里的是將其指定到 /var/named 下,在這里你還可以指定埠等等。不指定則埠是53
*/
directory "/var/named";
}; //

//
// a caching only nameserver config
//
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
zone "." IN { //在這個文件中是用zone關鍵字來定義域區的,一個zone關鍵字定義一個域區
type hint;
/*在這里type類型有三種,它們分別是master,slave和hint它們的含義分別是:
master:表示定義的是主域名伺服器
slave :表示定義的是輔助域名伺服器
hint:表示是互聯網中根域名伺服器
*/
file "named.ca"; //用來指定具體存放DNS記錄的文件
};

zone "localhost" IN { //定義一具域名為localhost的正向區域
type master;
file "localhost.zone" ;
allow-update { none; };
};
zone "test.net" IN { //指定一個域名為test.net的正向區域
type master;
file "test.net」
allow-update { none;};
};

zone "0.0.127.in-addr.arpa" IN { //定義一個IP為127.0.0.*的反向域區
type master;
file "named.local";
allow-update { none; };
};
zone "0.192.168.in-addr.arpa" IN { //定義一個IP為168.192.0.*反向域區
type master;
file "168.192.0";

/var/named/test.net文件
@ IN SOA linux.test.net. Webmaster.test.net. ( SOA表示授權開始
/*上面的IN表示後面的數據使用的是INTERNET標准。而@則代表相應的域名,如在這里代表test.net,即表示一個域名記錄定義的開始。而linux.test.net則是這個域的主域名伺服器,而webmaster.test.net則是管理員的郵件地址。注意這是郵件地址中用.來代替常見的郵件地址中的@.而SOA表示授權的開始
*/
2003012101 ; serial (d. adams) /*本行前面的數字表示配置文件的修改版本,格式是年月日當日修改的修改的次數,每次修改這個配置文件時都應該修改這個數字,要不然你所作的修改不會更新到網上的其它DNS伺服器的資料庫上,即你所做的更新很可能對於不以你的所配置的DNS伺服器為DNS伺服器的客戶端來說就不會反映出你的更新,也就對他們來說你更新是沒有意義的。
*/
28800 ; refresh
/*定義的是以為單位的刷新頻率 即規定從域名伺服器多長時間查詢一個主伺服器,以保證從伺服器的數據是最新的
*/
7200 ;retry
/*上面的這個值是規定了以秒為單位的重試的時間間隔,即當從服務試圖在主伺服器上查詢更時,而連接失敗了,則這個值規定了從服務多長時間後再試
*/
3600000 ; expiry
/*上面這個用來規定從伺服器在向主服務更新失敗後多長時間後清除對應的記錄,上述的數值是以分鍾為單位的
*/
8400 )
/*上面這個數據用來規定緩沖伺服器不能與主服務聯繫上後多長時間清除相應的記

*/
IN NS linux
IN MX 10 linux
linux IN A 168.192.0.14
it-test1 IN A 168.192.0.133
www IN CNAME linux

/*上面的第一列表示是主機的名字,省去了後面的域。
NS:表示是這個主機是一個域名伺服器,
A:定義了一條A記錄,即主機名到IP地址的對應記錄
MX 定義了一郵件記錄
CNAME:定義了對應主機的一個別名

/var/named/168.192.0
@ IN SOA linux.test.net. webmastert.linux.net. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS linux.test.net.
/*以上的各關鍵字的含義跟test.net是相同的
14 IN PTR linux.test.net.
133 IN PTR it-test1.test.net.
/*
上面的第一列表示的是主機的IP地址。省略了網路地址部分。如14完整應該是:
168.192.0.14
PTR:表示反向記錄
最後一列表示的是主機的域名。

10. Linux 下安裝DNS伺服器,修改配置文件,誰給我做一下啊,named.conf文件發上來

//
// named.caching-nameserver.conf
//
// Provided by Red Hat caching-nameserver package to configure the
// ISC BIND named(8) DNS server as a caching only nameserver
// (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// DO NOT EDIT THIS FILE - use system-config-bind or an editor
// to create named.conf - edits to this file will be lost on
// caching-nameserver package upgrade.
//
options {
listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
mp-file "/var/named/data/cache_mp.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";

// Those options should be used carefully because they disable port
// randomization
// query-source port 53;
// query-source-v6 port 53;

allow-query { any; };
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost_resolver {
match-clients { any; };
match-destinations { any; };
recursion yes;
include "/etc/named.rfc1912.zones";
};

我給你說聲,DNS伺服器不只是配置named.conf這么簡單。還有/etc/named.rfc1912.zones下的DNS正向反向查找區域設置。
祝你成功
來自:寒楓

熱點內容
nginx怎麼訪問php 發布:2024-11-18 16:22:55 瀏覽:303
螞蟻外快賺錢腳本 發布:2024-11-18 16:21:52 瀏覽:178
cnc編程培訓學習 發布:2024-11-18 16:16:33 瀏覽:405
android查看工具 發布:2024-11-18 16:03:46 瀏覽:893
目前安卓11如何安裝 發布:2024-11-18 15:55:06 瀏覽:236
安卓結構光對比蘋果哪個快 發布:2024-11-18 15:50:03 瀏覽:930
天天酷跑3v3掛機腳本 發布:2024-11-18 15:43:02 瀏覽:461
pythonif字元串不等於 發布:2024-11-18 15:32:34 瀏覽:435
vr上用什麼存儲晶元 發布:2024-11-18 14:57:39 瀏覽:618
伺服器如何查原廠件和拆機件 發布:2024-11-18 14:54:18 瀏覽:358