Linux中DNS域名解析服务及实验

一、DNS介绍

1、DNS

是域名系统,应用层协议,是互联网的一项服务,是将域名转换成网络可以识别的IP地址,再通过IP地址访问主机。这种由文字组成的名称更容易记忆。

DNS是"域名系统"的英文缩写。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS服务使用TCP和UDP的53端口,TCP的53端口用于连接DNS服务器,UDP的53端口用于解析DNS。每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

2、DNS系统的作用

①正向解析:根据域名查找对应的ip地址

②反向解析:根据IP地址查看对应的域名

③DNS系统的分布式数据结构

3、域名结构

一层是根域

二层是顶级域也就是一级域

三层是二级域

四层是子域

五层是主机名或者三级域

4、DNS的完整过程

第一步:先去查看本机的hosts文件,如果有直接访问hosts文件里的IP地址,没有去找缓存服务器

第二步:缓存服务器有,直接反馈结果给用户,缓存没有,就要迭代查询,直接找根域服务器

第三步:由于根域服务器只能解析根,无法解析www.baidu.com但是根域服务器让你去找一级服务器。

第四步:一级域发现自己也解析不了,会让你找二级域

第五步:二级域发现这台服务器在自己的管理范围内,直接反馈结果给缓存服务器

第六步:缓存服务器再交给客户

5、迭代查询和递归查询

①迭代查询:不给结果只给相关信息,需要自己动手

②递归查询:直接反馈结果,不需要自己动手

6、打开网页要经历的过程

①先经历DNS域名解析将浏览器和服务器接口建立连接

②然后建立TCP连接经历三次握手

③然后通过http协议进行访问

④然后进行四次握手断开TCP连接

7、DNS的服务器的类型

1、缓存域服务器:

①也叫DNS高速缓存服务器

②通过向其他域名服务器查询获得域名--IP地址记录

③将域名查询结果缓存到本地,提高重复查询时的进度

2、主域名服务器

①特定的DNS服务器,具有唯一性

②负责维护该区域内所有域名--IP地址的映射文件

③需要自行建立所负责的地址数据文件

3、从域服务器:

①也叫辅助域名服务器,对主域名服务器进行热备份

②所维护的域名 --IP地址来自主域名服务器

③需要从主服务器自动同步区域地址数据库

二、bind构建域名服务器

1、bind

bind时应用最广泛的DNS服务器程序

2、bind服务器端程序

主要执行文件 /usr/sbin/named

主配置文件/etc/named.conf

保存DNS解析记录的数据文件位于/var/named

3、bind控制

systemctl [status | start | stop | restart] named.service    
#查看状态、启动、停止和重启

三、本地解析配置文件位置

文件位置:Linux hosts文件位置 /etc/hosts

windows hosts文件位置:c/windows/system32/drivers/etc/hosts

四实验:构建域名服务器正向解析

第一步:安装bind程序

第二步:修改/etc/named.conf

第三步:修改区域配置文件

第四步:修改正向区域数据文件

第五步:开启named等服务,关闭防火墙和增强防护功能,然后启动named服务,然后查看named的服务状态

第六步:在/etc/resolv.conf中修改域名地址

第七步:测试结果域名解析

五、实验:构建域名服务器反向解析

第一步:修改/etc/named.rfc1912.zone配置文件,添加反向区域配置

第二步:复制并配置反向区域数据文件

第三步:修改反向配置的数据文件

第四步:关闭防火墙重启服务后进行解析测试

六、实验:配置主从DNS服务器

第一步:修改主服务器的区域配置文件,修改正反区域配置

第二步:修改从服务器的主要配置文件

vim /etc/named.conf

第三步:修改从服务器的区域配置文件

vim /etc/named.rfc1912.zones

第四步:从服务器关闭防火墙跟安全防护系统,修改临时DNS域名地址,并重启named服务

第五步:在从服务器中查看是否自动生成了区域资源配置文件,并将主服务器的域名ip添加进去

第六步:在主服务器中添加从服务器的域名IP

第七步:进行域名解析测试

主服务器:

从服务器:

相关推荐
正在走向自律1 小时前
阿里云ESC服务器一次性全部迁移到另一个ESC
服务器·阿里云·云计算
gywl1 小时前
openEuler VM虚拟机操作(期末考试)
linux·服务器·网络·windows·http·centos
青木沐1 小时前
Jenkins介绍
运维·jenkins
WTT00112 小时前
2024楚慧杯WP
大数据·运维·网络·安全·web安全·ctf
苹果醋32 小时前
React源码02 - 基础知识 React API 一览
java·运维·spring boot·mysql·nginx
了一li3 小时前
Qt中的QProcess与Boost.Interprocess:实现多进程编程
服务器·数据库·qt
日记跟新中3 小时前
Ubuntu20.04 修改root密码
linux·运维·服务器
唐小旭3 小时前
服务器建立-错误:pyenv环境建立后python版本不对
运维·服务器·python
码农君莫笑3 小时前
信管通低代码信息管理系统应用平台
linux·数据库·windows·低代码·c#·.net·visual studio