77百科网
当前位置: 首页 生活百科

自建域名dns解析服务器(如何搭建自己的DNS域名解析服务器)

时间:2023-08-16 作者: 小编 阅读量: 2 栏目名: 生活百科

最近有粉丝私信我,很多做技术开发的工程师在开发某个程序时,或者测试人员在做程序测试时,经常需要测试DNS域名解析,那么今天就为大家介绍一下如何搭建自己的DNS域名解析服务器。本文也以此软件来介绍DNS服务。BIND支持先今绝大多数的操作系统。BIND服务的名称称之为named。未授权前:授权:4、启动bind服务,servicenamedstart,在存放zone文件夹(/var/

最近有粉丝私信我,很多做技术开发的工程师在开发某个程序时,或者测试人员在做程序测试时,经常需要测试DNS域名解析,那么今天就为大家介绍一下如何搭建自己的DNS域名解析服务器。

如果你对DNS域名解析原理还不够了解,建议你首先去阅读一下我上篇关于DNS基本概念的讲解文章《DNS域名解决原理你真的了解吗?》

现在我们进入主题,Linux上搭建DNS服务的软件有bind9、NSD(Name server domain)和unbound,其中bind9是市场占有率最高的软件。本文也以此软件来介绍DNS服务。bind实现DNS的最佳最详细说明文档是"DNS & BIND"和"Bind97 Manual",网上都有中文版本的资源,推荐大家可以去读一读。

一、BIND简介

现在使用最为广泛的DNS服务器软件是BIND(Berkeley Internet Name Domain),最早有伯克利大学的一名学生编写,现在最新的版本是9,有ISC(Internet Systems Consortium)编写和维护。

BIND支持先今绝大多数的操作系统(Linux,UNIX,Mac,Windows)。

BIND服务的名称称之为named。

DNS默认使用UDP、TCP协议,使用端口为53(domain),953(mdc,远程控制使用)。

二、BIND安装

本例使用的环境是CentOS 7.0的Linux操作系统(非CentOS 7.0系统,安装会有所区别),所以直接采用命令: 

yum install -y bind bind-chroot bind-utils

其中bind-chroot和bind-utils是bind的相关包。

二、BIND配置

1、BIND配置文件保存在两个位置: 

/etc/named.conf- BIND服务主配置文件/var/named/- zone文件(域的dns信息)

如果安装了bind-chroot(其中chroot是 change root 的缩写),BIND会被封装到一个伪根目录内,配置文件的位置变为: 

/var/named/chroot/etc/named.conf- BIND服务主配置文件/var/named/chroot/var/named/- zone文件 

 chroot是通过相关文件封装在一个伪根目录内,已达到安全防护的目的,一旦程序被攻破,将只能访问伪根目录内的内容,而不是真实的根目录。

2、BIND安装好之后不会有预制的配置文件,但是在BIND的文档文件夹内(/usr/share/doc/bind-9.9.4),BIND为我们提供了配置文件模板,我们可以直接拷贝过来: 

cp -r /usr/share/doc/bind-9.9.4/sample/etc/* /var/named/chroot/etc/ cp -r /usr/share/doc/bind-9.9.4/sample/var/* /var/named/chroot/var/

3、配置BIND服务的主配置文件(/var/named/chroot/etc/named.conf),命令:

vim/var/named/chroot/etc/named.conf;

内容很多使用简单配置,删除文件中logging以下的全部内容,以及option中的部分内容,得到如下配置:

/*Sample named.conf BIND DNS server 'named' configuration filefor the Red Hat BIND distribution.See the BIND Administrator's Reference Manual (ARM) for details about the configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html*/options{// Put files that named is allowed to write in the data/ directory:directory"/var/named"; // "Working" directory//listen-on port 53{ any; };listen-on port 53{ 127.0.0.1; };//listen-on-v6 port 53{ any; };listen-on-v6 port 53{ ::1; }; };

4、在主配置文件(/var/named/chroot/etc/named.conf )中加入,zone参数:

 5、新建example.net.zone文件,example.net的域名解析文件,zone文件放在/var/named/chroot/var/named/下,zone文件可以以/var/named/chroot/var/named/named.localhost为模板。命令:

cp /var/named/chroot/var/named/named.localhost /var/named/chroot/var/named/example.net.zone

文件example.net.zone的内容如下:

6、禁用bind默认方式启动,改用bind-chroot方式启动。命令如下:

[root@iZ2806l73p6Z named]# /usr/libexec/setup-named-chroot.sh /var/named/chroot on[root@iZ2806l73p6Z named]# systemctl stop named[root@iZ2806l73p6Z named]# systemctl disable named[root@iZ2806l73p6Z named]# systemctl start named-chroot[root@iZ2806l73p6Z named]# systemctl enable named-chroot[root@iZ2806l73p6Z named]#

图:

注意:如果是CentOS 6.5的系统,这个步骤回有所区别,直接使用默认的service named start 启动服务,bind就直接运行在chroot包中,如下图:

7、查看是否启动,命令:

ps -ef|grep named

 8、测试DNS服务,本例在本机上测试,也可在其他电脑上测试,修改DNS服务的ip地址即可(命令:vim /etc/resolv.conf ),然后使用命令dig(命令:dig www.example.net)测试。

内容如下:

测试结果:

注:非本机测试需要修改主配置文件named.conf,允许任何ip访问,然后重启服务器。

三、BIND从服务器

从服务器就是在bind的主配置文件中添加从域example.net的配置信息即可:

1、配置文件位置

/var/named/chroot/etc/named.conf

2、在主配置文件中添加一行域的zone定义:

zone "example.net" {type slave;masters { 120.27.99.64; };file "slaves/example.net.zone";

 3、由于bind是以named用户来运行的,所以要给存放zone文件的文件夹(/var/named/chroot/var/named/slaves)授权。未授权前:

授权:

4、启动bind服务,service named start,在存放zone文件夹(/var/named/chroot/var/named/slaves)中查看,已经把example.net.zone文件下下来了。

5、修改DNS服务器ip地址,测试dig www.example.net。

四、缓存服务器及转发服务器

一个DNS服务器可以即不是某个域的master服务器,也不是某个域的slave服务器,一个服务器可以不包含任务域的配置信息,它将接手到所有DNS查询进行递归解析,将解析结果返回给查询客户端,并且将查询结果缓存下来,这样的DNS服务器称之为caching name server。

通常一个局域网中配置缓存服务器是为了加速网络访问。

也可以为缓存服务器配置一个上游DNS服务器地址,缓存服务器可以给客户提供一个上游DNS服务器的地址,我们可以通过 以下设置完成:

在主配置文件中的option中加入:

forwarders { 192.168.0.168;};

还可以通过一下选项让服务器转发所有DNS查询到forwarders服务器:

在主配置文件中的option中加入:

forward only;

到此DNS域名解析搭建教程结束,你学会了吗?

如果你喜欢本文章,请帮忙关注、转发、点赞,本人将定期更新一些技术“干货”分享给大家,希望能帮助大家解决工作中的一些问题,谢谢!

下期预告:

《如何开发自己的DNS服务系统》

    推荐阅读
  • 云顶之弈新赛季小小英雄展示(三个小小英雄上线)

    随着云顶之弈版本的更新,目前云顶之弈的小小英雄已经更新到了第七个系列。小妖的形象比较调皮可爱,前段时间网爆它的初稿,看起来就像个粘人的小妖精。值得一提的是它的形象和霞有点相似,小妖有五个皮肤类型。虽然官方还没有正式上线,但是从曝光的图片来看,分别对应了霞、娜美、吸血鬼和树女以及洛的皮肤。尤其是小妖的美人鱼皮肤锦鲤,就连动作都和娜美鱼人皮肤相对应。

  • 七年级语文教学工作总结范文(七年级语文教学工作总结怎么写)

    教学方法要稳中求变。例如每一天的预习,需要有必须的方法和规律,让学生明白应当做什么。教学主体要调动激活。《口技》则能够让班上有这方面特长的同学去施展自我的才能,在欢乐的同时了解什么是口技。《变色龙》则能够让学生自我去分主角读,然后自我选出最佳搭档来展示给同学们。

  • 漏斗花怎么摘心(月季花怎么打顶摘心)

    漏斗花也叫做耧斗菜,生长于海拔200-2300米的山地路旁、河边或潮湿草地,有较好的观赏价值,亦可入药。将剪刀消毒后,将主枝条的心叶剪掉,放在通风、阴凉处恢复伤口,一般半个月左右即可搬到室外散光的地方养护。平时也要定期进行修剪,将多余的侧枝、病枝条等剪掉,避免和主茎争抢养分。

  • 梦见冬瓜什么意思(梦见冬瓜的寓意)

    梦见冬瓜什么意思生意人梦到冬瓜,代表梦者最近会走财运,商业行动会越来越顺畅,能积攒不少财富。男性梦到冬瓜,代表梦者事业兴旺,如果是上班族的话,会得到上司的另眼相看,职位会上升;梦者进行创业的话,也容易获得成功。老年人梦到冬瓜,代表梦者德高望重,会获得周围人的信赖与敬重,成为家庭中的主导人物。梦到食用冬瓜,梦者会走运,官运亨通并且获得经济收益,也比较容易得到其他人的信赖,很有威信。

  • 米其林哪个系列高端(米其林是操控代名词)

    两者零售价格仅仅相差6元。是常规的“双层胎体”结构,结实程度因此而有保证。继续观察马牌TC6,发现它的胎面骨架层数为5层,胎侧为2层。当然这与它拥有超过11公斤的“雄壮”体重是吻合的。首先主排水沟的设计,两者存在较大差异。两者排水沟的深度差距不大,而XM2排水沟的宽度明显大于TC6。这种花纹可以大大降低轮胎滚动阻力并减少噪音产生。米其林XM2的胎面硬度为71HA,而胎侧硬度为53HA;马牌TC6的胎面硬度为68.5HA,而胎侧硬度为50HA。

  • 酸木瓜如何保存(酸木瓜怎样保存)

    以下内容希望对你有帮助!酸木瓜如何保存在低温下可延长贮藏期而不至腐败。可用另一包装形式,如抽真空包装。巴氏杀菌即80℃下3—5分钟便可得以保存半年至九个月以上。酸木瓜是香港四五十年代非常普通的小吃,在街边的推车仔档可以买到。老香港的酸木瓜全部自家以白醋和白糖腌的,卖过两日的就弃掉。以保留蔬菜的鲜甜味。

  • 疯狂开食菜谱大全(神十四乘组专属菜谱揭秘)

    航天员在轨的太空食谱首先要考虑的是营养搭配。在合理的搭配基础上,航天员中心还会根据每个乘组成员的个人口味进行个性化的调配。航天员科研训练中心天舟四号发射任务试验队责任总师王春慧:天舟四号上行的这些食品里边,蔬菜食品有所增加,这也是神十二、神十三任务的情况进行的一次优化。除了品种上的优化,天舟四号上运送的食品也多了几种新类型。

  • 小孩子的逻辑思维游戏(开发孩子逻辑思维的游戏)

    七巧板七巧板是一款拼图游戏,以各种不同的拼凑来拼搭不同的图案。七巧板可以培养孩子对于形状的概念,手眼协调能力,视觉的记忆和分辨能力,还可以帮助他们领悟到图形的分割与合成。数独数独是世界上公认的,逻辑思维训练最有效的途径之一。对于学龄前的孩子,家长可以让他们从图形数独开始练习。这个家长可以从网上下载或者买一些类似的书籍即可。逻辑思维虽然有着先天天赋的存在,但是更重要的来自于后天训练。

  • 精算学专业学什么课程(精算学专业课程介绍)

    下面更多详细答案一起来看看吧!精算学专业学什么课程数学与统计学,前边讲到了,计算是基于统计学的计算,该专业学生要学习数学分析、线性代数、概率论与数理统计、统计学、实用回归分析、多元统计分析、时间序列分析等课程。经济学,要学习宏观、微观经济学,会计学,金融学,计量经济学等。

  • 在家怎么做好吃的炸萝卜丸子(炸萝卜丸子怎么做)

    原料准备:萝卜500克,面粉300克,淀粉300克,肉馅300克,鸡蛋1个,葱姜蒜末15克,白糖5克,味精3g,鸡粉3克,十三香3克;,接下来我们就来聊聊关于在家怎么做好吃的炸萝卜丸子?以下内容大家不妨参考一二希望能帮到您!