DNS服务器
DNS的作用:
DNS系统在网络中维护地址数据库,其中记录着各种主机域名及IP地址的对应关系,以便于客户程序提供正向或反向的地址查询服务,及正向解析与反向解析
1>正向解析:根据域名查IP地址
2>反向解析:根据IP查域名,常用于反垃圾邮件的验证等
DNS端口号:
TCP:53端口 - - - - - - - - - - - - - - 主从DNS数据同步
UDP:53端口 - - - - - - - - - - - - - - 域名解析
DNS服务器的常见分离:
1>缓存域名服务器:只提供域名解析结果
2>主域名服务器:维护某一个DNS区域地址数据库,对其中的解析记录具有自主控制权。
3>从域名服务器:用于DNS服务器的热备份
DNS服务器的查询模式
递归查询:当客户机向DNS服务器发出解析请求,DNS服务器从服务器本地缓存中查询出结果,反馈给客户机,此过程称为递归查询。
迭代查询:当客户机向DNS服务器发出解析请求,DNS服务器从服务器本地缓存中查询没有结果,此时DNS服务器以DNS客户的身份向其他DNS服务器发送解析请求或向根域名服务器发送请求,次过程称为迭代查询。
DNS根服务器分布:
全球共有13台根域服务器,分别位于。
主根服务器:美国1个
辅根服务器:美国9个,瑞典1个,荷兰1个,日本1个
DNS解析过程:
例:客户机通过浏览器访问www.baidu.com
1>客户机首先查询浏览器的中是否存在对应域名
2>客户机查询本地hosts文件中是否存在对应域名
3>客户机向本地DNS服务器发送解析请求
4>本地DNS服务器查询自身,查询不到将解析请求交给根域名服务器进行迭代查询
5>根域名服务器在吱声的记录中查询,会查询到.com的DNS服务器,并将结果返回给本地服务器
6>本地DNS服务器将解析请求发给管理.com这个域的服务器
7>com的DNS服务器查找到baidu.com的DNS服务器并将结果再次交给本地DNS服务器
8>本地DNS服务器将解析请求交给baidu.com的DNS服务器,查询www.baidu.com的记录
9>baidu.com的DNS服务器查到www.baidu.com的记录后,把解析的地址返回给本地DNS服务器
10>本地DNS服务器将解析结果返回给客户端的同时,把这条解析结果记录在自身的缓存中,待下次查询时,可以直接返回解析结果
配置文件:
options —— —— —— 全局配置
logging —— —— —— 日志配置
zone —— —— —— 区别配置
include —— —— —— 扩展配置
安装DNS软件包:
yum -y install bind bind-utils bind-chroot
cp /etc/named.conf{,.ori}
部署DNS缓存服务器:
vim /etc/named.conf 13 listen-on port 53 { any; }; 21 allow-query { any; };
解析记录:
记录 |
介绍 |
SOA |
起始授权记录 |
NS |
管理这个域的记录 |
MX |
邮件交换记录 |
A |
域名与IP对应的记录 |
CNAME |
别名记录 |
* |
泛解析,特殊的A记录(找不到精确对应的 A 记录时,使用“*”进行匹配) |
PTR |
反向解析记录,IP对应域名 |
构建主DNS服务器:
vim /etc/named.conf
options { listen-on port 53 { any; }; directory "/var/named"; allow-query { any; }; recursion yes; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "user.com" IN { 正向解析 type master; file "user.com.zone"; allow-transfer { 200.200.2.5; }; }; zone "2.200.200.in-addr.arpa" IN { 反向解析 type master; file "200.200.2.arpa"; allow-transfer { 200.200.2.5; }; };
cd /var/named/
cp -p named.empty user.com.zone 这个名字取决于上边配置文件里写的正向解析的文件所在位置
vim user.com.zone
$TTL 1D @ IN SOA user.com rname.invalid. ( 20210202 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS ns1.user.com. NS ns2.user.com. MX 10 mail.user.com. ns1 A 200.200.2.5 ns2 A 200.200.2.10 www A 200.200.2.22 mail A 200.200.2.23 news A 200.200.2.55 bbs CNAME news * A 200.200.2.9
named-checkzone user.com.zone user.com.zone
cp -p user.com.zone 200.200.2.arpa
vim 200.200.2.arpa
$TTL 1D @ IN SOA user.com rname.invalid. ( 20210202 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS ns1.user.com. NS ns2.user.com. 5 PTR ns1.user.com. 10 PTR ns1.user.com. 20 PTR www.user.com. 30 PTR mail.user.com. 22 PTR news.user.com. 32 PTR bbs.user.com. 33 PTR www.user.com.
named-checkzone 2.200.200.in-addr.arpa 200.200.2.arpa
从DNS将主的DNS配置文件复制一份,将类型的master换成slave与来头的IP换掉就可以
检测:
named-checkconf /etc/named.conf 检测语法 systemctl start named 启动服务 vim /etc/resolv.conf 修改使用的DNS服务器
# Generated by NetworkManager
nameserver 本机IP地址
检测DNS正向解析与反向解析
nslookup bbs.user.com
Server: 200.200.2.99
Address: 本机IP
nslookup 200.200.2.5