目录
一、DNS简介
DNS是“域名系统”的英文缩写。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
DNS服务使用TCP和UDP的53端口,TCP的53端口用于连接DNS服务器,UDP的53端口用于解析DNS。
每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符
二、DNS作用
正向解析:根据域名解析ip
反向解析:根据ip解析域名
三、根据域名解析出ip地址的两种方法
1、使用主机本地hosts文件 (优先级高,会先经过他)
2、使用DNS进行解析
四、DNS的端口
1、dns使用tcp的53号端口 用于连接dns
2、dns使用udp的53号端口 用于解析dns
五、域名结构
以http://www.sina.com.cn./为例
http://主机名.子域.二级域.顶级域 根域/
树状结构 以根域为起点 .点代表根域
六、DNS域名解析的工作原理
客户端会先将解析委派给本地缓存域名服务器, 如果本地域名服务器有相关的信息时候则直接返回给客户端,如果没有的话 会将dns解析请求发送给根域名服务器进行解析 根域服务器会根据域名请求发送给对应的顶级域进行解析 顶级域名也会根据二级服务器或子域在将dns发送给相应的子域进行解析 最后子域服务器根据域名的主机名解析出对应的ip 返回给本地域名服务器和客户端
1 dns域名解析的查询方式
1、递归查询:本地域名服务器会将dns解析请求发送给根域服务器 》》根域服务器在将请求发给相对应的域名服务器 》》最后在返回给本地域名服务器
2、迭代查询:本地域名服务器会将dns请求发送给根域名服务器 根域服务器会返回消息给本地域名服务器 本地域名服务器在将请求发送给顶级域服务器 顶级域服务器在将消息返回给本地服务器并告知找相对应的二级服务器 或子域名 子域名服务器解析出地址后返回给本地域名服务器
总结:递归查询就是一层一层的往下解析 最后返回给本地域名服务器、
迭代查询就是一去一回 一去一回 一去一回 最后解析出地址后返回给本地域名服务器
七、配置DNS
1、正向解析
需要的软件是 BIND
然后 vim /etc/named.conf里面进行配置
然后 vim /etc/named.rfc1912.zones 进行配置
然后 cd/var/named里面 ll查看详细信息
到vim/xy101.com.zone里面配置
然后systemctl restart named 重新开启
systemctl enabl named 自启动
最后测试 新打开一台机器
vim /etc/resolv.conf
把 地址改成服务器ip
然后测试
2、反向解析
然后 cd /var/named/
cp -p xy101.com.zone xy101.com.zone.local
复制之前的文件 后面加个 . local
vim xy101.com.zone.local 修改配置
然后重新启动一下服务
3、主从服务器配置
主从服务器都下载 bind 软件包
然后修改 vim /etc/named.conf 主从都修改 成any
跟正反解析配置一样
上面的主从配置一样
然后配置主服务器:
然后主服务器 到vim /etc/named.rfc1912.zones
剩下的配置 都跟正反向配置一样
正向:
反向:
cp -p xy101.com.zone xy101.com.zone.local
这时候主服务器就配置好了
从服务器配置
到named.rfc 里面配置
注意:上面的 master 改成 masters 然后 20.0.0.100;后面空格一下
改成 masters {20.0.0.100; };
然后在主服务器测一下 先把vim /etc/resolv.conf改成主服务器的ip
这时候从服务器 文件就同步过来了
然后找个客户端测试
vim /etc/resolv.conf 第一行改成主服务器ip 第二行改成从服务器ip
测试
这时候出从服务器都设置好了
主服务器挂掉后 从服务器没挂 还是可以解析的