LINUX-DNS部署 超详细

本文将按照博主部署DNS操作和心得出发 有问题的地方还请评论纠错!

这里写目录标题

  • DNS概述与DNS部署
    • 一、简介
    • 二、域名
      • 2.1 域名层次结构
    • 三、DNS的正反向解析
    • 四、DNS解析流程
    • 五、DNS服务器分类
    • 六、DNS服务搭建
      • 1.配置网卡
      • 2.配置本地yum源
      • 3.进入DNS配置文件
      • 4.修改正反向解析文件
      • 5.进入DNS配置主文件
      • 6.关闭防火墙并重启DNS服务
      • 7.测试结果
    • 六、配置心得

DNS概述与DNS部署

一、简介

DNS(domain name system)域名管理系统是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用记住能够被机器直接读取的IP地址。

二、域名

2.1 域名层次结构

LINUX-DNS部署 超详细_第1张图片
如上图所示,域名结构是树状结构,树的最顶端代表根服务器,根的下一层就是由我们所熟知的.com、.net、.cn等通用域和.cn、.uk等国家域组成,称为顶级域。网上注册的域名基本都是二级域名比如http://baidu.com、http://taobao.com等等二级域名,它们基本上是归企业和运维人员管理。接下来是三级或者四级域名,这里不多赘述。总体概括来说域名是由整体到局部的机制结构。

这里集中介绍最常见的域名
.com (商业组织).org(非营利组织) .gov(政府部门).net(网络服务商).edu(科研机构) .pub(公共大众) .cn(中国国家顶级域名)

三、DNS的正反向解析

  • 正向解析将域名解析成IP地址(这也是我们最常用的,输入网址访问网页,系统根据域名映射的IP去查找相应的网站,然后访问)
  • 反向解析:将IP地址解析成域名

四、DNS解析流程

LINUX-DNS部署 超详细_第2张图片
1、首先客户端位置是一台电脑或手机,在打开浏览器以后,比如输入http://www.zdns.cn的域名,它首先是由浏览器发起一个DNS解析请求,如果本地缓存服务器中找不到结果,则首先会向根服务器查询,根服务器里面记录的都是各个顶级域所在的服务器的位置,当向根请求http://www.zdns.cn的时候,根服务器就会返回.cn服务器的位置信息。

2、递归服务器拿到.cn的权威服务器地址以后,就会寻问cn的权威服务器,知不知道http://www.zdns.cn的位置。这个时候cn权威服务器查找并返回http://zdns.cn服务器的地址。

3、继续向http://zdns.cn的权威服务器去查询这个地址,由http://zdns.cn的服务器给出了地址:202.173.11.10

4、最终才能进行http的链接,顺利访问网站。

5、这里补充说明,一旦递归服务器拿到解析记录以后,就会在本地进行缓存,如果下次客户端再请求本地的递归域名服务器相同域名的时候,就不会再这样一层一层查了,因为本地服务器里面已经有缓存了,这个时候就直接把http://www.zdns.cn的A记录返回给客户端就可以了。

五、DNS服务器分类

  • 主服务器
    在特定区域内具有唯一性,负责维护该区域的域名与IP地址之间的对应关系。
  • 从服务器:从服务器中获得域名与IP地址的对应关系并进行维护,以防止主服务器宕机(无法恢复的死机)
  • 缓存服务器:主机向其他域名解析器服务器查询获得域名与IP对应关系,并经常查询的域名信息保存到服务器本地,以此来提高重复查询时的效率。

六、DNS服务搭建

1.配置网卡

vi /etc/sysconfig/network-scripts/ifcfg-ens33
#修改或添加以下配置
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

LINUX-DNS部署 超详细_第3张图片

2.配置本地yum源

mkdir /media/cdrom #创建挂载点
mount /dev/cdrom /media/cdrom #将镜像挂载到挂载点
cd /etc/yum.repos.d #去到本地yum源配置目录
mv CentOS-Base.repo 1 #将网络源文件名字修改成1,使网络源失效
vi CentOS-Media.repo #编辑本地yum源
#进去后不要做任何配置,直接跳转到第20行改成1
enabled=1 #表示启用本地yum源
yum -y install bind-utils bind-chroot vim #下载dns服务和vim编辑器

LINUX-DNS部署 超详细_第4张图片

3.进入DNS配置文件

我们进入到 /etc/named.rfc1912.zones

  • 更改前
    LINUX-DNS部署 超详细_第5张图片

如下面所写 更改上图画红圈的部分

zone "csdn.com" IN {
	type master;
	file "1";
	allow-update { any; };
zone "10.168.192.in-addr.arpa" IN {
	type master;
	file "2";
	allow-update { any; };

- 更改后
LINUX-DNS部署 超详细_第6张图片

  • 插一嘴 解释一下正向解析和反向解析

【 正向解析记录格式: zone “域名” IN {
zone “skills.com” IN { #正向域名解析
type master; #服务器类型:master为主服务器
file “1”; #正向解析文件名为 1
};
【 反向解析记录格式:zone “网段不加主机位反过来.in-addr.arpa” IN { 】
zone “10.168.192.in-addr.arpa” IN { #反向域名解析 type master; #服务器类型:master为主服务器
File “2”; #反向文件名为 2

4.修改正反向解析文件

[root@localhost ~]# cd /var/named
[root@localhost named]# cp -a named.localhost 1  #复制一个文件名为1的正向模块文件
[root@localhost named]# cp -a named.loopback 2  #复制一个文件名为2的反向模块文件
vim 1 #编辑正向文件,并添加一条解析记录
www A 192.168.10.10 

LINUX-DNS部署 超详细_第7张图片

vim 2 #编辑反向解析文件
10 PTR www.csdn.com. #指定10主机位的主机域名为www.csdn.com

LINUX-DNS部署 超详细_第8张图片

5.进入DNS配置主文件

更改前
LINUX-DNS部署 超详细_第9张图片

改动13行与21行{}中的内容

更改后
LINUX-DNS部署 超详细_第10张图片

6.关闭防火墙并重启DNS服务

[root@localhost named]# systemctl stop firewalld
[root@localhost named]# systemctl restart named
[root@localhost named]# setenforce 0

7.测试结果

nslookup
192.168.10.10
www.csdn.com

LINUX-DNS部署 超详细_第11张图片
如果报错就检查是否配置文件出错或者网卡里的dns是否指向dns服务器。

六、配置心得

这个配置实验其实我也弄了三天 我觉得linux很神奇 总感觉没有错误 但总是出各种问题 但是做了很多次后你终于成功了 那你就会记得很清楚 所以希望大家做题时细心 这是我的实验心得和经验 同时谢谢学长 若文章中有任何问题 请在评论区留言 我会参考并纠正错误。

你可能感兴趣的:(linux,服务器,网络)