运行环境redhat 9.0 ,IP地址172.18.121.35,实现的域名为jb51.net
1.安装DNS所要的软件包.
查看是否安装bind软件,在终端中输入
复制代码代码如下:[root@localhost root]# rpm -qa|grep bind
redhat-config-bind-1.9.0-13
bind-9.2.1-16
bind-utils-9.2.1-16
ypbind-1.11-4
若出现以上的文字则表示安装成功,若没有出现以上东西插入正确的光盘,进行安装.或者通过下载源代码进行安装。
2.设定好IP地址与DNS
在终端中输入netconfig,回车,在第一行中输入IP,172.18.121.35.第二行输入子网掩码255.255.255.0第三行输入网关地址:172.18.121.1,最后一行输入DNS 172.18.121.35.再确定.再在终端中输入下面的命令
复制代码代码如下:
[root@localhost root]#service network reload
[root@localhost root]#service network restart
通过ifconfig查看IP信息
3.配置DNS
配置DNS正向搜索,配置文件如下:
复制代码代码如下:
[root@localhost root]#cp /var/named/localhost.zone /var/named/jb51.net
先复制本机DNS的一个配置模板文件,进行修改
复制代码代码如下:
[root@localhost root]# vi /var/named/jb51.net
$TTL 86400
$ORIGIN jb51.net.
@ 1D IN SOA jb51.net. root.jb51.net. (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
1D IN NS @
1D IN MX 5 mail.jb51.net.
www 1D IN A 172.18.121.35
mail 1D IN A 172.18.121.35
ftp 1D IN A 172.18.121.35
pop3 IN CNAME mail.jb51.net.
smtp IN CNAME mail.jb51.net.
保存退出,先按ESC ,再:wq.
配置DNS正向搜索,配置文件如下:
复制代码代码如下:
[root@localhost root]#cp /var/named/named.local /var/named/172.18.121.rev
先复制本机DNS的一个配置模板文件,进行修改
复制代码代码如下:
[root@localhost root]# vi /var/named/172.18.121.rev
$TTL 86400
@ IN SOA jb51.net. root.jb51.net. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS jb51.net.
35 IN PTR www.jb51.net.
35 IN PTR mail.jb51.net.
35 IN PTR ftp.jb51.net.
配置本机DNS的一个主文件,安装好后它有一个模板,修改它,修改的部分是粗线表示
复制代码代码如下:
[root@localhost root]# vi /etc/named.conf
// generated by named-bootconf.pl
options {
directory "/var/named";
/*
* 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 "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 "jb51.net"IN{
type master;
file "jb51.net";
};
zone "121.18.172.in-addr.arpa"IN{
type master;
file "172.18.121.rev";
};
include "/etc/rndc.key";
"/etc/named.conf" [已转换] 45L, 894C
配置本机的域名转换程序的顺序
复制代码代码如下:
[root@localhost root]# vi /etc/host.conf
order bind,hosts
multi off
trim jb51.net
[root@localhost root]# vi /etc/resolv.conf
nameserver 172.18.121.35
nameserver 218.196.42.2
namedsever 218.196.42.2
domain jb51.net
search www.jb51.net jb51.net
option nochecknames rotate
4.启动named服务.
复制代码代码如下:
[root@localhost root]#service named start
5.检查配置是否成功
复制代码代码如下:[root@localhost root]# nslookup
Note: nslookup is deprecated and may be removed from future releases.
Consider using the `dig' or `host' programs instead. Run nslookup with
the `-sil[ent]' option to prevent this message from appearing.
> www.jb51.net
Server: 172.18.121.35
Address: 172.18.121.35#53
Name: www.jb51.net
Address: 172.18.121.35
> 172.18.121.35
Server: 172.18.121.35
Address: 172.18.121.35#53
35.121.18.172.in-addr.arpa name = ftp.jb51.net.
35.121.18.172.in-addr.arpa name = www.jb51.net.
35.121.18.172.in-addr.arpa name = mail.jb51.net.
>
ctrl +D退出
若出现上面的情况的文字表示已经配置成功.
6.其实在配置的过程中,查看自己是否配置正确可以通过named –g 进行查看你的配置文件到底错在那个地方,再进行修改
PS:DNS相关配置文件说明
. /etc/host.conf
当系统中同时存在DNS域名解析和/etc/hosts主机表机制时,由该/etc/host.conf确定主机名解释顺序。示例:
order hosts,bind #名称解释顺序
multi on #允许主机拥有多个IP地址
nospoof on #禁止IP地址欺骗
order是关键字,定义先用本机hosts主机表进行名称解释,如果不能解释,再搜索bind名称服务器(DNS)。
. /etc/resolv.conf
该文件是DNS域名解析的配置文件,它的格式很简单,每行以一个关键字开头,后接配置参数。resolv.conf的关键字主要有四个,分别是:
nameserver #定义DNS服务器的IP地址
domain #定义本地域名
search #定义域名的搜索列表
sortlist #对返回的域名进行排序
/etc/resolv.conf的一个示例:
domain ringkee.com
search www.ringkee.com ringkee.com
nameserver 202.96.128.86
nameserver 202.96.128.166
最主要是nameserver关键字,如果没指定nameserver就找不到DNS服务器,其它关键字是可选的。
. /etc/hosts
设置IP地址与主机名对应表,可用该文件来进行主机名称解释。如:
#格式:IP地址 主机名 别名
复制代码代码如下:
127.0.0.1 localhost localhost.localdomain
192.168.1.1 debian debian
192.168.0.2 t02 t02.tiger
192.168.0.4 t04 t04.tiger
./etc/name.conf
// generated by named-bootconf.pl
options {
directory "/var/named";
/*
* 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
//
zone "." IN {
type hint;
file "named.ca";
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
这一部分是你安装了bind软件后系统自动产生的named.conf文件的原始内容。“directory”指定了dns记录文件的存放目录是/var/named。“//”开头的文字是说明文字,不用管它。接着的两个“zone”语句定义了dns服务器的根和对应的反向查询域,并指出根的记录文件是“name.ca”,根的反向查询域的记录文件是“named.local”。这两个记录文件也是系统自带的,不用去改动它。named.conf文件的这一部分内容,我们不必去改动它。
但我们可以在“diretory”下添加一行:forwarders {202.96.134.133;}。202.96.134.133是我这里电信的dns服务器的地址,forwarders参数指明了其后的ip所在的服务器作为备选的dns服务器。也就是说,把本机的dns不能解析的主机发送到这个备选的dns服务器上,让它来进行解析。
复制代码代码如下:
zone "jb51.net" IN {
type master;
file "named.jb51.net";
allow-update { none; };
};
zone "0.0.10.in-addr.arpa" IN {
type master;
file "named.jb51.net.rev";
allow-update { none; };
};
这一部分是手工添加的。定义了“jb51.net”这个域和对应的反向查询域。“type master”说明本机是“jb51.net”和“0.0.10.in-addr.arpa”这两个域的主dns服务器(primary name server)。“named.jb51.net”和“named.jb51.net.rev”是域的记录文件。这两个文件也是自己创建的,下面我们就来看看这两个文件。
./var/named/naemd.***.com
资源记录文件,位于/var/named目录下。这个目录是named.conf中定义的。
1、named.jb51.net文件内容如下:
复制代码代码如下:
@ IN SOA netfinity.jb51.net. root.netfinity.jb51.net. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS netfinity.jb51.net.
IN MX 10 netfinity.jb51.net.
netfinity IN A 10.0.0.211
lily IN A 10.0.0.139
www IN CNAME netfinity.jb51.net.
pop3 IN CNAME netfinity.jb51.net.
smtp IN CNAME netfinity.jb51.net.
在这个记录文件中,出现了5种类型的记录。SOA 是授权起始(Start Of Authority)的缩写,后面接着写你的dns服务器的主机名,这里是“netfinity.jb51.net.”。(注意,主机名称后面的小圆点。凡是出现在记录文件了的主机名,记得都要加上这各小圆点。)NS 是名称服务器资源记录,指明域中的名称服务器,这里就是dns服务器。MX是邮件交换者资源记录,指明这个域的邮件服务器。你可以写多个MX记录,指明多个邮件服务器,优先级别由MX后的数字决定,数字越小,邮件服务器优先权越高。A是主机记录,把主机和ip地址对应起来。CNAME是别名记录,它赋予一个主机不同的名称,如www.jb51.net、pop3.jb51.net其实都是指向同一台主机netfinity.jb51.net。
./var/named/naemd.***.com.rev
named.jb51.net.rev文件内容:
复制代码代码如下:
@ IN SOA netfinity.jb51.net. root.netfinity.jb51.net. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS netfinity.jb51.net.
211 IN PTR netfinity.jb51.net.
139 IN PTR lily.jb51.net.
这是“jb51.net”的反向域记录文件,它让dns服务器提供由ip地址查找主机名的服务。PTR记录把ip和主机名对应起来。由于一些程序会要求反向查询,所以反向查询域的记录文件最好不要省略。
到此为止,你已经成功配置了一个dns服务器,它能够解析“jb51.net”这个域了。