|
例子:
raysuen.com. 600 IN SOA ns1.raysuen.com. admin.raysuen.com. (
20161220
1H
5M
1W
1D
)
raysuen.com. IN NS ns.raysuen.com.
ns.raysuen.com IN A 1.1.1.2
. IN A 1.1.1.1
1.1.1.1 IN PTR .
raysuen.com. IN MX 10 mail.raysuen.com.
mail.raysuen.com. IN A 1.1.1.3
|
|
规划:
ns 192.168.56.28
www 192.168.56.28 192.168.56.89
mail 192.168.56.89
ftp 192.168.56.89
|
|
bind进程的工作属性
区域的定义
option:
listen-on port 53 { 127.0.0.1; }; IPv4指定监听的端口,多个地址可以用;(分号)分隔
listen-on-v6 port 53 { ::1; }; IPv6指定监听的端口
directory "/var/named"; 指定数据文件目录
recursion yes; 默认开启递归,默认开启
allow-recursion { 网段/24; }; 指定允许递归的网段
allow-transfer { 网段/24; }; 允许区域传输
zone:
zone "zone_name" IN {
type {master|slave|hint|forword};
};
如果type为master
file "区域数据文件"
如果type为slave
file "区域数据文件"
masters { master_ip; };
如果type为hint
file "区域数据文件”
allow-transfer { 网段/24; }; 允许区域传输
示例:
zone "localhost" IN { 正向解析,即把域名解析成IP
type master;
file "named.localhost";
};
zone "0.0.127.in-addr.arpa" IN { 方向解析,即把IP解析成域名
type master;
file "named.loopback";
};
|
|
|
|
dig: domain infomation groper
dig -t NS . 显示所有的跟服务器
dig -t NS . @a.root-servers.net 指定到a.root-servers.net获取所有根信息
@IP 向IP服务器查找信息
dig -x IP 根据IP查询FQDN
host -t RT domain
named-checkconf 语法检查,对named.conf内容做语法检查
named-checkzone 语法检查,对zone文件内容做语法检查
nslookup
|
|
1 named.conf添加zone
zone "raysuen.com" IN {
type master;
file "raysuen.com.zone";
};
2 编写raysuen.com.zone区域文件
[root@LinuxTest named]# cp named.localhost raysuen.com.zone
[root@LinuxTest named]# vi raysuen.com.zone
$TTL 1D
@ IN SOA ns.raysuen.com. admin.raysuen.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns
IN MX 10 mail
ns IN A 192.168.56.28
mail IN A 192.168.56.89
www IN A 192.168.56.89
www IN A 192.168.56.28
ftp IN CNAME www
解释:
$TTL 写在第一行,表示下面统一使用当前定义的TTL值
@ SOA内的ZONE_NAME列写@,表示取named.conf的ZONE_NAME定义值
下面ns,mail,www,ftp没有写raysuen.com.,因为会自动补齐区域名称(ZONE_NAME)
3语法检查
[root@LinuxTest named]# named-checkconf
[root@LinuxTest named]# named-checkzone "raysuen.com" /var/named/raysuen.com.zone
zone raysuen.com/IN: loaded serial 0
OK
|
|
1 named.conf添加zone
zone "56.168.192.in-addr.arpa" IN {
type master;
file "56.168.192.zone";
};
2 编写28.56.168.192.zone区域文件
[root@LinuxTest named]# cp -p raysuen.com.zone 56.168.192.zone
[root@LinuxTest named]# vi 56.168.192.zone
$TTL 1D
@ IN SOA ns.raysuen.com. admin.raysuen.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.raysuen.com.
28 IN PRT ns.raysuen.com.
28 IN PRT .
89 IN PRT .
89 IN PRT mail.raysuen.com.
3语法检查
[root@LinuxTest named]# named-checkconf
[root@LinuxTest named]# named-checkzone "56.168.192.in-addr.arpa" 56.168.192.zone
zone 56.168.192.in-addr.arpa/IN: loaded serial 0
OK
|
|
options {
listen-on port 53 { 192.168.56.28; 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "named.localhost";
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.loopback";
};
zone "raysuen.com" IN {
type master;
file "raysuen.com.zone";
};
zone "56.168.192.in-addr.arpa" IN {
type master;
file "56.168.192.zone";
};
|
|
$TTL 1D
@ IN SOA ns.raysuen.com. admin.raysuen.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns
IN MX 10 mail
ns IN A 192.168.56.28
mail IN A 192.168.56.89
www IN A 192.168.56.89
www IN A 192.168.56.28
ftp IN CNAME www
|
|
$TTL 1D
@ IN SOA ns.raysuen.com. admin.raysuen.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.raysuen.com.
28 IN PTR ns.raysuen.com.
28 IN PTR .
89 IN PTR .
89 IN PTR mail.raysuen.com.
|
|
启动:
[root@LinuxTest yum.repos.d]# /etc/init.d/named start
Starting named: [ OK ]
[root@LinuxTest yum.repos.d]# tail /var/log/messages
Dec 20 15:56:14 localhost named[32193]: automatic empty zone: 9.E.F.IP6.ARPA
Dec 20 15:56:14 localhost named[32193]: automatic empty zone: A.E.F.IP6.ARPA
Dec 20 15:56:14 localhost named[32193]: automatic empty zone: B.E.F.IP6.ARPA
Dec 20 15:56:14 localhost named[32193]: automatic empty zone: 8.B.D.0.1.0.0.2.IP6.ARPA
Dec 20 15:56:14 localhost named[32193]: command channel listening on 127.0.0.1#953
Dec 20 15:56:14 localhost named[32193]: command channel listening on ::1#953
Dec 20 15:56:14 localhost named[32193]: zone 0.0.127.in-addr.arpa/IN: loaded serial 0
Dec 20 15:56:14 localhost named[32193]: zone localhost/IN: loaded serial 0
Dec 20 15:56:14 localhost named[32193]: managed-keys-zone ./IN: loaded serial 0
Dec 20 15:56:14 localhost named[32193]: running
[root@LinuxTest yum.repos.d]# named-checkzone "localhost" /var/named/named.localhost
zone localhost/IN: loaded serial 0
OK
[root@LinuxTest yum.repos.d]# named-checkzone "0.0.127.in-addr.arpa" /var/named/named.loopback
zone 0.0.127.in-addr.arpa/IN: loaded serial 0
OK
[root@LinuxTest yum.repos.d]# ping
PING (61.135.169.125) 56(84) bytes of data.
64 bytes from 61.135.169.125: icmp_seq=1 ttl=63 time=1.80 ms
64 bytes from 61.135.169.125: icmp_seq=2 ttl=63 time=1.86 ms
64 bytes from 61.135.169.125: icmp_seq=3 ttl=63 time=1.94 ms
64 bytes from 61.135.169.125: icmp_seq=5 ttl=63 time=1.70 ms
64 bytes from 61.135.169.125: icmp_seq=6 ttl=63 time=1.93 ms
|
|
[root@LinuxTest named]# dig -t NS raysuen.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6_8.3 <<>> -t NS ns.raysuen.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12306
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;ns.raysuen.com. IN NS
;; AUTHORITY SECTION:
raysuen.com. 10800 IN SOA ns.raysuen.com. admin.raysuen.com. 0 86400 3600 604800 10800
;; Query time: 0 msec
;; SERVER: 192.168.56.28#53(192.168.56.28)
;; WHEN: Tue Dec 20 16:30:15 2016
;; MSG SIZE rcvd: 74
[root@LinuxTest named]# dig -t A
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6_8.3 <<>> -t A
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4103
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;. IN A
;; ANSWER SECTION:
. 86400 IN A 192.168.56.89
. 86400 IN A 192.168.56.28
;; AUTHORITY SECTION:
raysuen.com. 86400 IN NS ns.raysuen.com.
;; ADDITIONAL SECTION:
ns.raysuen.com. 86400 IN A 192.168.56.28
;; Query time: 0 msec
;; SERVER: 192.168.56.28#53(192.168.56.28)
;; WHEN: Tue Dec 20 16:30:47 2016
;; MSG SIZE rcvd: 98
[root@LinuxTest named]# dig -t MX raysuen.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6_8.3 <<>> -t MX raysuen.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20747
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; QUESTION SECTION:
;raysuen.com. IN MX
;; ANSWER SECTION:
raysuen.com. 86400 IN MX 10 mail.raysuen.com.
;; AUTHORITY SECTION:
raysuen.com. 86400 IN NS ns.raysuen.com.
;; ADDITIONAL SECTION:
mail.raysuen.com. 86400 IN A 192.168.56.89
ns.raysuen.com. 86400 IN A 192.168.56.28
;; Query time: 1 msec
;; SERVER: 192.168.56.28#53(192.168.56.28)
;; WHEN: Tue Dec 20 16:33:04 2016
;; MSG SIZE rcvd: 99
[root@LinuxTest named]# host -t A
has address 192.168.56.89
has address 192.168.56.28
[root@LinuxTest named]# host -t A
has address 192.168.56.28
has address 192.168.56.89
[root@LinuxTest named]# host -t NS raysuen.com
raysuen.com name server ns.raysuen.com.
[root@LinuxTest named]# host -t MX raysuen.com
raysuen.com mail is handled by 10 mail.raysuen.com.
[root@LinuxTest named]# host -t SOA raysuen.com
raysuen.com has SOA record ns.raysuen.com. admin.raysuen.com. 0 86400 3600 604800 10800
|
|
[root@LinuxTest named]# nslookup
> set q=A
>
Server: 192.168.56.28
Address: 192.168.56.28#53
Name:
Address: 192.168.56.89
Name:
Address: 192.168.56.28
> set q=NS
> raysuen.com
Server: 192.168.56.28
Address: 192.168.56.28#53
raysuen.com nameserver = ns.raysuen.com.
> set q=MX
> raysuen.com
Server: 192.168.56.28
Address: 192.168.56.28#53
raysuen.com mail exchanger = 10 mail.raysuen.com.
>
|
|
[root@LinuxTest named]# nslookup
> set q=PTR
> 192.168.56.28
Server: 192.168.56.28
Address: 192.168.56.28#53
28.56.168.192.in-addr.arpa name = .
28.56.168.192.in-addr.arpa name = ns.raysuen.com.
> 192.168.56.89
Server: 192.168.56.28
Address: 192.168.56.28#53
89.56.168.192.in-addr.arpa name = .
89.56.168.192.in-addr.arpa name = mail.raysuen.com.
> > set q=NS
> 56.168.192.in-addr.arpa
Server: 192.168.56.28
Address: 192.168.56.28#53
56.168.192.in-addr.arpa nameserver = ns.raysuen.com.
[root@LinuxTest named]# dig -x 192.168.56.28
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6_8.3 <<>> -x 192.168.56.28
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12591
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;28.56.168.192.in-addr.arpa. IN PTR
;; ANSWER SECTION:
28.56.168.192.in-addr.arpa. 86400 IN PTR ns.raysuen.com.
28.56.168.192.in-addr.arpa. 86400 IN PTR .
;; AUTHORITY SECTION:
56.168.192.in-addr.arpa. 86400 IN NS ns.raysuen.com.
;; ADDITIONAL SECTION:
ns.raysuen.com. 86400 IN A 192.168.56.28
;; Query time: 1 msec
;; SERVER: 192.168.56.28#53(192.168.56.28)
;; WHEN: Tue Dec 20 17:19:35 2016
;; MSG SIZE rcvd: 120
|
|
zone "raysuen.com" IN {
type slave;
file "slaves/raysuen.com.zone";
masters { 192.168.56.28; };
allow-transfer { 192.168.56.28; };
};
zone "56.168.192.in-addr.arpa" IN {
type slave;
file "slaves/56.168.192.zone";
masters { 192.168.56.28; };
allow-transfer { 192.168.56.28; };
};
|
|
$TTL 1D
@ IN SOA ns.raysuen.com. admin.raysuen.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns
IN NS ns2 添加NS
IN MX 10 mail
ns IN A 192.168.56.28
mail IN A 192.168.56.89
www IN A 192.168.56.89
www IN A 192.168.56.28
ns2 IN A 192.168.56.89 添加NS的A记录
ftp IN CNAME www
|
|
$TTL 1D
@ IN SOA ns.raysuen.com. admin.raysuen.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.raysuen.com.
IN NS ns2.raysuen.com. 添加NS
28 IN PTR ns.raysuen.com.
89 IN PTR ns2.raysuen.com. 添加NS的PTR记录
28 IN PTR .
89 IN PTR .
89 IN PTR mail.raysuen.com.
|
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28572479/viewspace-2131984/ ,如需转载,请注明出处,否则将追究法律责任。