当前位置:   article > 正文

DNS域名解析

dns域名解析

DNS域名解析

引言:本文主要讲述三个实验:

  • DNS正向解析实验
  • DNS反向解析实验
  • DNS主从服务器实验

一、DNS域名系统

1、DNS概念

​ DNS定义:DNS是域名系统。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。

​ 分布式网络存储技术是将数据分散地存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,解决了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性、可用性和扩展性。

2、DNS系统的作用

  • 正向解析:根据域名查找对应的IP地址
  • 反向解析:根据IP地址查找对应的域名

3、DNS使用的协议及端口号

  • DNS的默认端口号为53, DNS端口分为TCP和UDP。
(1)TCP是用来做区域传送,多用于主从同步

在一个区中主DNS服务器从自己本机的数据文件中读取该区的DNS数据信息,而辅助DNS服务器则从区的主DNS服务器中读取该区的DNS数据信息。

(2)UDP是用来做DNS解析

域名:通常由一个完全合格域名(FQDN)标识。FQDN全称 Fully Qualified Domain Name,它能准确表示出其相对于DNS域树根的位置,也就是节点到DNS树根的完整表述方式,从节点到树根采用反向书写,并将每个节用 “.” 分隔,对于DNS域google来说,其完全正式域名(FQDN)为google.com。

4、域名体系结构

  • 根域:位于树状结构最顶层,用"."表示。
  • 顶级域:一般代表一种类型的组织机构或国家地区;如.net网络供应商、.com工商企业、.org团体组织、.edu教育结构、.gov政府部门、.cn中国国家域名。
  • 二级域:用来标明顶级域内的一个特定的组织,国家顶级域下面的二级域名由国家部门统一管理。
  • 子域:二级域下所创建的各级域统称为子域,各个组织或用户可以自由申请注册自己的域名。
  • 主机:主机位于域名空间最下层,就是一台具体的计算机,域名与IP地址之间是多对一的关系,一个IP地址不一定只对应一个域名,且一个域名只可以对应一个IP地址。

在这里插入图片描述

5、两种查询方式

(1)递归查询

递归查询是一种DNS服务器的查询模式,在该模式下DNS服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果 DNS服务器本地没有存储查询DNS信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。

小结:就是客户机发送请求后自己只用等待结果即可,中间具体过程交给服务器实现。

(2)迭代查询

DNS服务器另外一种查询方式为迭代查询,当客户机发送查询请求时,DNS服务器并不直接回复查询结果,而是告诉客户机另一台 DNS服务器地址,客户机再向这台DNS服务器提交请求,依次循环直到返回查询的结果为止。

小结:客户机的请求需要自己挨个去查询才能得到结果,服务器没有结果时候只会给你提供其它服务器的地址,而不会帮你去请求查询,这与递归截然相反。

二、DNS解析过程

思路: 这道题考察的知识点是DNS域名解析,http请求的过程,是涉及到DNS域名解析的,这道面试题也挺经典的。

DNS,英文全称是domain name system,域名解析系统,是Internet上作为域名和IP相互映射的一个分布式数据库。它的作用很明确,就是可以根据域名查出对应的IP地址。在浏览器缓存、本地DNS服务器、根域名服务器都是怎么查找的。
在这里插入图片描述
假设你要查询www.baidu.com的IP地址:

(1)首先会查找浏览器的缓存,看看是否能找到www.baidu.com对应的IP地址,找到就直接返回,否则进行下一步。
(2)将请求发往给本地DNS服务器,如果查找到也直接返回,否则继续进行下一步。
(3)本地DNS服务器向根域名服务器发送请求,根域名服务器返回负责.com的顶级域名服务器的IP地址的列表。
(4)本地DNS服务器再向其中一个负责.com的顶级域名服务器发送一个请求,返回负责.baidu的权威域名服务器的IP地址列表。
(5)本地DNS服务器再向其中一个权威域名服务器发送一个请求,返回www.baidu.com所对应的IP地址。

三、bind的安装和配置

1、bind服务

bind的配置文件位置
  • 主要执行程序:/usr/sbin/named
  • 默认监听端口:53
  • 主配置文件:/etc/named.conf
  • 保存DNS解析记录的数据文件位于:/var/named/

2、DNS正向解析实战

(1)yum  install  -y  bind   ##安装bind
  • 1

在这里插入图片描述
(2)查看需要修改的配置文件所在的路径

rpm -qc bind                   #查询bind软件配置文件所在路径
/etc/named.conf                #主配置文件
/etc/named/rfc1912.zonrs       #区域配置文件
/var/named/named.localhost     #区域数据配置文件
  • 1
  • 2
  • 3
  • 4

(3)修改主配置文件

vim /etc/named.conf

options {
  listen-on-v6 poet 53 { 192.168.10.130; };              #监听53端口,IP地址使用提供服务的本地IP,也可用any代表所有
#   listen-on-v6 port 53 { : :1; };                      #ipv6行如不使用可以注释掉或者删除
  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
  { any; };                                      #允许使用本DNS解析服务的网段,也可用any代表所有
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

在这里插入图片描述
(4)修改区域配置文件,添加正向区域配置

vvim /etc/named.rfc1912.zones     ##修改区域配置文件,添加正向区域配置
zone "zhantai.com" IN {          ##正向解析"zhantai.com"区域
	type master;                 ##类型为主区域
	file "zhantai.com.zone";     ##指定区域数据文件为zhantai.com.zone
	allow-update { none; };
};
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述
(5)配置正向区域数据文件

cd /var/named/   ##切换到目录
cp -p named.localhost zhantai.com.zone    ##备份
vim /var/named/zhantai.com.zone  ##修改正向区域数据配置文件
$TTL 1D
@	IN SOA	@ zhantai.com. (       ##SOA是初始记录   @是当前域名
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	zhantai.com.                   ##记录当前区域的DNS服务器的名称
	 A	192.168.10.130                 ##记录主机IP地址
www  IN  A      192.168.10.133         ##记录正向解析www.baidu.com对应的IP
mail IN  A      192.168.10.134         ##邮箱的正向解析地址
vim /etc/resolv.conf			    #修改完后立即生效
nameserver 192.168.10.130        ##将主机IP设置为dns服务器地址
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

在这里插入图片描述
(6)关闭防火墙,关闭核心防护,启动服务

systemctl stop firewalld
setenforce 0        
systemctl start named
tail -f /var/log/ message #如果服务启动失败,可以查看日志文件来排查错误
 
rndc-confgen -r /dev/urandom -a          #如果服务启动卡住,可以执行此命令解决
[root@Client ~]# nslookup www.zhantai.com      ##验证
Server:		192.168.10.130
Address:	192.168.10.130

Name:	www.zhantai.com
Address: 192.168.10.133
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

在这里插入图片描述
在这里插入图片描述
(7)检查配文文件

named-checkconf -z "$NAMEDCONF"     ##检查配置文件
  • 1

在这里插入图片描述

3、DNS反向解析实战

(1)修改区域配置文件,添加反向区域配置

vim /etc/named.rfc1912.zones  ##修改区域配置文件,添加反向区域配置
zone "10.168.192.in-addr.arpa" IN {
	type master;
	file "zhantai.com.test";
	allow-update { none; };
};
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述
(2)备份指定区域数据配置文件,编辑指定区域数据配置文件

cp -a zhantai.com.zone zhantai.com.test  ##备份
 vim zhantai.com.test 
$TTL 1D
@	IN SOA  @  zhantai.com. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	zhantai.com.
	 A      192.168.10.130
133  IN  PTR     www.zhantai.com.
134  IN  PTR     mail.zhantai.com. 

#####PTR:方向指针,反向解析的意思
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

在这里插入图片描述
(3)重启服务并测试DNS服务

systemctl restart named   ##重启服务
[root@Client ~]# nslookup 192.168.10.133
Server:		192.168.10.130
Address:	192.168.10.130#53

133.10.168.192.in-addr.arpa	name = www.zhantai.com.
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述

4、主从服务器实战

实验环境:

  • 主服务器Server:192.168.10.130
  • 从服务器Client:192.168.10.132

(1)首先把从服务器DNS地址也配到主服务器上,再配置主服务器主配置文件、重启服务

vim /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.10.130
nameserver 192.168.10.132    ##把从服务器DNS地址配到主服务器上
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

vim /etc/named.rfc1912.zones    ##修改区域配置文件,添加主配置文件,这里要把之前做的正反向的解析文件删除,不然会报错
zone "zhantai.com" IN {
	type master;
	file "zhantai.com.zone";
	allow-transfer { 192.168.10.132; };
};

zone "10.168.192.in-addr.arpa" IN {
	type master;
	file "zhantai.com.test";
	allow-transfer { 192.168.10.132; };
};
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

在这里插入图片描述
(2)在Clien机子需要装bind软件服务

 yum install -y bind
  • 1

在这里插入图片描述
(3)修改主配置文件

vim /etc/named.conf     ##修改主配置文件
options {
        listen-on port 53 { any; };
        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     { any; };
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

在这里插入图片描述
(4)修改区域配置文件,添加从配置文件

vim /etc/named.rfc1912.zones    ##修改区域配置文件,添加从配置文件
zone "zhantai.com" IN {
	type slave;
	file "slaves/zhantai.com.zone";
	masters { 192.168.10.130; };
};
zone "10.168.192.in-addr.arpa" IN {
	type slave;
	file "slaves/zhantai.com.test";
	masters { 192.168.10.130; };
};
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

在这里插入图片描述
(5)关闭防火墙、核心防护,重启服务

systemctl stop firewalld
setenforce 0        
systemctl start named
  • 1
  • 2
  • 3

在这里插入图片描述
(6)查看是否备份成功

[root@Client ~]# cd /var/named/
[root@Client named]# ls
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves
[root@Client named]# cd slaves/
[root@Client slaves]# ls
zhantai.com.test  zhantai.com.zone
[root@Client slaves]# 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

在这里插入图片描述

总结

此章节主要讲述bind域名服务基础,包括概念、作用、协议及端口号,还有域名体系结构,递归和迭代查询,服务器的类型等等。详细讲述DNS的正向解析、反向解析、主从服务三个个实验。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/264174
推荐阅读
相关标签
  

闽ICP备14008679号