DNS产生的背景 

客户端要访问某服务器的服务,需要知道其IP地址。

IP地址,以达内慕课网为例:203.107.45.167

客户端访问—203.107.45.167—>网页服务器

存在问题:IP地址不好记。

DNS服务器提供解析 域名<——>IP 的功能。

客户端访问—tmooc.cn—>DNS服务器—203.107.45.167—>网页服务器

DNS是什么

 (Domain Name System)域名系统  

端口:53  协议:TCP/UDP  

它有一个将域名和IP地址相互映射的分布式数据库

DNS的功能 

能够使人更方便地访问互联网

两种解析:  

正向解析:   域名  ——>      IP  应用场景:用户访问网站

反向解析:  IP      ——>      域名 应用场景:邮件域检测  

客户端使用域名获取IP地址的过程

1.查询本机缓存,优先级最高。曾经解析过的域名缓存有可能会存在系统中。浏览器缓存——>系统DNS缓存

2.查询HOSTS。可以手动添加域名和IP地址的映射关系。

3.通过网络发送解析请求。当以上两个步骤都没有找到想要的信息,就尝试找DNS服务器。(路由器中可能还有缓存)

递归查询:客户端发送请求,首选DNS服务器代为跑腿找IP。

迭代查询:客户端发送请求,首选DNS服务器告诉下一个该找哪个DNS服务器,客户端自己再去找。 

DNS服务器分布式结构

根域名: 域名树的顶端,一个点”.”

一级域名: 通常表示类型、国家、组织,.cn .us…

二级域名: 通常表示组织、公司、个人,baidu.cn

三级域名(子域名): 用于进一步划分域名,test.nb.cn

所有的域名都必须要以点作为结尾,浏览器一般会自动补全

Linux运维-DNS基础_DNS

DNS服务器工具 

BIND(Berkeley Internet Name Daemon)

–伯克利 Internet 域名服务

–主要执行程序:/usr/sbin/named

–DNS协议默认端口:53

–运行时的身份:named

主配置文件:/etc/named.conf #设置负责解析的域名

地址库文件:/var/named #完全合格的域名与IP地址对应关系 

配置思路 

1.装包

yum -y install bind(主程序)  bind-chroot(牢笼政策,创建一个隔离的文件系统环境)

2.配置(注意权限)

主配置文件:/etc/named.conf

地址库文件:/var/named/<域名>.zone

3.启动服务

systemctl enable named --now 

主配置文件:/etc/named.conf 

其他设置不写就是默认

options {
directory "/var/named"; #定义地址库文件存放路径

};

zone "tedu.cn" IN { #定义负责的解析tedu.cn域名

type master; #权威主DNS服务器

file "tedu.cn.zone"; #地址库文件名称

};

地址库文件:/var/named/<域名>.zone 

cp  -p  named.localhost  <域名>.zone    #在地址库路径复制模板,使用-p保持权限不变。

           NS    server      #域名服务器记录:声明DNS服务器

server   A   192.168.88.240    #正向解析记录

泛域名:

*(任意);域名.(FQDN);

Linux运维-DNS基础_DNS_02    A      192.168.1.$ (自动生成stu1-50的解析);

abc    AAAA  ::   #IPV6正向解析记录

xyz   CNAME   abc    #域名别名记录 

客户端测试 

1.在/etc/resolve.conf中写入dns服务器

nameserver <dns服务器ip地址>  

2.测试指令

nslookup    <域名>

host           <域名>