1、linux搭建DNS服务Linux下搭建DNS服务器和配置文件(named.conf)祥解 2011/11/17 DNS,linux,服务器 服务器搭建与应用 评论 13,428配置之前先了解一下bindDNS服务器软件:BIND是一种开源的DNS(Domain Name System)协议的实现,包含对域名的查询和响应所需的所有软件。它是互联网上最广泛使用的一种DNS服务器,对于类UNIX系统来说,已经成为事实上的标准。为了构架DNS服务器来解析域名或ip地址,我们得安装BIND和caching-nameserver。为了TCP和UDP53数据包能通过,我们也有必要配置路由器。安装 BIND
2、 软件包1、安装#yum-y install bind caching-nameserver2、配置下面的例子是以公网IP(172.16.0.80/29),局域网IP(192.168.0.0/24),域名()作说明。在配置你自己的服务器时,请使用你自己的IP和域名。# vim /etc/named.confoptions directory /var/named;# query rangeallow-query localhost; 192.168.0.0/24; ;# transfer rangeallow-transfer localhost; 192.168.0.0/24; ;# rec
3、ursion rangeallow-recursion localhost; 192.168.0.0/24; ;controls inet 127.0.0.1 allow localhost; keys rndckey; ;# here is the section for internal informationsvimew internal match-clients localhost;192.168.0.0/24;zone . IN type hint;file named.ca;# set zones for internalzone IN type master;file .lan
4、;allow-update none; ;# set zones for internalzone 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 t
5、ype 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 externalzone IN type
6、 master;file .wan;allow-update none; ;# set zones for external *notezone 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/24net
7、work address? 192.168.0.0range of network? 192.168.0.0 - 192.168.0.255how to write? 0.168.192.in-addr.arpa case of 172.16.0.80/29network address? 172.16.0.80range of network? 172.16.0.80 - 172.16.0.87how to write? 80.0.16.172.in-addr.arp设置Zones创建zone文件以便服务器能解析域名IP。1、内部zone文件这个例子使用的是内网地址(192.168.0.0/
8、24),域名(),请根据自己的具体情况配置。# vim /var/named/.lan$TTL 86400 IN SOA . . ( 2007041501 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL) # define name server IN NS . # internal IP address of name server IN A 192.168.0.17 # define mail exchanger IN MX 10 . # define IP address and hostnamens
9、 IN A 192.168.0.172、外部zone文件这个例子使用的是外网地址(172.16.0.80/29),域名(),请替换成自己的。# vim /var/named/.wan$TTL 86400 IN SOA . . ( 2007041501 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL) # define name server IN NS . # external IP address of name server IN A 172.16.0.82 # define Mail exchange
10、r IN MX 10 . # define IP address and hostnamens IN A 172.16.0.82创建zone文件使服务器能够反向解析IP到域名。3、内部zone文件这个例子使用的是内网地址(192.168.0.0/24),域名(),请使用自己的设置替换。# vim /var/named/0.168.192.db$TTL 86400 IN SOA . . ( 2007041501 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL) # define name server IN
11、NS . # define range that this domain name in IN PTR . # define IP address and hostname IN A 255.255.255.0 17 IN PTR .4、外部zone文件这例子使用外网地址(172.16.0.80/29),域名(),请替换成自己的。# vim /var/named/80.0.16.172.db$TTL 86400 IN SOA . . ( 2007041501 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL)
12、 # define name server IN NS . # define range that this domain name in IN PTR . # define IP address and hostname IN A 255.255.255.248 82 IN PTR .启动BIND1、完成BIND的配置后,在启动named之前,还需要建立chroot环境。# yum -y install bind-chroot# /etc/rc.d/init.d/named start#chkconfignamed on2、操作检验确认服务器已经正确解析域名或IP地址。#dig.; DiG
13、9.3.4 .; 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:;. IN A; ANSWER SECTION:. 86400 IN A 192.168.0.17; AUTHORITY SECTION:. 86400 IN NS .; Querytime: 0 msec; SERVER:
14、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 S
15、ECTION:;17.0.168.192.in-addr.arpa. IN PTR; ANSWER SECTION:17.0.168.192.in-addr.arpa. 86400 IN PTR .; AUTHORITY SECTION:0.168.192.in-addr.arpa. 86400 IN NS .; ADDITIONAL SECTION:. 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 SI
16、ZE rcvd: 107配置从DNS服务器配置从DNS服务器比较简单。下面的例子主DNS是“”,从DNS是“ns.example.info”。1、在主DNS服务器的zone文件作如下配置# vim /var/named/.wan$TTL 86400 IN SOA . . ( # update serial 2007041501 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL) IN NS . # add name server IN NS ns.example.info. IN A 172.16.0.82
17、IN MX 10 . ns IN A 172.16.0.82# rndc reloadserver reload successful2、配置从DNS服务器# vim /etc/named.conf # add these lines below zone IN type slave; masters 172.16.0.82; ; file slaves/.wan;# rndc reloadserver reload successful#ls/var/named/slaves.wan # zone file in master DNS has been just transfered设置别名
18、记录,如果你想为你的主机设置另一个名称,在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-
19、linux.info. ns IN A 172.16.0.82# aliase IN CNAME servers nameftp IN CNAME ns.server-linux.info. # rndc reloadserver reload successful以下是一个整理的主配文件参数解释(仅供参考)/*/代表注释:options /*OPTIONS选项用来定义一些影响整个DNS服务器的环境,如这里的DI RECTORY用来指定在本文件指定的文件的路径,如这里的是将其指定到 /var/named 下,在这里你还可以指定端口等等。不指定则端口是53*/directory /var/nam
20、ed; / 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 loca
21、lhost IN /定义一具域名为localhost的正向区域type master;file localhost.zone ;allow-update none; ;zone IN /指定一个域名为的正向区域type master;file ”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
22、master;file 168.192.0;/var/named/文件 IN SOA . W. ( SOA表示授权开始/*上面的IN表示后面的数据使用的是INTERNET标准。而则代表相应的域名,如在这里代表,即表示一个域名记录定义的开始。而则是这个域的主域名服务器,而则是管理员的邮件地址。注意这是邮件地址中用.来代替常见的邮件地址中的.而SOA表示授权的开始*/2003012101 ; serial (d. adams) /*本行前面的数字表示配置文件的修改版本,格式是年月日当日修改的修改的次数,每次修改这个配置文件时都应该修改这个数字,要不然你所作的修改不会更新到网上的其它DNS服务器的数
23、据库上,即你所做的更新很可能对于不以你的所配置的DNS服务器为DNS服务器的客户端来说就不会反映出你的更新,也就对他们来说你更新是没有意义的。*/28800 ; refresh/*定义的是以为单位的刷新频率 即规定从域名服务器多长时间查询一个主服务器,以保证从服务器的数据是最新的*/7200 ;retry/*上面的这个值是规定了以秒为单位的重试的时间间隔,即当从服务试图在主服务器上查询更时,而连接失败了,则这个值规定了从服务多长时间后再试*/3600000 ; expiry/*上面这个用来规定从服务器在向主服务更新失败后多长时间后清除对应的记录,上述的数值是以分钟为单位的*/8400 )/*上
24、面这个数据用来规定缓冲服务器不能与主服务联系上后多长时间清除相应的记录*/IN NS linuxIN MX 10 linuxlinux IN A 168.192.0.14it-test1 IN A 168.192.0.133www IN CNAME linux/*上面的第一列表示是主机的名字,省去了后面的域。NS:表示是这个主机是一个域名服务器,A:定义了一条A记录,即主机名到IP地址的对应记录MX 定义了一邮件记录CNAME:定义了对应主机的一个别名/var/named/168.192.0 IN SOA . . (1997022700 ; Serial28800 ; Refresh14400 ; Retry3600000 ; Expire86400 ) ; MinimumIN NS ./*以上的各关键字的含义跟是相同的14 IN PTR .133 IN PTR it-./*上面的第一列表示的是主机的IP地址。省略了网络地址部分。如14完整应该是:168.192.0.14PTR:表示反向记录最后一列表示的是主机的域名。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1