域名系统(DNS)
dns (domain name server/system)
1.基本信息
网络中数据通信依赖ip地址
测试:手动将dns服务地址改为空值,通过ip和域名分别测试网络的联通性
fqdn 完全域名(完全正式域名标识)
.
www baidu com .
www |
baidu |
com |
. |
主机名称(二级域名) |
一级域名 |
*域名 |
跟域 |
一些*域名的类别含义:(但没有明确限制)
解析顺序:从右往左
域名用.分层,每层可包含63字节,最多可有127层
但所有层加在一起,不得超过256个字节
域名允许使用:大小写a-z,数字0-9及-连接线,但是不区分大小写
例如:www.baidu.com/www.baidu.com判断为相同
作用:定位主机(将域名解析成为ip地址)
dns解析查询命令nslookup
格式:nslookup
domainname
例如:nslookup
birdteam.net
dns的端口:53
2.专有名词
主dns 提供域名解析服务 所发布域名具备权威性
辅dns 配合主dns使用 数据是从主dns同步
dns服务器 提供域名解析的服务器 存放解析数据
dns缓存服务器 解析客户机的请求 并将结果缓存到服务器
资源记录
dns的数据类型 各种解析类型
zone区文件 dns的解析文件 用于存放资源记录
查询模式:
递归: 在收到客户机请求之后,必须告诉客户机一个准确的结果
如果没有相关数据,就去到其它服务器询问
迭代: 在受到客户机请求之后,不会返回结果,而是告诉客户机另一台服务器的地址
客户机通过该地址去问另一台服务器,直到查询到最终的结果
3.资源记录
soa (起始授权记录) 有且仅有一个,区文件的全局设置
a (域名解析记录) 用于域名解析成ip
aaaa (域名解析记录) 用于域名解析成ipv6(无用)
cname (别名解析记录) 用于域名解析域名
mx (邮件解析记录) 可以解析成ip或者域名
ns (授权服务记录) 用于指定域名解析授权的服务器
4.相关文件
主配置文件/etc/named.conf
区文件目录/var/named/
区文件模板文件/var/named/named.localhost
注意:
如果安装了chroot模块,主配置文件和区文件目录的路径会改变为
主配置文件/var/named/chroot/etc/named.conf
区文件目录/var/named/chroot/var/named/
查询流程:如www.baidu.com
客户机通过域名访问网站时,需要先将域名解析成ip地址才可访问,所以会根据本机设置的dns服务器地址查询域名解析。
客户机将域名解析请求信息发送给dns,服务器收到信息后,查询本地缓存中是否有匹配信息,如果有则直接返回。
如果没有,则询问根,com域名的解析地址。
然后根据根服务器返回信息,再次询问com服务器,baidu服务器地址。
根据com服务器返回信息,询问baidu服务器www的解析地址。
最终将此解析信息返回给客户端,同时保存一份到本地缓存中,以备下次查询使用。
软件名称:bind
服务名称:named
软件版本:4 8 9
安装命令:yum -y install bind
启动命令:service
named restart
5.安装步骤
1、安装
#yum
-y install bind
查询#rpm -qa | grep bind
2、主配文件
#vim /etc/named.conf
options
{
directory “/var/named”;
};
zone “birdteam.net” {
type master;
file “birdteam.net.zone”;
};
3、配区文件
#cd /var/named
#cp -p named.localhost birdteam.net.zone
#vim birdteam.net.zone
复制模板文件,注意权限。cp -p
①掐头去尾
②@改域名
将所有的@改成要解析的域名
(注意:域名后面加根域“.”,区文件中,“@”代表本机域名)
邮箱的@要用“.”代替,其中 rname.invalid.是邮箱
a后写ip
③添加解析
主机名的几种添加方式:
④启动服务
systemctl start named.service
或者#service named restart
⑤测试
vim /etc/resolv.conf
将本地的dns 改成 127.0.0.1
然后输入以下命令验证:
nslookup birdteam.net
nslookup a.birdteam.net
nslookup b.birdteam.net
nslookup c.birdteam.net