一、了解DNS相关概念
DNS是一个分布式数据库,在本地负责控制整个分布式数据库的部分段,每一段中的数据通过客户机/服务器模式在整个网络上存取。通过采用复制技术和缓存技术使得整个数据库稳定可靠的同时,又拥有良好的性能。
DNS服务器即运行DNS服务器程序的计算机,它储存了DNS数据库信息。DNS服务器将尝试解析客户机的查询请求。在解答查询时,如果DNS服务器能提供所请求的信息。就直接回应解析结果,如果该DNS服务器没有对应的域名信息,则为客户机提供另一个能帮助解析查询的服务器地址。如果以上两种请求均失败,则回应客户机没有所请求的信息或请求的信息不存在。
DNS服务器的主要作用就是维护一个计算机名与IP地址的对应关系数据库,主要为客户端网络程序提供以下两个方面的解析功能:
正向解析:将计算机名称解析为对应的IP地址。
逆向解析:将计算机的IP地址解析为对应的域名。
二、DNS查询方法
递归查询
迭代查询
三、DNS服务器安装
1、BIND:它是一款实现DNS服务器的开放源码软件,包括下面三个部分:
DNS服务器
DNS解析库
测试服务器的软件工具
2、使用RPM方式安装bind包
1) BIND域名相关的主要软件包如下:
bind-9.2.0-8.i386.rpm(BIND服务器软件包)
caching-nameserver-7.2-1.noarch.rpm(DNS高速缓存服务器软件包)
bind-utils-9.2.0-8.i386.rpm(DNS测试程序软件包)
bind-chroot-9.3.3.7.e15.i386.rpm (为bind提供伪装的根目录,以增强安全性 奖/var/named.chroot目录作为BIND的根目录)
2)进入到Media的DVD的Server目录下,find 命令很容易找到三个软件包
rpm -ivh命令安装
3)BIND服务控制:
service service-name start/stop/restart/status
四、BIND的简单配置
1、主配置文件
/etc/named.conf 用于设置DNS全局参数,指定区域文件名称及其保存路径
/var/named/named.ca 指向根域名服务器,用户高速缓存服务器的初始配置
正向和反向区域数据文件保存路径都必须是/var/named目录
1)首先在/etc目录下创建主配置文件named.conf :
touch /etc/named.conf
2)编辑主配置文件:
options { #options 语句定义全局参数,只能在配置文件中出现一次。 directory "/var/named"; #设置named要读写数据文件的路径。directory选项定义了DNS区域数据文件的路径,配置文件中后续的语句如果只指定文件名没有给出路 #径,则默认此路径。 allow-query {any ;}; #允许任何客户端的查询请求 }; zone "." IN { #创建根区域 type hint; #设置根区域的服务器类型为高速缓存服务器,当服务器启动的时候,能找到根DNS服务器并得到它的最新列表。 file "named.ca" #指定根区域的数据文件名称为"named.ca",包括了internet上的根服务器的对应IP地址。BIND根据该文件得到根服务器的IP地址。 }; zone "sina.com" IN { #创建正向解析区域 type master; #主服务器 file "sina.com.zone"; #指定正向解析区域的数据文件名称为 "sina.com.zone" allow-update {none; }; # }; zone "122.168.192.in-addr.arpa" IN { #创建反向解析区域 type master; #主服务器 file "122.168.192.in-addr.arpa.zone"; #指定反向解析区域的数据文件名称为 "122.168.192.in-addr-arpa.zone" allow-update {none; }; # };
2、获取根区域数据文件:
touch /var/named/named.ca
dig > /var/named/named.ca (获取根DNS服务器目录并写入named.ca)
可以使用cat /var/named/named.ca命令查看文件内容
3、获取并编辑正向区域数据文件
touch /var/named/sina.com.zone
vi /var/named/sina.com.zone
编辑:
$TTL 86400 #生存周期,表示解析的地址在数据库中缓存的时间 @ IN SOA dns.sina.com. root ( #@表示本域 SOA表示其实授权记录 dns.sina.com.表示本区域的授权域名服务器,应是本区 #域的域名服务器的完全合格域名 42 ; serial (d. adams) (序列号) 3H ; refresh (3小时更新) 15M ; retry (15分钟重试) 1W ; expiry (1周)从服务器上数据保存的最长时间 1D ; minimum (1天) ) @ IN NS dns.sina.com. #本区域的DNS服务器的完全合格域名 dns.sina.com. IN A 192.168.0.8 #计算机主机域名和IP地址的绑定 game IN A 192.168.0.8
4、获取并编辑反向区域数据文件:
touch /var/named/122.168.192.in-addr.arpa.zone
vi /var/named/122.168.192.in-addr.arpa.zone
$TTL 86400 @ IN SOA dns.sina.com. root ( 42 200000 14400 360000 86400 ) @ IN NS dns.sina.com. 8 IN PTR dns.sina.com. 2 IN PTR game.sina.com
五、DNS服务的简单测试
1、为计算机指定DNS服务器
vi /etc/resolv.conf
修改nameserver 192.168.122.1
2、service named restart
3、nslookup
输入匹配的主机域名或者IP测试。
*****第一次配置的时候,顺手把chroot安上了...然后.../etc和/var的配置文件就失效了...然后...惨淡的教训..
*****反向解析一直失败....持续失败......
吼吼...
再次被qu大神解救...
反向解析区域的文件名全部改成这个...122.168.192.in-addr.arpa.zone..应该是固定格式的吧...
然后测试该文件里绑定的IP ,如果是dns.sina.com.就会出现这个域名,如果是game.sina.com就会是game.sina.com.122.168.192.in-addr.arpa.zone这么奇怪的域名呢....
讲道理应该是会加好看的后缀而不是这么奇怪的吧...