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";         #设置同步的数据文件保存路径
};
 

相关内容

热门资讯

围绕透视问题!福建十三水软件开... 围绕透视问题!福建十三水软件开发(辅助挂)原来是有挂(推荐开挂辅助软件)-哔哩哔哩1、该软件可以轻松...
记者获悉!对战互娱辅助系统(辅... 记者获悉!对战互娱辅助系统(辅助挂)一直是有挂的(分析开挂辅助工具)-哔哩哔哩1、不需要AI权限,帮...
有消息称!极速猜一猜暗堡辅助(... 有消息称!极速猜一猜暗堡辅助(辅助挂)一直确实有挂(正品开挂辅助插件)-哔哩哔哩1、每一步都需要思考...
做出回应!西元文山攻略(辅助挂... 做出回应!西元文山攻略(辅助挂)原来真的是有挂(分享开挂辅助下载)-哔哩哔哩西元文山攻略是一种具有地...
反观!微信欢乐卡五星辅助(辅助... 反观!微信欢乐卡五星辅助(辅助挂)一直真的有挂(详细开挂辅助平台)-哔哩哔哩1、金币登录送、破产送、...
目前!万能脚本辅助器(辅助挂)... 目前!万能脚本辅助器(辅助挂)一贯有挂(正版开挂辅助安装)-哔哩哔哩1、下载好万能脚本辅助器辅助软件...
备受关注的!微乐辅助靠谱麻(辅... 备受关注的!微乐辅助靠谱麻(辅助挂)其实真的是有挂(传授开挂辅助下载)-哔哩哔哩1、起透看视 微乐辅...
目前!上品斗地主游戏辅助(辅助... 目前!上品斗地主游戏辅助(辅助挂)其实有挂(曝光开挂辅助脚本)-哔哩哔哩1、实时上品斗地主游戏辅助开...
为切实保障!哥哥打大a有没有辅... 为切实保障!哥哥打大a有没有辅助(辅助挂)其实确实有挂(教会开挂辅助安装)-哔哩哔哩1、完成哥哥打大...
这一问题亟待解决!三哥玩辅助器... 这一问题亟待解决!三哥玩辅助器(辅助挂)果然真的有挂(带你开挂辅助软件)-哔哩哔哩1、让任何用户在无...