Linux:主从DNS域名解析服务器
创始人
2025-01-19 11:32:19
0

一、BIND域名服务基础

根据域名查找出IP地址的流程:

  • 先使用主机本地的hosts文件查找相关记录
  • 再使用DNS服务进行解析

域名结构是一种树形结构,以 根域. 为起点
        主机名.子域.[二级域].顶级域.
                                   根域 

DNS域名的功能:

  • 正向解析:根据域名查找对应的IP地址
  • 反向解析:根据IP地址查找对应的域名

DNS的端口: TCP/53(连接DNS服务器)     UDP/53(解析DNS)


DNS域名解析工作原理:

客户端会先将DNS解析请求发送给本地缓存域名服务器,如果本地缓存域名服务器有相关记录则直接返回给客户端,否则会将DNS解析请求发送给根域名服务器进行解析,根域名服务器会根据域名的顶级域再将DNS解析请求委派给相对应的顶级域名服务器进行解析,顶级域名服务器也会根据域名的二级域或子域再将DNS解析请求委派给相对应的二级域名或子域名服务器进行解析,最后子域名服务器会根据域名的主机名解析出相对应的IP地址,再返回给本地缓存域名服务器和客户端。


DNS域名解析查询方式:


递归查询:(简单来说就是将DNS解析请求一探到底,再逐层返回)
本地域名服务器先将DNS解析请求发送给根域名服务器,根域名服务器再将解析请求转发给相对应的顶级域名服务器,顶级域名服务器再将解析请求转发给相对应的二级域名或子域名服务器,最后子域名服务器会根据域名的主机名解析出相对应的IP地址后,再逐层返回给本地域名服务器。

迭代查询:(简单来说就是每次DNS解析请求都会用相对应的响应回复)
本地域名服务器先将DNS解析请求发送给根域名服务器,根域名服务器会返回响应消息给本地域名服务器并告知去找相对应的顶级域名服务器;
本地域名服务器再将DNS解析请求发送给相对应的顶级域名服务器,顶级域名服务器会返回响应消息给本地域名服务器并告知去找相对应的二级域名或子域名服务器
最后本地域名服务器将DNS解析请求发送给相对应的子域名服务器,子域名服务器会根据域名的主机名解析出相对应的IP地址后,直接返回给本地域名服务器

二、使用BIND构建域名服务器


搭建本地DNS服务器
1)初始化系统
2)安装 bind 软件包
3)修改主配置 /etc/named.conf      
listen-on port 53 { any; };      #设置监听IP地址和端口
allow-query     { any; };        #设置允许访问DNS服务器的客户端

4)修改区域配置文件 /etc/named.rfc1912.zones
zone "xy101.com" IN {                     #正向解析配置
        type master;
        file "xy101.com.zone";            #设置区域数据文件名称
};

zone "80.168.192.in-addr.arpa" IN {       #反向解析配置,地址倒写
        type master;
        file "xy101.com.zone.local";
};

5)修改区域数据文件 /var/named/xy101.com.zone
cd /var/named
cp -p named.localhost xy101.com.zone
vim xy101.com.zone
....
        NS      xy101.com.            #设置当前区域名称
        A       192.168.80.20         #设置DNS服务器IP地址
www  IN A       192.168.80.30         #设置正向解析的主机名与IP地址的映射记录
xxx  IN CNAME   www                   #设置主机名 xxx 是 www 的别名

vim xy101.com.zone.local
....
30  IN PTR    www.xy101.com.         #设置IP地址与域名的反向解析记录

5)重启named服务
6)客户端设置DNS服务器地址 /etc/resolv.conf ,并验证 nslookup  host  dig


搭建主从域名服务器
#主服务器配置
vim  /etc/named.rfc1912.zones                  
zone "xy101.com" IN {
        type master;
        file "xy101.com.zone";
        allow-transfer { 192.168.80.30; };     #允许从服务器同步数据文件
};

#从服务器配置(不需要配置区域数据文件)
vim  /etc/named.rfc1912.zones 
zone "xy101.com" IN {
        type slave;                           #设置为从服务器类型
        masters { 192.168.80.20; };           #指定主服务器地址
        file "slaves/xy101.com.zone";         #设置同步的数据文件保存路径
};
 

相关内容

热门资讯

二分钟脚本!(海南麻将)原来真... 二分钟脚本!(海南麻将)原来真实是有挂,海南麻将是有挂辅助挂吗,详细教程(证实有挂)-哔哩哔哩;一、...
5分钟分钟!WPK最新版其实确... 5分钟分钟!WPK最新版其实确实用用挂的,菠萝德州其实真的是有挂,详细教程(2025已更新)(哔哩哔...
四分钟猫腻!(德州版wpk)确... 您好,德州版wpk这款游戏可以开挂的,确实是有挂的,需要了解加微【841106723】很多玩家在这款...
八分钟最新款!(新Wepoke... 八分钟最新款!(新Wepoke)原来一直都是有挂,新Wepoke是有挂猫腻吗,详细教程(有挂助手)-...
十分钟分钟!多乐贵阳捉鸡麻将其... 十分钟分钟!多乐贵阳捉鸡麻将其实有挂猫腻,多乐贵阳捉鸡麻将2024已更新详细教程(2024已更新)(...
四分钟分钟!紫阳麻将有挂确实有... 四分钟分钟!紫阳麻将有挂确实有辅助挂吗,紫阳麻将2025已更新详细教程(2025已更新)(哔哩哔哩)...
三分钟透明!德扑ai助手,微扑... 亲,微扑克这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总是...
十分钟轻量版!(pokerti... 十分钟轻量版!(pokertime)确实真的是有挂吗,pokertime详细教程(有挂秘籍)-哔哩哔...
5分钟输赢!(老牌友河南麻将)... 5分钟输赢!(老牌友河南麻将)其实是有挂的,老牌友河南麻将有挂确实有辅助挂吗,详细教程(有挂方法)-...
1分钟分钟!微扑克wpk原来真... 1分钟分钟!微扑克wpk原来真实是有挂,镇雄关春天是有挂猫腻吗,详细教程(2023已更新)(哔哩哔哩...