1、域名系域名系统(DNS)1.概述概述DNSDNS用于用于“名称名称IP地址地址”早期用Hosts文件,但存在一些缺点.DNS(域名系统)是一种基于分布式的数据库系统,并采用客户/服务器模式进行主机名称与IP地址之间的转换。1.2.DNS域名结构 DNS数据库的结构如同一棵倒过来的树,它的根位于最顶部 2.因特网的名字空间 com net org edu gov milcoopbizinfoaeroint cnukhkjsshbjorg net gov edu com acpkufudansjtutsinghua树根cctvibmhpmot顶级域名二级域名三级域名mailep四级域名mail c
2、snetlseu3.顶级域名常见的有两类:(1)国家级顶级域名。例如:CN表示中国;UK表示英国等等。(2)通用的顶级域名。lCOM:商业机构;lEDU:美国教育机构;lNET:网络管理机构;lORG:社会团体;lMIL:美国军队部门;lGOV:美国政府部门。4.由于Internet上用户的急剧增加,现在又增加了七个通用的顶级域名,即:FIRM:表示公司企业;SHOP:表示销售公司和企业;WEB:表示突出万维网络活动的单位;ARTS:表示突出文化、娱乐活动的单位;REC:表示突出消遣、娱乐活动的单位;INFO:表示提供信息服务的单位;NOW:表示个人。5.在国家顶级域名下注册的二级域名均由该国
3、家自行确定。我们国家将二级域名划分为“类别域名”和“行政区域名”两大类。其中,类别域名6个,分别是:AC:表示科研机构;COM:表示工、商、金融等企业;EDU:表示教育机构;GOV:表示政府部门;NET:表示互联网络、接入网络的信息中心和运行中心;ORG:表示各种非赢利性组织。6.行政区域名34个,适用于我国的省、自治区、直辖市。例如:bj为北京市;sh为上海市;hb为湖北省等等。7.3.DNS域名解析的工作原理域名解析的工作原理(1)DNS客户机提出域名解析请求,并将该请求发送给本地的域名服务器。(2)当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该记录项,则本地的域名服务器就直接
4、把查询的结果返回。(3)如果本地的缓存中没有该记录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址。(4)本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该记录,则返回相关的下级的域名服务器的地址。(5)重复第四步,直到找到正确的记录。(6)本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户机。8.DNS服服务器的器的类型型主域名服务器(Master Server)辅助域名服务器(Slave Server)缓存域名服务器(Caching Only
5、 Server)转发服务器(Forwarder Server)目前Linux系统中使用的DNS服务器软件是BIND(Berkeley Internet Name Domain,伯克利Internet域名系统)。利用BIND软件,可建立如下几种类型的DNS服务器:9.DNS服服务器的配置器的配置1.DNS服服务器的启器的启动与停止与停止在进行DNS服务器配置之前,首先要检查系统中是否安装了BIND域名服务器,检查的方法可使用下面的命令:#rpm qa|grep bind10.(1)首先挂载安装盘,从第1张盘上找到如下rpm包:/RedHat/RPMS/caching-nameserver-7.3
6、-3.noarch.rpm 从第2张盘和第4张盘上找到如下rpm包:/mnt/cdrom/RedHat/RPMS/bind-libs-9.2.4-2.i386.rpm /mnt/cdrom/RedHat/RPMS/bind-utils-9.2.4-2.i386.rpm /mnt/cdrom/RedHat/RPMS/bind-9.2.4-2.i386.rpm /mnt/cdrom/RedHat/RPMS/bind-chroot-9.2.4-2.i386.rpm /mnt/cdrom/RedHat/RPMS/bind-devel-9.2.4-2.i386.rpm11.(2)将上述软件包先复制到系统
7、某个目录下,然后再通过如下命令安装到系统中:rootrhel4#rpm -ivh bind*.rpmrootrhel4#rpm -ivh caching-server*.rpm 以上是在命令行界面下的安装方法。在图形界面下安装则更为方便,可以单击【应用程序】|【系统设置】|【添加/删除应用程序】菜单命令,然后按照系统提示放入适当的安装光盘即可。12.可使用下面的命令来对BIND域名服务器进行启动和停止。#service named start#service named stop#service named restart 13.2.启启动域名服域名服务器的配置工具器的配置工具启动 Bind
8、配置工具,可使用以下两种方法:(1)单击面板上的“主菜单系统设置服务器设置域名服务”。(2)在 shell 提示(如 XTerm 或 GNOME 终端)下,键入 redhat-config-bind 命令。14.3.正向主区正向主区块配置配置1.1.正正向向主主区区块配配置置主主要要的的作作用用是是进行行从从域域名名到到IP地址的地址的转换。其。其设置步置步骤如下:如下:15.16.17.18.4.反向DNS服务器的配置 19.4.反向DNS服务器的配置 20.在Windows中DNS客户端的设置方法 21.在Windows中DNS客户端的设置方法 22.在Linux中DNS客户端的设置方法
9、23.3.测试DNS服服务器器 当DNS服务器配置完成之后,要想在客户端对其进行测试,必须首先使用下面的命令来重新启动DNS服务器:#service named restart 24.主配置文件主配置文件named.conf/etc/named.conf文件说明DNS服务器的全局参数,由多个BIND配置命令所组成,每个配置命令后是参数和用大括号括起来的配置子句块,各配置子句也包含相应的参数,并以分号结束,其语法类似于C语言。named.conf文件中最常用的配置语句有两个:options语句和zone语句。25.options语句 option语句定义全局配置选项,在named.conf文件中
10、只能使用一次。其基本格式为:options 配置子句;在BIND文档中有完整的options配置选项清单,其中最常用的有:directory “目录路径名”:定义区域数据库文件的保存路径,默认为/var/named,一般不需要修改。forwarders IP地址表;列出本地DNS服务器不能解析的域名查询请求被转发给哪些服务器,这对于使用DNS服务器连接到Internet的局域网很有用。此选项也可以设置在转发区域条目中。26.zone语句 zone语句用于定义DNS服务器所服务的区域,其中包括区域名、区域类型和区域文件名等信息。zone语句的基本格式为:zone “区域名”IN type 子句;
11、file 子句;其他配置子句;区域名:根域名用“.”表示,除根域以外,通常每个区域都要指定正向区域名和反向区域名。正向区域名形如“”,为合法的Internet域名;反向区域名形如“1.168.192.in-addr.arpa”,由网段IP地址(192.168.1.0/24)的逆序形式加“in-addr.arpa”扩展而成,其中arpa是反向域名空间的顶级域名,in-addr是arpa的一下级域名。27.类型说明master主DNS区域,指明该区域保存主DNS服务器信息slave辅助DNS区域,指明需要从主DNS服务器定期更新数据stub存根区域,与辅助DNS区域类似,但只保留DNS服务器的名字
12、forward转发区域,将任何DNS查询请求重定向到转发语句所定义的转发服务器hint提示区域,提示Internet根域名服务器的名称及其对应的IP地址file子句:指定区域数据库文件的名称,应在文件名两边使用双引号type子句:说明区域的类型区域类型可以从master、slave、stub、forward和hint中选择.28.与域名解析相关的文件与域名解析相关的文件1/etc/hosts /etc/hosts是本地主机数据库文件,也是DNS服务器软件的雏形。在DNS出现以前,应用程序通过hosts文件来进行主机名到网络地址、或网络地址到主机名的转换。利用hosts文件通信的主机都应该包含相
13、同的记录,即所有主机都应该包含相同的hosts文件。目前,在系统中仍然可以看到hosts文件,但一般也仅限于本机解析回环地址使用,或少数几台主机通信。下面是hosts文件的主要内容:127.0.0.1 localhost.localdomain localhost一般情况下,hosts文件中只包含这一条记录。需要注意的是不要删除该记录,因为有的网络服务要用到该条记录,删除它会导致某些网络服务不能正常运行。29.2/etc/host.conf /etc/host.conf是解析器配置文件,用于指定使用解析库的方式,一般情况下包含如下一条指令:order hosts,bind 关键字order用来
14、指明主机域名的查询顺序,本例为先在/etc/hosts文件中查询,如果未找到,再利用DNS查询。30.3/etc/resolv.conf /etc/resolv.conf是DNS客户端的配置文件,主要用来指定所采用的DNS服务器的IP地址和本机的域名后缀。典型的resolv.conf文件内容如下:search nameserver 192.168.1.1 nameserver 192.168.1.2 关键字search用来指定本机的域名后缀,nameserver用来指定DNS服务器的IP地址,其中第一个nameserver指定的是首选DNS的IP地址。31.假设需要配置一个符合下列条件的主域名服务器:(1)域名为,网段地址为192.168.10.0/24。(2)主域名服务器的IP地址为192.168.10.10,主机名为。(3)需要解析的服务器包括:(192.168.10.11),(192.168.10.12),(192.168.10.13)。32.配置过程如下:1配置文件/etc/named.conf2配置正向区域数据库文件3配置反向区域数据库文件4配置本机反向区域文件5启动DNS服务6测试DNS服务33.