文章目录
- 一、DNS的概念与原理
- 二、DNS私服搭建
一、DNS的概念与原理
- 概念
-
DNS指的是域名服务器,就是将域名转换成IP[或者将IP转换成域名];当我们在浏览器中输入域名并按下回车,会对我们输入的域名进行解析,并返回一个IP地址,在通过IP地址找到相应的服务器,并将页面呈现出来;如图:
当主机1由于某原因宕机了,我可以通过域名获取到另一台主机的IP访问系统,提高系统的可用性。
-
- 原理
-
DNS服务器是使用TCP:53连接DNS服务器和UDP:解析DNS的,每一级的域名长度限制在63个字符,域名的总长度不能超过253个字符;DNS分布式系统结构如图:
-
解析方式
- 正向解析 [通常使用这种解析]
- 将于域名解析为IP。
- 逆向解析
- 将IP解析为域名
- 正向解析 [通常使用这种解析]
-
DNS服务器查询方式
- 递归查询
- 当主机发起DNS请求到本地DNS服务器,本地服务器若是有记录,则直接返回主机;若没有,本地服务器会议客户端的身份,将请求发送给根服务器,根服务器若没有,则向顶级域名服务器发送,直到找到为止,将结果返回给本地DNS服务器,本地DNS服务器将结果返回给主机,在这期间主机只和本地服务器建立连接。
- 迭代查询
- 当主机发起DNS请求到本地DNS 服务器,本地服务器若是没有记录,则返回一个可以查询其他服务器的地址,主机会对列表中的地址使用遍历方式发起请求,直到找到结果返回给主机,在这期间,主机与本地DNS服务器建立连接,并且和其他服务器也建立连接
- 当主机发起DNS请求到本地DNS 服务器,本地服务器若是没有记录,则返回一个可以查询其他服务器的地址,主机会对列表中的地址使用遍历方式发起请求,直到找到结果返回给主机,在这期间,主机与本地DNS服务器建立连接,并且和其他服务器也建立连接
- 递归查询
-
二、DNS私服搭建
- 条件
- Linux 系统虚拟机
- 安装DNS服务器 [bind bind-util]
- 步骤
- 安装 bind 软件
yum install -y bind bind-utils
- 修改配置文件
- 查看配置
rpm -qc bind
- 修改配置文件
- /etc/named.conf[建立与客户端的连接]
#编辑配置文件 vi /etc/named.conf #修改配置文件 options{ listen-on port 53 {any;} .... allow-query {any;} };
- /etc/named.rfc1912.zones [设置域名]
#编辑配置文件 vi /etc/named.rfc1912.zones #修改配置文件 zone "[域名随便起]" IN { type master;#主节点 file "named.[xxx].com"; #域名映射的IP地址文件,文件名随便取[必须和下面创建的文件名称是一致的] }; #例如 zone "gcnf.com" IN { type master;#主节点 file "named.gcnf.com"; #allow-update { none; } #注释掉 };
- /etc/named.conf[建立与客户端的连接]
- 创建配置文件[named.gcnf.com]
#拷贝文件 cp -p names.localhost named.gcnf.com #编辑文本 vi named.gcnf.com #修改内容 #将@替换成master 域名 A IP地址 域名 A IP地址 域名 A IP地址 ........ #例如 gcnf.com A 192.168.11.129
- 查看配置
- 重启DNS服务器
systemctl restart named
- 安装 bind 软件