跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

Linux中DNS域名解析服务详解

目录

1、DNS简介

2、DNS系统的作用

3、DNS系统类型

4、本地名称解析配置文件——hosts

5、DNS服务器域名解析

5.1DNS服务器工作原理(分层解析)

5.2查询方式

5.2.1递归查询

5.2.2迭代查询

6、构建域名解析服务器

6.1正向解析

6.2反向解析

6.3主从复制

总结

1、DNS简介

DNS(Domain Name Systern) 域名系统,应用层协议,是互联网的一项服务,是将域名转换成网络可以识别的IP地址,再通过IP地址访问主机。这种由文字组成的名称,显而易见更容易记忆它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网,基于C/S架构服务器端:53/udp, 53/tcp。

实际上,每一台DNS服务器都只负责管理一个有限范围(一个或几个域)内的主机域名和IP地址的对应关系,这些特定的DNS域或IP地址段称为zone (区域〉。

根据地址解析的方向不同,DNS区域相应地分为正向区域(包含域名到IP地址的解析记录)和反向区域(包含IP地址到域名的解析记录)。

2、DNS系统的作用

正向解析:根据域名查找对应的IP地址反向解析:根据IP地址查找对应的域名DNS系统的分布式数据结构:根域:一般用"."表示,可省略不写一级(顶级)DNS服务器:专门负责一级域名的解析(一般代表一种类型的组织机构或国家地区)二级DNS服务器:专门负责二级域名的解析子域名(三级域名)DNS服务器:专门负责子域名的解析

3、DNS系统类型

缓存域名服务器也称为DNS高速缓存服务器通过向其他域名服务器查询获得域名-->IP地址记录将域名查询结果缓存到本地,提高重复查询时的速度主域名服务器特定DNS区域的权威服务器,具有唯一性负责维护该区域内所有域名-->IP地址的映射记录需要自行建立所负责区域的地址数据文件从域名服务器也称为辅助域名服务器,是对主域名服务器的热备份其维护的域名-->IP地址记录来源于主域名服务器需要从主域名服务器自动同步区域地址数据库

4、本地名称解析配置文件——hosts

文件位置Linux hosts文件位置:/etc/hosts windows hosts文件位置 :c/windows/system32/drivers/etc/hosts优先级在/etc/nsswitch.conf文件中默认hosts优先级高于DNS服务器

举例说明在hosts文件中自己百度的的IP与域名 IP地址是自己随机填写的

files优先级高于dns/etc/nsswitch.conf文件中files在dns前 查看百度的IP地址会发现百度的IP地址为自己随机设置的IP

dns优先级高于files/etc/nsswitch.conf文件中在files前 查看百度的IP地址会发现百度的IP地址为dns服务器查询到的IP

5、DNS服务器域名解析

5.1DNS服务器工作原理(分层解析)

先查本机的缓存记录,查询etc/hosts文件,文件中如果存在域名与IP的记录直接调用,没有就利用DNS服务器客户端请求DNS域名服务器解析域名,交给DNS域名服务器处理此过程成为递归查询这个DNS服务器可能是本地域名服务器,查询自己的缓存记录,如果有直接返回结果,如果没有则进行下一步本地域名服务器求助根域服务器,根域服务器返回可能会知道结果的顶级域服务器让他去找顶级域(一级域)服务器求助顶级域服务器,顶级域服务器返回可能会知道结果的二级域服务器然他去找二级域服务器求助二级域服务器,二级域服务器查询发现是我的主机,把查询到的ip地址返回给本地域名服务器本地域名服务器将结果记录到缓存,然后把域名和IP的对应关系返回给客户端,客户机根据返回的IP地址进行访问

5.2查询方式

5.2.1递归查询

客户端和本地DNS服务器之间属于递归查询,即当客户机向DNS服务器发出请求后, 若DNS服务器本身不能解析,则会向其他的DNS服务器发出查询请求,得到最终肯定或否定的结果转交给客户机。但是客户机不会自己再继续向域名服务器寻找,客户机属于等待状态。

5.2.2迭代查询

一般情况下本地DNS服务器向其它DNS服务器的查询属于迭代查询,若这个DNS服务器不能返回查询的IP地址,则这个DNS服务器会向下一个DNS服务器再次发起请求进行查询,直到返回查询的结果为止

6、构建域名解析服务器

6.1正向解析

本机IP地址为192.168.52.200解析出www.my.com的IP地址

步骤:

安装软件包关闭防火墙编辑主配置文件named.conf编辑区域配置文件named.rfc1912.zones建立区域数据文件my.com.zone重启并测试安装bind软件包 (bind为DNS服务程序)并查看配置文件的路径

关闭防火墙

编辑主配置文件

下拉主配置文件可以发现在主配置文件里包含区域配置文件

编辑区域配置文件,添加正向区域配置

编辑正向解析区域数据文件my.com.zone复制文件

编辑正向解析区域数据文件

编辑网卡配置文件,将DNS修改为本机

重启服务

测试

6.2反向解析

本机IP地址为192.168.52.100解析出192.168.52.88的域名

步骤:

安装软件包关闭防火墙编辑主配置文件named.conf编辑区域配置文件named.rfc1912.zones建立区域数据文件qyd.com.zone重启并测试安装bind软件包并查看配置文件的路径

关闭防火墙

编辑主配置文件

编辑区域配置文件,添加反向区域配置

编辑区域数据配置文件复制并改名

编辑文件内容

编辑网卡配置文件,将DNS修改为本机

重启服务

测试解析成功

6.3主从复制

主服务器IP地址:192.168.52.200从服务器IP地址:192.168.52.100主服务器配置与

6.1正向解析

步骤相同从服务器配置安装软件包,查看配置文件

关闭防火墙

编辑主配置文件

编辑区域配置文件

启动named服务,自动复制主服务器中的区域数据配置文件

主服务器配置编辑主服务器区域配置文件,并重启服务

编辑网卡配置文件,将从域名服务器增加为第二台DNS服务器

重启网络服务

关闭主服务器的DNS服务

测试

总结以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:Linux系统中用dig命令查询 DNS (域名系统)记录Linux系统之dns域名解析全过程Linux网络DNS域名如何解析服务Linux中搭建DNS域名解析服务器的详细过程Linux C/C++实现DNS客户端请求域名IP的示例代码linux下如何配置DNS域名Linux域名服务DNS配置方法

相关文章