DNS详解(Domain Name Service)

1.DNS原理
DNS采用两种查询机制:递归和迭代
在这里插入图片描述
客户端向DNS服务器发起查询请求,DNS搜索本地解析库没有结果。于是向根域发起查询请求,根域告诉DNS服务器,.com服务器上有它需要的资源,DNS服务器又向.com服务器发起请求,.com服务器告诉DNS服务器,.google.com上有它需要的资源。于是又向.google.com服务器发起请求,发现要找到的解析记录,并返回给了客户端
在查询过程中,客户端只发起了一次请求,并得到了最后的结果,这种查询方式被称为递归,而DNS服务器在查询过程中不停的发起请求,直到找到想要的结果,这种查询方式被称为迭代
根据用户提供一种名称,去查询解析库,以得到另一种名称。域名→IP或IP→域名
2.域名解析流程
TLD:TOP Level Domain(顶级域名)
组织域:.com,.org,.net,.edu,.gov…
国家域:.cn,.us,.tw…
反向域: .in-addr-arpa
在这里插入图片描述
DNS利用树形目录结构,将主机名的管理分配给不同的层级,这样就可以实现更加快速的完成主机名的查找,修改主机名解析时也更加方便
在这里插入图片描述
1.现在本地DNS解析器缓存里面查找(没找到下一步)
2.在本地hosts文件中查找
3.在本地DNS服务器的缓存里面查找
4.在本地NDS服务器的域中查找
5.在根域中迭代查找
6.在ISP供应商处查找
3.域名注册体系掌握
下面拿万维网举例来说明:
1.万网域名注册
a.首先进入官网
在这里插入图片描述
b.搜索你想要的域名
在这里插入图片描述
c.选择你要的域名
在这里插入图片描述在这里插入图片描述
d.结算,确认订单
在这里插入图片描述
4.DNS服务器部署
1.关闭防火墙和selinux
systemctl stop firewalld --关闭防火墙
systemctl disable firewalld --开机不自启防火墙
systemctl status firewalld --查询防火墙的状态
setenforce 0 --关闭selinux
getenforce --查询selinux状态
2.安装DNS服务器软件
yum isntall bind(DNS服务器软件,做域名解析的)
主配置文件/etc/named.conf
区域配置文件/etc/named.rfc1912.zones用来保存区域文件名和服务器类型
数据配置文件目录/var/named 用来保存区域文件
vi /etc/resolv.conf
nameserver 192.168.239.129
3.修改主配置文件
vi /etc/named.conf
listen-on port 53 { any; };:监听这部主机系统上面的哪个网络接口。any是整个主机系统的所有接口进行监听的,所以所有都可以对DNS服务进行查询(使用所有接口)
directory “/var/named”;:如果此档案底下有规范到正,反解的zone file档名时,该档名就是放置在哪个目录底下的意思
dump-file “/var/named/data/cache_dump.db”;:与named这个服务有关的许多统计信息,如果要输出成为文档的话,预设为此
allow-query { any; };:这个是针对客户端的设定,到底谁可以对我的DNS服务提出查询请求的意思
forward only:让自己的DNS服务器仅进行转发。即使有.这个zone file的设定,也不会使用.的数据,只会将查询权交给上层DNS服务器
forwarders { 192.168.239.129; 192.168.44.132; } ;:对哪部DNS服务器进行转递,[ ; ]来做结尾
logging语句定义了bind服务的调试日志信息
channel(通道):日志的输出方式,如syslog,文本文件,标准错误输出或/dev/null
category(类别):日志的消息类别,如查询消息或动态更新消息等
module(模块):产生消息的来源模块名称。
facility(设备):syslog设备名。
file(文件):输出到文本文件。
severity(严重性):消息的严重性等级。

zone “.” IN { // "."代表根区域
type hint; // 根区域的类型就为hint
file “named.ca”; // 指定zone文件,默认已经生成
};
4.修改区域配置文件
vi /etc/named.rfc1912.zones
zone “ssw.com” IN {
type master; 服务类型
file “ssw.com.zone”; 域名与IP地址解析规则保存文件
allow-update { none; }; 允许哪些客户机动态更新解析信息
}; 正向解析参数
zone “239.168.192.in-addr.arpa” IN {
type master;
file “192.168.239.arpa”;
}; 反向解析参数
在这里插入图片描述
5.正向解析
cd /var/named
cp -a named.localhost ssw.com.zone
在这里插入图片描述
TTL:生存时间
@:表示相应的域名,表示一个域名定义的开始
IN:表示后面的数据使用的是INTERNET标准
SOA:表示授权开始
ssw.com:该域的主域名服务器
root.ssw.com:管理员邮件地址
serial: 更新序列号
refresh:更新时间
retry:重试延时
expire:失效时间
minimum:无效解析记录时间
启动服务及测试
systemctl restart named
yum install bind-utils -y
bind-utils(客户端,测试DNS使用)
6.反向解析
cp -a named.loopback 192.168.239.arpa
在这里插入图片描述
测试
5.DNS master以及slaves
主DNS服务器:为客户端提供域名解析的主要区域,主DNS服务器宕机,会启用从DNS服务器提供服务
从DNS服务器:主服务器DNS长期无答应,从服务器也会停止提供服务
主从区域之间的同步采用周期性检查+通知的机制,从服务器周期性的检查主服务器上的记录情况,一旦发现修改就会同步。另外主服务器上如果有数据修改了,会立即通知从服务器更新记录
在DNS域名解析服务中,从服务器可以从主服务器上获取指定区域数据文件,从而起到备份解析记录与负载均衡的作用,因此通过部署
从服务器可以减轻主服务器的负载压力,还可以提升用户的查询效率
eg:
主服务器:192.168.239.129 从服务器:192.168.239.130
1.配置主服务器
在这里插入图片描述
systemctl restart named
2.配置从服务器
在这里插入图片描述
systemctl restart named
配置主从服务器完成后,cd /var/named/slaves查看从服务器同步主服务器的文件
6.DNS cache了解
有个只需要 . 这个zone file的简单DNS服务器,我们称这种没有自己公开的DNS数据库的服务器为cache-only(仅快取)DNS server.这个DNS server只有快取搜寻结果的功能,也就是说,他本身没有主机名与IP正反解的配置文件,完全是由对外的查询来提供他的数据源
如果是清除NSCD上的Cache,可重新启动NSCD服务来达成清除DNS Cache的效果。使用的命令是: service nscd restart或 /etc/init.d/nscd restart
如果是清除BIND服务器上的CACHE,使用的命令是:rndc flush

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值