实例讲解Linux系统的服务器的DNS相关配置 |
本文标签:Linux,DNS 运行环境redhat 9.0 ,IP地址172.18.121.35,实现的域名为jb51.net 1.安装DNS所要的软件包. 复制代码 代码如下:[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 复制代码 代码如下:[root@localhost root]#service network reload [root@localhost root]#service network restart 通过ifconfig查看IP信息 3.配置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.</p> <p>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
复制代码 代码如下:[root@localhost root]#service named start
复制代码 代码如下:[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 35.121.18.172.in-addr.arpa name = ftp.jb51.net. 6.其实在配置的过程中,查看自己是否配置正确可以通过named –g 进行查看你的配置文件到底错在那个地方,再进行修改 PS:DNS相关配置文件说明
复制代码 代码如下: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</p> <p>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; };</p> <p>// // a caching only nameserver config //</p> <p>zone "." IN { type hint; file "named.ca"; };</p> <p>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.</p> <p>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 。
复制代码 代码如下:@ 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”这个域了 。 |