Linux系统之DNS解析
一、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解析相关推荐
- Linux性能优化——DNS解析
Linux性能优化--DNS解析 在TCP/IP不同协议层我们所关注的网络性能指标不同,在应用层,我们关注的是应用程序的并发连接数.每秒请求数.处理延迟.错误数等,可以使用 wrk.JMeter 等工 ...
- linux查询服务器的dns,如何查看Linux系统中DNS服务器的运行状况
DNS是分布式数据库,可以让用户们方便访问互联网,而主机的dns服务器也直接影响了我们上网及访问网站的速度,那么你知道如何查看Linux系统中DNS服务器的运行状况吗? 在Linux环境下,也提供了广 ...
- 华硕服务器系统都还原不了怎么办,华硕笔记本重装系统后dns解析失败怎么办
华硕笔记本重装系统后dns解析失败怎么办?在使用win8.1系统用户有的反应,电脑在使用的过程中经常会出现DNS解析错误,而导致网络不能正常使用,为什么会出现这种情况呢?造成DNS解析错误的原因有很多 ...
- window环境下运行linux解压命令,使用压缩的方式将Windows下的zip压缩包上传到Linux系统的方法解析...
我们可以使用在Windows下压缩文件夹,然后到Linux系统下解压缩的方式,完成整个上传工作. 第一步:在Windows系统下,将整个文件夹压缩成zip后缀的压缩包 方法一: 在文件夹xtemp上, ...
- 关于real210开发板linux系统可能无法解析域名的问题解决方法
也许在使用linux系统中会遇到DNS无法解析域名的问题,不要急,看看下面的方法是否能够解决问题. 查看文件/etc/resolv.conf 看里面的IP是否为当前网络环境的DNS服务器的IP,如果不 ...
- Linux性能优化-DNS解析
目录 域名和DNS解析 案例分析 DNS解析失败 DNS解析不稳定 优化总结 IP地址是TCP/IP协议中,用来确定通讯双方的一个重要标识,每个IP地址又包括了主机号和网络号两部分,相同网络号的主机组 ...
- Linux系统中DNS域名服务器
目录 前言 一.DNS作用 1.1为什么需要DNS系统 1.2DNS是什么 1.3DNS使用的协议及端口号 1.4正向解析查询过程 1.5两种查询方式 1.5.1递归查询 1.5.2迭代查询 二.DN ...
- Linux系统修改DNS详细教程
1. 打开终端 在Linux系统中,打开终端的方法是按下键盘上的Ctrl+Alt+T组合键. 2. 进入网络设置 在终端中输入命令"sudo nano /etc/resolv.conf&qu ...
- Linux系统服务 (DNS解析)
文章目录 前言 一 DNS域名服务基础 1.1 DNS系统的作用和类型 1.2DNS域名结构 1.3工作原理 1.4 DNS的服务器类型 二.操作过程 2.1搭建DNS域名解析服务器 2.2 更改主配 ...
最新文章
- SpringSession(redis)
- Android之EventBus框架源码解析上(单例模式)
- python【数据结构与算法】循环赛日程表(分治)
- ORA-07445 [kkoipt()+3881] [SIGSEGV] [Address not mapped to object] 问题
- Fragment使用LocalBroadcastManager接收广播消息
- Vue项目如何实现国际化?分享一下基于vue-i18n实现国际化的经验
- android是32-bit系统还是64-bit系统
- 文献读的越多,离原创越远
- 小小在线教授何为BTC跳矿(教授如何在线扩大收益)
- 9.22 keep studying
- springboot - 应用实践(N)使用springboot内置的@Scheduled
- 深度学习:Imagenet Object Classification方法
- ckeditor4.x操作之在页面中引入(一)
- 硬件基础知识和典型应用-关于485方式通信
- 哈尔滨这家咖啡馆,灯饰和楼梯都成了“拍照道具
- 操作系统 实时调度
- node.js egg框架接入微信公总号
- 【备忘】【不定时更新】那些有用有趣的网站君们~~
- ViewPager嵌套ViewPager后子ViewPager滑动不正常问题
- 详细设计说明书(转载)