DNS域名解析服务
文章目录
序言:DNS的作用是哪些?为何须要使用DNS?打个比方比119.75.217.56会更容易记住,计算机不辨识中英文,通过中间转换DNS,转换成对应的IPlinux什么命令用于dns服务解析,计算机找到IP能够访问到Web一、DNS系统的作用1.DNS域名的概念
DNS域名系统(DomainNameSystem简写DNS,Domain,Name被译为域名)是因特网的一项核心服务,它作为可以将域名和IP地址互相映射的一个分布式数据块,才能使人更便捷的访问互联网,而不用去记住才能被机器直接读取的IP数串。
全球有13台DNS服务器,9个在澳洲,2个在法国(法国和瑞士),欧洲法国1个
2.DNS使用的合同及端标语
DNS的默认端标语为53,DNS端口分为TCP和UDP
TCP是拿来做区域传送的,多用于主从同步,在一个区中主DNS服务器从自己本机的数据文件中读取该区的DNS数据信息,而辅助DNS服务器则从区的主DNS服务器读取该区的DNS数据信息
UDP是拿来做DNS解析的域名:一般由一个完全合格域名(FQDN)标示,FQDN全称FullyQualifiedDomainName,它能确切表示出其相对于DNS域树叶的位置,也就是节点到DNS树枝的完整叙述方法,从节点到树枝采用反向书写,并将每位节点用“."分隔,对于DNS域google来说,其完全即将域名(FQDN)为。
例:google为com域的子域,其表示方式为,而www为google域中的子域,可以使用表示
注意,一般,FQDN有严格的命名限制,宽度不能超过256字节。只容许使用字符a-zlinux公社,0-9,A-Z和加号(-),点号(,)只容许在域名标志之间(比如"")或则FQDN的结尾使用,域名不分辨大小,有最顶楼到上层,可以分成:根域、顶级域、二级域、子域
FQDN=Hostname+DomainName
如:
注意:最上面的一定是主机,最后一个点表示根域,一般是省略不写的,但实际上
域名结构:
完全域名:同时带有主机名和域名的名称
windows系统查询dns缓存命令:ipconfig/displaydns
windows系统清除dns缓存命令:ipconfig/flushdns
3.域名体系结构
DNS系统的结构为分布式数据结构
域名与IP地址之间是多对一的关系,一个IP地址不一定只对应一个域名linux什么命令用于dns服务解析,且一个域名只可以对应一个IP地址
组织域:.com.org.net.cc
国家域:.cn.tw(香港).hk(台湾).iq.ir.jp(台湾)
114.114.114.114是国外三大营运商联通、电信、联通通用的DNS
8.8.8.8是GOOGLE公司提供的DNS,该地址全球通用,相对来说,更适宜加拿大一级访问美国网站的的用户使用
223.5.5.5和223.6.6.6:阿里云的DNS
二、DNS两种查看方法
1.递归查询
递归查询是一种DNS服务器的查询模式,在该模式下DNS服务器接收到顾客机恳求,必须是哟个一个确切的查询结果回复顾客机,假如DNS服务器本地没有储存查询DNS信息,这么该服务器会寻问其他服务器,并将返回的查询结果递交给顾客机
简单来说就是顾客机发送恳求后只须要等待结果即可,中间具体过程交给服务器实现
2.迭代查询
DNS服务器另一种形式为迭代查询,当顾客机发送查询恳求时,DNS服务器并不直接回复查询结果,而是告诉顾客机另一台DNS服务器地址,顾客机再向这台DNS服务器递交恳求,依次循环晓得返回查询的结果为止
迭代查询就是顾客机发送的恳求须要自己逐个查询才会得到结果,服务器没有结果的时侯只会提供其他可能晓得答案的服务器地址,而不会帮顾客机去查询结果,与递归迥然相反
从递归和迭代查询可以看出:
顾客端—本地DNS服务端,这部份属于递归查询
本地DNS服务端—外网,这部份属于迭代查询
递归查询时,返回的结果只有两种:查询成功或查询失败;而迭代查询又叫做重指引,返回的是最佳的查询点或主机地址
3.正向解析查询过程
1.先查本机的缓存记录,2.查询host文件;3,查询dns域名服务器,交给DNS域名服务器处理
以上过程称为递归查询,:我要一个答案会直接反馈结果
4.求救根域服务器,根域服务器返回可能会晓得结果的顶尖域服务器让他去找顶尖域服务器
5.求救顶尖域服务器,顶尖域服务器返回可能会晓得结果的二级域服务器地址,去找二级域服务器
6,求救二级域服务器linux 下载,二级域服务器查询发觉时我的主机,把查询到的IP地址返回给本地域名服务器
7,本地域名服务器将结果记录并缓存,之后把域名和IP的对应关系返回给顾客端
4.DNS服务器类型
1.主域名服务器:负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以更改,建立主域名服务器时,须要自行构建所负责区域的地址数据库
2.从域名服务器:当主域名服务器出现故障、关闭或负载过重时,从域名服务器作为备份服务提供域名解析服务,从域名服务器提供的解析结果不是由自己决定的,而是来自于主域名服务器,建立从域名服务器时,须要指定主域名服务器的位置,便于服务器能手动同步区域的地址数据库
缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提升查询速率和效率,但没有域名数据库,它从某个远程服务器取得每次域名服务器查询的结果,并将它置于高速缓存中,之后查询相同的信息时它给与响应,缓存域名服务器不是权威性服务器,由于提供的所有信息都是间接信息,建立缓存域名服务器时,必须设置根域或指定其他DNS服务器作为解析来源
4.转发域名服务器:负责所有非本地域名的本地查询,转发域名服务器接到查询恳求后,在其缓存中查找,如找不到就将恳求一次转发到指定的域名服务器,直至查找到结果为止,佛则返回未能映射的结果
三、实验:正向解析
生产环境中更改配置文件,切忌须要先备份
1.查看须要更改的配置文件所在路径
2.更改主配置文件
vim /etc/named.conf 修改全局配置文件
options {
listen-on port 53 { 192.168.206.128; }; 监听53端口。IP地址使用提供服务的本地IP,也可以用any代表所有
#listen-on-v6 port 53 { ::1; }; 表示ipV6行,这里不使用加"#"注释或者直接删除掉
directory "/var/named"; 区域数据文件的默认存放位置
dump-file "/var/named/data/cache_dump.db"; 域名缓存数据库文件的位置
statistics-file "/var/named/data/named_stats.txt"; 状态统计文件的位置
memstatistics-file "/var/named/data/named_mem_stats.txt"; 内存统计文件的位置
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { any; };原为localhost,也可写为192.168.206.0/24(本机IP网段)允许本机使用DNS解析的网段
zone "." IN { 正向解析,"."代表根区域
type hint; 表示类型,这里为根区域
file "named.ca"; 区域数据文件,"name.ca"记录了全球13台根域服务器和IP地址
}
include "/etc/named.rfc1912.zones"; 包含区域配置文件的所有配置
3.更改区域配置文件,添加正向区域配置
vim /etc/named.rfc1912.zones
zone "xiaofeixia.com" IN { 正向解析"xiaofeixia.com"区域
type master; 类型
file "xiaofeixia.com.zone"; 指定区域数据文件"xiaofeixia.com.zone"
allow-update { none; };
};
4.配置正向区域数据文件
cd /var/named/
cp -p named.localhost xiaofeixia.com.zone 保留源文件的权限和属主的属性复制(cp后面一定要加-p)
vim /var/named/xiaofei.com.zone
$TTL 1D 设置缓存解析结果的有效时间也就是生命周期
@ IN SOA xiaofeixia.com admin.xiaofeixia.com (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS xiaofeixia.com. 记录当前区域的DNS服务器的名称
A 192.168.206.128 记录主机IP地址
IN MX 10 mail.xiaofeixia.com MX为邮件交换记录,数字越大优先级越低
www IN A 192.168.206.150 记录正向解析www.xiaofeixia.com对应的IP地址
mail IN A 192.168.206.180
ftp IN CNAME www CNAME使用别名,ftp是www的别名
* IN A 192.168.206.249 泛域名解析,"*"代表任意主机名
5.启动服务,
systemctl start named 启动服务
systemctl stop firewalld 关闭防火墙
setenforce 0 关闭安全机制增强功能
name.checkconf -z /etc/named.conf 查看配置文件
tail -f /var/log/messages 启动失败时,通过查看日志文件排错
rndc-confgen -r /dev/urandom -a 当服务启动时卡住,可以执行该命令解决
6.在顾客端的域名解析配置文件中添加DNS服务器地址
方法一:
vim /etc/reslov.conf
nameserver 192.168.206.128 修改完成后立即生效
方法二:
vim /etc/sysconfig/network-scrpits/ifcfg-ens33
DNS1=192.168.206.128
systemctl restart network 修改完成后重启网卡
或则
7.测试DNS解析服务是否成功
四、案例:DNS反向解析
1.更改主配置文件与正向解析相同
2.更改区域配置文件
vim /etc/named.rfc1912.zones
zone "0.206.168.192.in-addr.arpa" IN { 反向解析时,网段地址需要倒过来写
type master;
file "xiaofeixia.com.zone.local"; 指定区域数据文件为"xiaofeixia.com.zone.local;不能和正向文件名相同)
allow-update { none; };
3.备份区域数据文件,更改区域数据配置文件
cd /var/named
cp -p named.localhost xiaofeixia.com.zone.local
vim /var/named/xiaofeixia.com.zone.local
$TTL 1D
@ IN SOA xiaofeixia.com admin.xiaofeixia.com (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS xiaofeixia.com.
A 192.168.206.128
100 IN PTR www.xiaofeixia.com PTR反向指针;反向解析192.168.206.100地址结果为www.xiaofeixia.com;
200 IN PTR mail.xiaofeixia.com PTR反向指针;反向解析192.168.206.200邮箱地址结果为mail.xiaofeixia.com
4.关掉防火墙,重启DNS服务,测试DNS反向解析
五、主从服务器实验:
1.更改主配置文件
下载安装bin软件包,查看配置文件位置
2.更改主区域配置文件
3.更改区域配置文件
4.配置区域数据文件
4.以顾客机身分指定从服务器的DNS地址
5.重启服务
从服务器配置
更改主配置文件
2.更改区域配置文件
3.重启服务,查看从服务器是否将主服务器的区域数据文件备份过来
4.指定从服务器的DNS
5.关闭主服务器,验证从服务器
六DNS分离解析
分离解析:同一个DNS服务器,同一个域名情况下,不同网关进行访问会解析出不同的IP地址
分离解析的域名服务器实际也是主域名服务器,这儿主要是依据不同的顾客端提供不同的域名解析记录,例如来自外网和内网的不同网关地址的顾客机恳求同一域名时,为其提供不同的解析结果
实验环境:1台CentOS7,虚拟机一台win10
1.安装bind服务
2.为网段服务器配置双网卡
3.配置网卡并重启网卡
4.Xshell死机,虚拟机内查看网卡是否更改成功
5.更改区域配置文件
6.更改区域数据文件,备份区域数据文件
7.重启服务,验证结果,
8.内网主机更改仅主机模式,设置内网主机网路适配器IP地址与网段
9.运行cmd查看解析结果为内网地址
总结
通过上述内容和实验,可以了解DNS的工作原理(包含递归和迭代查询),DNS正向解析和反向解析的配置,主从服务器的配置方式,出现主服务器宕机时,从服务器都会顶替工作;分离解析的配置,在生产中用的好多,好多电商就使用这个方式给客人一个完美的体验,内网和外网会共用一个域名