DNS是互联网基础设施的关键组成部分,负责将域名解析为IP地址。DNS部署包括设置DNS服务器、配置区域文件和资源记录等步骤,确保域名系统高效运行。
1. 简介
DNS(Domain Name System)域名管理系统是互联网的一项基础服务,它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网,而不用记住能够被机器直接读取的IP地址。
2. 域名
域名结构是树状结构,树的最顶端代表根服务器,根的下一层就是由我们熟知的.com、.net、.cn等通用域和.cn、.uk等国家域组成,称为顶级域,网上注册的域名基本都是二级域名,比如http://baidu.com、http://taobao.com等二级域名,它们基本上是归企业和运维人员管理,接下来是三级或者四级域名,这里不多赘述,总体概括来说,域名是由整体到局部的机制结构。
常见的域名类型包括:
域名 | 类型 | 描述 |
.com | 商业组织 | 用于商业公司 |
.org | 非营利组织 | 用于非营利组织 |
.gov | 政府部门 | 用于政府机构 |
.net | 网络服务商 | 用于网络服务机构 |
.edu | 科研机构 | 用于教育机构 |
.pub | 公共大众 | 用于公共大众 |
.cn | 中国国家顶级域名 | 用于中国的网站 |
3. DNS的正反向解析
正向解析:将域名解析成IP地址(这也是最常用的,输入网址访问网页,系统根据域名映射的IP去查找相应的网站,然后访问)。
反向解析:将IP地址解析成域名。
4. DNS解析流程
1、客户端请求:客户端位置是一台电脑或手机,在打开浏览器以后,比如输入http://www.zdns.cn的域名,它首先是由浏览器发起一个DNS解析请求,如果本地缓存服务器中找不到结果,则首先会向根服务器查询,根服务器里面记录的都是各个顶级域所在的服务器的位置,当向根请求http://www.zdns.cn的时候,根服务器就会返回.cn服务器的位置信息。
2、递归查询:递归服务器拿到.cn的权威服务器地址以后,就会询问cn的权威服务器,知不知道http://www.zdns.cn的位置,这个时候cn权威服务器查找并返回http://zdns.cn服务器的地址,继续向http://zdns.cn的权威服务器去查询这个地址,由http://zdns.cn的服务器给出了地址:202.173.11.10。
3、最终访问:最终才能进行http的链接,顺利访问网站,一旦递归服务器拿到解析记录以后,就会在本地进行缓存,如果下次客户端再请求本地的递归域名服务器相同域名的时候,就不会再这样一层一层查了,因为本地服务器里面已经有缓存了,这个时候就直接把http://www.zdns.cn的A记录返回给客户端就可以了。
5. DNS服务器分类
主服务器:在特定区域内具有唯一性,负责维护该区域的域名与IP地址之间的对应关系。
从服务器:从服务器中获得域名与IP地址的对应关系并进行维护,以防止主服务器宕机(无法恢复的死机)。
缓存服务器:主机向其他域名解析器服务器查询获得域名与IP对应关系,并经常查询的域名信息保存到服务器本地,以此来提高重复查询时的效率。
DNS服务搭建
1. 配置网卡
编辑网卡配置文件:
vi /etc/sysconfig/networkscripts/ifcfgens33 #修改或添加以下配置 ONBOOT=YES BOOTPROTO=static IPADDR=192.168.10.10 NETWORK=255.255.255.0 GATEWAY=192.168.10.2 DNS1=192.168.10.10 #配置完重启网卡 systemctl restart network
2. 配置本地yum源
创建挂载点并挂载镜像:
mkdir /media/cdrom #创建挂载点 mount /dev/cdrom /media/cdrom #将镜像挂载到挂载点 cd /etc/yum.repos.d #去到本地yum源配置目录 mv CentOSBase.repo 1 #将网络源文件名字修改成1,使网络源失效 vi CentOSMedia.repo #编辑本地yum源 #进去后不要做任何配置,直接跳转到第20行改成1 enabled=1 #表示启用本地yum源 yum y install bindutils bindchroot vim #下载dns服务和vim编辑器
3. 进入DNS配置文件
进入DNS配置文件并修改:
cd /etc/named.rfc1912.zones #更改前 zone "csdn.com" IN { type master; file "1"; allowupdate { any; }; } zone "10.168.192.inaddr.arpa" IN { type master; file "2"; allowupdate { any; }; } #更改后 zone "skills.com" IN { #正向域名解析 type master; #服务器类型:master为主服务器 file "1"; #正向解析文件名为 1 }; zone "10.168.192.inaddr.arpa" IN { #反向域名解析 type master; #服务器类型:master为主服务器 file "2"; #反向文件名为 2 }
4. 修改正反向解析文件
复制并编辑正向解析文件和反向解析文件:
cd /var/named cp a named.localhost 1 #复制一个文件名为1的正向模块文件 cp a named.loopback 2 #复制一个文件名为2的反向模块文件 vim 1 #编辑正向文件,并添加一条解析记录 www A 192.168.10.10 vim 2 #编辑反向解析文件 10 PTR www.csdn.com. #指定10主机位的主机域名为www.csdn.com
5. 进入DNS配置主文件
进入DNS配置主文件并进行修改:
#更改前 options { //...省略内容... }; logging { //...省略内容... }; zone "." IN { type hint; file "named.ca"; }; zone "pzz.com" IN { type master; file "pzz.com.zone"; allowupdate{192.168.136.210;}; }; zone "136.168.192.inaddr.arpa" IN { type master; file "192.168.192.arpa"; allowupdate{192.168.136.210;}; }; #更改后 include "/etc/dns.key"; include "/etc/named.rfc1912.zones"; include "/etc/named.root.key";
6. 关闭防火墙并重启DNS服务
关闭防火墙并重启DNS服务:
systemctl stop firewalld systemctl restart named
相关问题与解答栏目
问题1:如何确保DNS服务器的安全性?
答案:为了确保DNS服务器的安全性,可以采取以下措施:限制DNS查询的来源IP地址;使用DNSSEC(DNS Security Extensions)来验证DNS响应的真实性和完整性;定期更新DNS软件以修复已知的安全漏洞;监控和分析DNS流量以检测潜在的攻击行为,还可以配置防火墙规则来限制对DNS服务器的访问。
问题2:如何测试DNS服务器是否配置正确?
答案:可以使用dig
命令或nslookup
命令来测试DNS服务器是否配置正确,通过这些命令,可以查询特定域名的A记录、MX记录等,查看返回的结果是否符合预期,如果一切正常,说明DNS服务器已成功配置并正在运行。
来源互联网整合,作者:小编,如若转载,请注明出处:https://www.aiboce.com/ask/47099.html