一、DNS的含义

DNS是Domain Name System的英文缩写,被翻译为域名系统,是英特网的一项核心服务,它作为可以将域名和IP相互映射的一个数据库,使用户在访问互联网时只需要记住简单的域名(如www.baidu.com),而不需要记住复杂的被机器直接读取的IP数字串,即DNS的工作就是当用户在输入域名时,帮助用户自动找到该域名对应的IP从而使用户在使用互联网时更加方便。

二、DNS的部署

1、安装:yum install bind -y

2、系统启动并设置为开机自启动

systemctl start named

systemctl enable named

3、在主配置文件/etc/named.conf中将所有的接口打开并可以为所有的主机进行网络解析服务

修改配置文件后需要重新启动

二、DNS的基本使用

1、DNS的正向解析(即将域名解析为IP)

在DNS的子配置文件/etc/named.rfc1912.zones中写入需要被解析的域名

file表示在访问westos.com域名时读取的文件,需自己建立!!!

在数据目录/var/named下有系统设定的域名文件,可以通过cp复制为模板再进行更改

cp -p /var/named/name.localhost /var/named/westos.com.zone

注意:“@”符表示在子配置文件中所设定的那个域名(westos.com),该文件中所有的域名如dns.westos.com的结尾都需要                              添加一个“.”,否则会被该@符读取!!!

第一行的TTL是一种设定,后面的1D表示该记录文件里面的各项记录的预设TTL值为86400秒,即刚好一天

IN定义出目前的记录类型是属于internet class的

SOA表示目前区域的授权记录开始,其后面的值为区域授权主机和管理信箱!!

serial表示修改的时间及次数,当自己在修改记录文件时需要更改serial的值,否则修改无法被slave识别;

refresh表示数据多久进行一次更新

retry表示如果slave的对数据更新失败后,多久后进行重试

expire记录逾期时间,即超过该时间slave未与master进行联系,系统会放弃retry并标记该数据标识为过期

minimum最小预设TTL的值,如果在文件开头没有设置TTL的值,将以该处的值为准!!

设定好服务端后需要对服务端的named进行重启,并对客户端的解析文件/etc/resolve进行指定DNS的设定

测试:在服务端主机进行域名解析:dig www.westos.com

如上图,该域名的解析地址,解析服务器都会呈现出来!!

2、DNS的反向解析

反向解析即将IP地址解析为域名!!

在DNS子配置文件/etc/named.rfv1912.zones里添加需要反向解析的IP数据段

如上图,反向解析的IP数据段在写如该文件时也需要反向写,file表示反向解析的记录文件,需要自行建立

与正向解析类似,可以在数据目录/var/named下复制一个反向解析记录文件模板进行建立

最后一行表示在该数据段下的225IP解析的域名为www.westos.com

修改完后需要重新启动named哟!!!

测试:在客户端进行反向解析:dig -x 172.25.254.225

3、DNS的双向解析

即设置两个数据文件,一个为指定IP客户端进行解析时读取的文件,成为内部文件;另一个为其他所有IP客户端进行解析时所读取的文件,这两个文件也需要在主配置文件中进行设定,使系统可以读取到!!!

内部解析的设置:

上图表示当IP为172.25.254.25的客户端进行解析时,读取/etc/named.rfc1912.zones的子配置文件中的解析的域名

外部解析的设置:

上图表示当其他客户主机来进行解析时,读取/etc.named.rfv1912.zones.inter子配置目录中的解析的域名

注意:该子配置文件需要自行建立(可cp模板进行建立),如下:

该记录文件需要自行建立!!!!、

为了进行区分,解析地址设置为不同于内部文件的!!!

测试:在ip为25和其他的一台主机均对www.westos.com进行解析,所得到的解析结果不相同!!!

如上图,外部解析和内部解析所得到的结果完全不同,表示双向解析设定OK!!

4、辅助DNS(即设置一个slave)

辅助DNS存在的意义在于当主DNS的解析用户过多时会造成解析速度太慢,用户体验太差,此时设置一个辅助DNS用于缓解主DNS的解析压力!!!

步骤:

在主DNS中的设定:

在子配置文件中设置辅助DNS的IP,即设定该服务器作为自己的辅助DNS

然后重启服务

在辅助DNS中的设定:

首先需要在辅助服务器上安装name服务(步骤设定同第二项)

在子配置文件中设置针对于哪些域名自己为slave服务器

type设置为slave,并指明自己的master的IP,file文件需自行建立但可以不写入内容!!!

重启服务后该辅助DNS便设置OK

测试:在客户主机上将解析地址设定为辅助DNS对www.westos.com进行解析

我们在双向解析中设定了除172.25.254.25外,其他主机均为外部解析,虽然测试主机仍未172.25.254.25,但这次解析是先通过172.25.254.125解析访问主DNS,所以172.25.254.125为外部主机,所以访问的是外部文件!!!

5、DNS的远程更新

基于IP的远程更新

在子配置文件中设定允许被谁更新

allow-update为允许谁远程更新数据!!

重启服务后,需要给/var/named目录添加权限,才能更新成功

测试:在172.25.254.125主机上用nsupdate命令进行更新

该更新为添加一个新的域名bbs.westos.com

若添加成功,则可以在测试主机上解析到

常见报错:

如果在更改时出现如下报错:

此时可以查看主DNS的报错日志,可能与安全上下文有关,运行如下命令即可:

此时便可被更改:

基于密码的远程更新

先复制一个密码的模板:cp -p /etc/rndc.key /etc/westos.key(该文件名称可以随意定义)

然后再通过密码生成命令进行生成密码和钥匙:

-a表示密码类型,此处的HMAC-MD5是哈西加密的一种类型;

-b表示密码的字节数,此处用128b;

-n表示密码的用户类型

密码生成后需要加密码放在/etc/westos.key里

该文件中密码名称必须和生成时密码的名称相同,secret的内容也要一致!!!

然后需要将该密码文件写入DNS的主配置文件,让系统可以识别该密码!!

还需要将子配置文件中允许IP远程更改改为密码验证更改

然后将改密码发送给其他服务器,有该密码该服务器才能进行远程修改

测试:在有密码的主机上对主DNS进行数据更新:

通过DHCP对DNS进行数据更新:

在上一步密码加密的基础上,修改记录文件,将www的服务器去掉

进行DHCP的设置:

在主DNS上搭建一个DHCP环境:

安装DHCP服务:yum install dhcp -y

制作DHCP服务的主配置文件:

进入配置文件中进行搭建DHCP的设置:

设置客户主机的域名和dns:

设置客户主机的可能获得的IP范围、子网掩码以及网关,加入主DNS的密码文件

然后重启服务!!

将其他一主机设置为dhcp分配网络,当该主机得到IP时,westos.com的解析服务器的IP就会变为该主机获得的IP

Linux系统之DNS解析相关推荐

  1. Linux性能优化——DNS解析

    Linux性能优化--DNS解析 在TCP/IP不同协议层我们所关注的网络性能指标不同,在应用层,我们关注的是应用程序的并发连接数.每秒请求数.处理延迟.错误数等,可以使用 wrk.JMeter 等工 ...

  2. linux查询服务器的dns,如何查看Linux系统中DNS服务器的运行状况

    DNS是分布式数据库,可以让用户们方便访问互联网,而主机的dns服务器也直接影响了我们上网及访问网站的速度,那么你知道如何查看Linux系统中DNS服务器的运行状况吗? 在Linux环境下,也提供了广 ...

  3. 华硕服务器系统都还原不了怎么办,华硕笔记本重装系统后dns解析失败怎么办

    华硕笔记本重装系统后dns解析失败怎么办?在使用win8.1系统用户有的反应,电脑在使用的过程中经常会出现DNS解析错误,而导致网络不能正常使用,为什么会出现这种情况呢?造成DNS解析错误的原因有很多 ...

  4. window环境下运行linux解压命令,使用压缩的方式将Windows下的zip压缩包上传到Linux系统的方法解析...

    我们可以使用在Windows下压缩文件夹,然后到Linux系统下解压缩的方式,完成整个上传工作. 第一步:在Windows系统下,将整个文件夹压缩成zip后缀的压缩包 方法一: 在文件夹xtemp上, ...

  5. 关于real210开发板linux系统可能无法解析域名的问题解决方法

    也许在使用linux系统中会遇到DNS无法解析域名的问题,不要急,看看下面的方法是否能够解决问题. 查看文件/etc/resolv.conf 看里面的IP是否为当前网络环境的DNS服务器的IP,如果不 ...

  6. Linux性能优化-DNS解析

    目录 域名和DNS解析 案例分析 DNS解析失败 DNS解析不稳定 优化总结 IP地址是TCP/IP协议中,用来确定通讯双方的一个重要标识,每个IP地址又包括了主机号和网络号两部分,相同网络号的主机组 ...

  7. Linux系统中DNS域名服务器

    目录 前言 一.DNS作用 1.1为什么需要DNS系统 1.2DNS是什么 1.3DNS使用的协议及端口号 1.4正向解析查询过程 1.5两种查询方式 1.5.1递归查询 1.5.2迭代查询 二.DN ...

  8. Linux系统修改DNS详细教程

    1. 打开终端 在Linux系统中,打开终端的方法是按下键盘上的Ctrl+Alt+T组合键. 2. 进入网络设置 在终端中输入命令"sudo nano /etc/resolv.conf&qu ...

  9. Linux系统服务 (DNS解析)

    文章目录 前言 一 DNS域名服务基础 1.1 DNS系统的作用和类型 1.2DNS域名结构 1.3工作原理 1.4 DNS的服务器类型 二.操作过程 2.1搭建DNS域名解析服务器 2.2 更改主配 ...

最新文章

  1. SpringSession(redis)
  2. Android之EventBus框架源码解析上(单例模式)
  3. python【数据结构与算法】循环赛日程表(分治)
  4. ORA-07445 [kkoipt()+3881] [SIGSEGV] [Address not mapped to object] 问题
  5. Fragment使用LocalBroadcastManager接收广播消息
  6. Vue项目如何实现国际化?分享一下基于vue-i18n实现国际化的经验
  7. android是32-bit系统还是64-bit系统
  8. 文献读的越多,离原创越远
  9. 小小在线教授何为BTC跳矿(教授如何在线扩大收益)
  10. 9.22 keep studying
  11. springboot - 应用实践(N)使用springboot内置的@Scheduled
  12. 深度学习:Imagenet Object Classification方法
  13. ckeditor4.x操作之在页面中引入(一)
  14. 硬件基础知识和典型应用-关于485方式通信
  15. 哈尔滨这家咖啡馆,灯饰和楼梯都成了“拍照道具
  16. 操作系统 实时调度
  17. node.js egg框架接入微信公总号
  18. 【备忘】【不定时更新】那些有用有趣的网站君们~~
  19. ViewPager嵌套ViewPager后子ViewPager滑动不正常问题
  20. 详细设计说明书(转载)

热门文章

  1. 日入上万,Jack 年入百万?
  2. 5G加速,为什么说紫光股份是运营商市场的大赢家?
  3. excel方差函数和均方差函数使用介绍
  4. Dask核心功能介绍及与Spark的比较
  5. 打印机设置为双面打印
  6. C++对象池-多线程工厂模式
  7. 利用建造者(Builder)模式构建 Java 对象
  8. SqlServer geometry 转 geography
  9. 微信缓存dat怎么转图片_微信 .dat图片格式转换为.jpg
  10. 如何在字符数组中存储空白字符