配置DNS正向解析

目录

 一、 DNS域名解析服务器

1.1域名解析服务器的介绍

1.1.1因特网的域名结构

1.1.2 域名服务器的类型划分

1.2 DNS域名解析过程

 1.3 搭建DNS服务器

1.4实验


 一、 DNS域名解析服务器

1.1域名解析服务器的介绍

 DNS(Domain Name System)是互联网上的一项服务,它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。

 DNS系统使用的是网络的查询,那么自然需要有监听的port。DNS使用的是53端口,在/etc/services(搜索domain)这个文件中能看到。通常DNS是以UDP这个较快速的数据传输协议来查询的,但是没有查询到完整的信息时,就会再次以TCP这个协议来重新查询。所以启动DNS时,会同时启动TCP以及UDP的port53。

1.1.1因特网的域名结构

 由于因特网的用户数量较多,所以因特网在命名时采用的是层次树状结构的命名方法。任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名(domain name)。“域”(domain)是名字空间中一个可被管理的划分。

 域名只是逻辑概念,并不代表计算机所在的物理地点。域名可分为三大类:

 (1)国家顶级域名:采用ISO3166的规定。如:cn代表中国,us代表美国,uk代表英国,等等。国家域名又常记为ccTLD(country code top-level domains,cc表示国家代码contry-code)。

 (2)通用顶级域名:最常见的通用顶级域名有7个,即:com(公司企t业),ne(网络服务机构),org(非营利组织),int(国际组织),gov(美国的政府部门),mil(美国的军事部门)。

 (3)基础结构域名(infrastructure domain):这种顶级域名只有一个,即arpa,用于反向域名解析,因此称为反向域名。

1.1.2 域名服务器的类型划分

 根据域名服务器起的作用,可以把域名服务器划分为以下类型:

(1)根域名服务器:最高层次的域名服务器,也是最重要的域名服务器。所有的根域名服务器都

知道所有的顶级域名服务器的域名和IP地址。不管是哪一个本地域名服务器,若要对因特网上任何

一个域名进行解析,只要自己无法解析,就首先求助根域名服务器。所以根域名服务器是最重要的

域名服务器。假定所有的根域名服务器都瘫痪了,那么整个DNS系统就无法工作。需要注意的是,

在很多情况下,根域名服务器并不直接把待查询的域名直接解析出IP地址,而是告诉本地域名服务

器下一步应当找哪一个顶级域名服务器进行查询。

 (2)顶级域名服务器:负责管理在该顶级域名服务器注册的二级域名。

 (3)权限域名服务器:负责一个“区”的域名服务器。

 (4)本地域名服务器:本地域名服务器不属于域名服务器的层次结构,但是它对域名系统非常重

要。当一个主机发出DNS查询请求时,这个查询请求报文就发送给本地域名服务器。

      为了提高域名服务器的可靠性,DNS域名服务器都把数据复制到几个域名服务器来保存,其中

的一个就是主DNS服务器(Master name server),负责解析至少一个域。其他的是辅助(从)

DNS服务器(Slave name server):负责解析至少一个域,是主DNS服务器的辅助。当主域名服

务器出故障时,辅助域名服务器可以保证DNS的查询工作不会中断。主域名服务器定期把数据复制

到辅助域名服务器中,而更改数据只能在主域名服务器中进行。这样就保证了数据的一致性。

缓存DNS服务器:不负责解析域,只是缓存域名解析的结果。

1.2 DNS域名解析过程

 1、在浏览器中输入www . qq .com 域名,操作系统会先检查自己本地的hosts文件是否有这个网址

映射关系,如果有,就先调用这个IP地址映射,完成域名解析。

2、如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如

果有,直接返回,完成域名解析。

3、如果hosts与本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/IP参数中设置的

首选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包

含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。

4、如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则

调用这个IP地址映射,完成域名解析,此解析不具有权威性。

5、如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设

置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收

到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。

本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。这台负责.com域的服务器收

到请求后,如果自己无法解析,它就会找一个管理qq.com的DNS服务器地址给本地DNS服务器。

当本地DNS服务器收到这个地址后,就会找qq.com域服务器,重复上面的动作,进行查询,直至

找到www . qq .com主机。

6、如果用的是转发模式,本地DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器

进行解析,上一级服务器如果不能解析,或找根DNS或把请求转至上上级,以此循环。找到最后把

结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。

注:从客户端到本地DNS服务器是属于递归查询,而DNS服务器之间使用的交互查询就是迭代查询。

114.114.114.114是国内移动、电信和联通通用的DNS,手机和电脑端都可以使用,干净无广告,

解析成功率相对来说更高,国内用户使用的比较多,而且速度相对快、稳定,是国内用户上网常用

的DNS。

8.8.8.8是GOOGLE公司提供的DNS,该地址是全球通用的,相对来说,更适合国外以及访问国外

网站的用户使用。

DNS解析方式

正向解析:将FQDN----->IP

反向解析:将IP----->FQDN

 1.3 搭建DNS服务器

提供DNS服务的软件叫bind,服务名是named

[root@bogon ~]# yum install bind -y
[root@bogon ~]# rpm -ql bind
/etc/named.conf        # bind主配置文件
/etc/named.rfc1912.zones   # 定义zone的文件
/etc/rndc.conf        # rndc配置文件
/usr/sbin/named-checkconf   # 检测/etc/named.conf文件语法
/usr/sbin/named-checkzone   # 检测zone和对应zone文件的语法
/usr/sbin/rndc        # 远程dns管理工具
/usr/sbin/rndc-confgen    # 生成rndc密钥
***\*/var/named/named.ca      #\**** ***\*根解析库\****
/var/named/named.localhost  # 本地主机解析库
/var/named/slaves       # 从ns服务器文件夹

[root@bogon ~]# vim /etc/named.conf 
options {
定义监听端口,如果所有地址都监听,则只写端口
    listen-on port 53 { 127.0.0.1; };
    listen-on-v6 port 53 { ::1; };
定义数据文件目录
    directory    "/var/named";
    dump-file    "/var/named/data/cache_dump.db";
    statistics-file "/var/named/data/named_stats.txt";统计档案、文件
    memstatistics-file "/var/named/data/named_mem_stats.txt";分配统计目录
    allow-query   { localhost; };只允许本地主机进行查询
     recursion yes;允许递归
logging {
指定日志记录分类和他们的目标位置
    channel default_debug {
        file "data/named.run";
        severity dynamic;
    };
};

zone "." IN {
定义区域
    type hint;
    file "named.ca";
};
包含其他的配置文件
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

1.4实验

配置dns正向解析
规划:
192.168.xxx.xxx dns1.abc.com主域名服务器(注意为真实的IP)
172.16.0.253 dns2.abc.com从域名服务器
172.16.0.100 fileserver.abc.com文件服务器
172.16.0.101 printserver.abc.com打印服务器
172.16.0.200 www.abc.com网站服务器
172.16.0.201 www.abc.com网站服务器
172.16.0.25 mail.abc.com邮件服务器
172.16.0.22 ntp.abc.com时间服务器

关闭防火墙和设置seliux为disabled,虚拟机一台,本实验用的为roots(192.168.139.128)

下载bind

[root@bogon ~]# yum install bind -y

编辑/etc/named.conf文件

[root@bogon ~]#  vim  /etc/named.conf

编辑以下内容:

(1) 修改解析的主机为自己并且允许的用户为139网段的所有人

options {
        listen-on port 53 { 192.168.139.128; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        secroots-file   "/var/named/data/named.secroots";
        recursing-file  "/var/named/data/named.recursing";
        allow-query     {192.168.139.128/24 ; };

(2)修改区域配置文件,添加正向区域配置

zone "abc.com" IN{               #正向解析abc.com区域
        type master;             #类型为主区域服务器配置
        file "abc.zone";         #指定区域解析文件为abc.zone
        };

进入到/var/named下

[root@bogon ~]# cd /var/named

创建并进去abc.zone文本

$TTL 1D
@ IN SOA dns1.abc.com. test.163.com (
                                0       ;serial            #序列号,主从同步序列号越大代表越新
                                1D      ;refresh           #刷新时间
                                1H      ;retry             #请求dns请求不到重试时间间隔
                                1w      ;expire            #和主dns连接不上的时候,失效时间不在请求
                                3H )    ;minimum           #最小的刷新时间
   IN NS dns1.abc.com.
   IN MX 10 mail.abc.com.
dns1.abc.com.            IN A 192.168.80.1
dns2.abc.com.           IN A 172.16.0.253
fileserver.abc.com.    IN A 172.16.0.100
printserver.abc.com.     IN A 172.16.0.101
www.abc.com.            IN A 172.16.0.200
www.abc.com.            IN A 172.16.0.201
mail.abc.com.           IN A 172.16.0.25
ntp.abc.com.            IN A 172.16.0.22   
;CNAME: www,abc.com. -> web.abc.com.            
web IN CNAME www                                            #别名:web.abc.com

启动服务

[root@bogon named]# systenctl restart named

测试:

 nslookup dns1.abc.com 192.168.139.128

nslookup dns2.abc.com 192.168.139.128

nslookup fileserver.abc.com 192.168.139.128

nslookup printserver.abc.com 192.168.139.128

nslookup www.abc.com 192.168.139.128

nslookup www.abc.com 192.168.139.128

nslookup mail.abc.com 192.168.139.128

nslookup ntp.abc.com 192.168.139.128

[root@localhost ~]nslookup dns1.abc.com 192.168.139.128
Server:       192.168.139.128
Address:      192.168.139.128#53

Name:  dns1.abc.com
Address:  192.168.139.128

[root@localhost ~]nslookup dns2.abc.com 192.168.139.128
Server:       192.168.139.128
Address:      192.168.139.128#53

Name:  dns2.abc.com
Address:  172.16.0.253

[root@localhost ~]nslookup fileserver.abc.com 192.168.139.128
Server:       192.168.139.128
Address:      192.168.139.128#53

Name:  fileserver.abc.com
Address:  172.16.0.100

[root@localhost ~]nslookup printserver.abc.com 192.168.139.128
Server:       192.168.139.128
Address:      192.168.139.128#53

Name:  printserver.abc.com
Address:  172.16.0.101

完成

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值