DNS的认识及实验

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DNS的认识及实验相关的知识,希望对你有一定的参考价值。

1、什么是DNS?

DNS(Domain Name System,域名系统)应用层协议,因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。在RFC文档中RFC 2181DNS有规范说明,RFC 2136DNS的动态更新进行说明,RFC 2308DNS查询的反向缓存进行说明。

2、DNS的功能

因为每个IP地址都可以有一个主机名,主机名由一个或多个字符串组成,字符串之间用小数点隔开。有了主机名,就不要死记硬背每台IP设备的IP地址,只要记住相对直观有意义的主机名就行了。这就是DNS协议所要完成的功能。

3、DNS的域名结构

技术分享

常见的顶级域名:.com、.cn.top.net.org.gov.edu.

.com:表示商业机构

.cn:表示中国国家域名

.top:表示高端,顶级,事业突破,国际通用域名

.net:表示网络服务机构

.org:表示非营利性组织

.gov:表示政府机构

.edu:表示教育机构

4、DNS服务器类型

主DNS服务器、从DNS服务器、缓存DNS服务器(转发器)

① 主DNS服务器:管理和维护所负责解析的域内解析库的服务器

② 从DNS服务器:从主服务器或从服务器“复制”(区域传输)解析库副本

5、DNS的重要性

① 技术角度看

        DNS解析是互联网绝大多数应用的实际寻址方式; 域名技术的再发展、以及基于域名技术的多种应用,丰富了互联网应用和协议。

② 资源角度看

    域名是互联网上的身份标识,是不可重复的唯一标识资源; 互联网的全球化使得域名成为标识一国主权的国家战略资源。

6、DNS服务器上的资源记录

    在Windows平台下,使用命令行工具,输入nslookup,返回的结果包括域名对应的IP地址(A记录)、别名(CNAME记录)等。除了以上方法外,还可以通过一些DNS查询国内 查询域名的DNS信息。

常用的资源记录类型

A 地址此记录列出特定主机名的 IP 地址这是名称解析的重要记录。

CNAME 标准名称此记录指定标准主机名的别名。

MX邮件交换器此记录列出了负责接收发到域中的电子邮件的主机。

NS名称服务器此记录指定负责给定区域的名称服务器。

7、DNS配置实验

技术分享 

实验的目标:DNS客户端(172.17.251.178)能正常访问DNS服务器(172.17.0.109)。

注意:整个实验前首先要关闭SELinux和iptables

[[email protected] ~]#getenforce

Permissive

[[email protected] ~]#iptables -F

配置步骤:

(1) 首先创建www网页,以便客户端的访问

1 yum install httpd

  service httpd restart

2vim /var/www/html/index.html

<h1>Test www</h1>

(2) 创建主DNS

1 yum install bind

systemctl start named

2vim /etc/named.conf

//      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; };
        allow-transfer  { 172.17.252.6; };//从DNSIP
dnssec-enable no;
 dnssec-validation no;

3vim /etc/named.rfc1912.zones

zone "mage.com" IN {
        type master;
        file "mage.com.zone";
};

4vim /var/named/mage.com.zone

$TTL 1D
@       IN SOA  dns1  mail.mage.com.  (
                                        2017101000      ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       NS      dns1
@       NS      dns2
dns1     A      172.17.254.76
dns2     A      172.17.252.6
www     CNAME   websrv
websrv   A      172.17.37.106

chgrp named /var/named/mage.com.zone

5rndc reload

6测试dig www.mage.com @172.17.254.76

技术分享

(3) 创建从DNS

1 yum install bind

systemctl start named

2vim /etc/named.conf

//      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; };
        allow-transfer  { none; };
dnssec-enable no;
dnssec-validation no;

3vim /etc/named.rfc1912.zones

zone "mage.com" IN {
        type slave;
 masters {172.17.254.76;};//主DNSIP
        file "slaves/mage.com.zone.slave";
};

4rndc reload

5测试dig www.mage.com @172.17.252.6

技术分享

(4) 创建com

1 yum install bind

systemctl start named

2vim /etc/named.conf

//      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;
dnssec-enable no;
dnssec-validation no;

3vim /etc/named.rfc1912.zones

zone "com" IN {
        type master;
        file "com.zone";                                                        
};

4vim /var/named/com.zone

$TTL 1D
@       IN SOA  dns1  mail.ma.com.  (
                                        00      ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
           NS      dns1
mage       NS      dns2
mage       NS      dns3
dns1     A      172.17.250.83
dns2     A      172.17.254.76
dns3     A      172.17.252.6

5rndc reload

6测试dig www.mage.com @172.17.250.83

技术分享

(5) 创建根域

1 yum install bind

systemctl start named

2vim /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;
dnssec-enable no;
dnssec-validation no;
zone "." IN {
        type master;
        file "root.zone";
};

3 vim /var/named/root.zone

$TTL 1D
@       IN SOA  dns1  mail.ma.com.  (
                                        00      ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@         NS      dns1
com       NS      dns2
dns1     A      172.17.251.173
dns2     A      172.17.250.83

4rndc reload

5dig www.mage.com @172.17.251.173

技术分享

(6) 1 yum install bind

systemctl start named

2vim /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;
 dnssec-enable no;
 dnssec-validation no;

3vim /var/named/named.ca

.                        3600000      NS    A.ROOT-SERVERS.NET.
A. ROOT-SERVERS.NET.      3600000      A     172.17.251.173

4rndc reload

5dig www.mage.com @127.0.0.1

技术分享 

(7) 配置客户端

1vim /etc/resolv.conf

; generated by /sbin/dhclient-script
search magedu.com
#nameserver 172.17.0.1
nameserver 172.17.253.49

2测试ping www.mage.com

技术分享

[[email protected] ~]# firefox www.mage.com

技术分享

    到此,该DNS转发的实验就成功完成了,如果有什么错误大家可以联系我哦!

以上是关于DNS的认识及实验的主要内容,如果未能解决你的问题,请参考以下文章

dns搭建及实验

搭建DNS主从服务器实现反向解析,子域,转发,智能DNS及排错和互联网DNS架构实验

DNS与HTTP原理及配置

第二次实验报告:对应用层协议的认识

小型公司网络组建及WEB服务配置及DNS解析

DNS Prefetch初认识