教你使用Ubuntu搭建DNS服务器


Posted in Servers onSeptember 23, 2022

本例是在ubuntu18.04上进行的,其他版本的ubuntu同样类似!

一、重点说明/etc/bind/named.conf.options配置文件

在进行bind9服务器配置时,/etc/bind/named.conf.options是十分关键的配置文件,它决定着DNS服务器是否可以正常工作。

重点解释第30行:listen-on port 53 { 192.168.110.6; };

这行代码指定了bind9服务器的监听端口号为53,监听的ip的地址为本机的IP地址。这里的IP地址一定是要注意,这个IP是本机网址所配置的IP。不用NAT所用的公网IP。只能是网卡实际配置的IP(即ifconfig显示的IP),不管此IP是公网IP还是内网。

我们知道,通常情况下,即使是公网环境下,服务器也是NAT后面,所以服务器配置的IP地址仍然是内网IP。所以我想说的就是,第30行配置的IP就是网卡配置的IP,不用管这个IP是公网还内网。所以图1中的IP必须与图2中的IP保持一致。

教你使用Ubuntu搭建DNS服务器

图1. /etc/bind/named.conf.options配置信息

教你使用Ubuntu搭建DNS服务器

图2. ifconfig显示网卡配置信息

配置完成以后,查看bind9的端口监听情况:netstat -anp | grep 53

教你使用Ubuntu搭建DNS服务器

这里的正确显示了bind9可以正常监听53端口。

如果第30行配置的IP地址不是本机网卡的IP地址,那么bind9会无法正常监听,也就不能正常提供DNS服务了。

从上图可以看出systemd-resolved服务占用了53端口,但它监听的IP地址与bind是不冲突的,所以配置bind9时是完全不用管systemd-resolved的(不用关闭它),也不用管它的配置文件/etc/resolv.conf。只要正确配置bind9的配置文件/etc/bind/named.conf.options就可以了。

二、查看服务状态、打开/关闭服务等命令使用

#启动bind9有两个:
/etc/init.d/bind9 restart
/usr/sbin/named
systemctl start bind9
 
#查看bind9启动状态,如果没有正常启动,它会显示错误在哪里,比如配置信息哪里错了
systemctl status bind9
 
#配置开机自启动或关闭自启动
systemctl enable bind9
systemctl disable bind9
 
#查看bind服务器状态
sudo rndc status
 
#重启网络服务
sudo service network-manager restart
sudo systemctl restart networking.service
 
#查看ubuntu自带的resolve状态
systemd-resolve --status
 
#重启ubuntu自带resolve
systemctl restart systemd-resolved

到此这篇关于Ubuntu搭建DNS服务器的文章就介绍到这了,更多相关Ubuntu搭建DNS服务器内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
Nginx访问日志及错误日志参数说明
Mar 31 Servers
Nginx配置80端口访问8080及项目名地址方法解析
Mar 31 Servers
关于Nginx中虚拟主机的一些冷门知识小结
Mar 03 Servers
Nginx动静分离配置实现与说明
Apr 07 Servers
阿里云k8s服务升级时502错误 springboot项目应用
Apr 09 Servers
如何Tomcat中使用ipv6地址
May 06 Servers
讨论nginx location 顺序问题
May 30 Servers
Linux中文件的基本属性介绍
Jun 01 Servers
shell进度条追踪指令执行时间的场景分析
Jun 16 Servers
解决Git推送错误non-fast-forward的方法
Jun 25 Servers
Windows server 2003卸载和安装IIS的图文教程
Jul 15 Servers
nginx访问报403错误的几种情况详解
Jul 23 Servers
windows server2012 R2下安装PaddleOCR服务的的详细步骤
Apache SkyWalking 监控 MySQL Server 实战解析
Sep 23 #Servers
服务器nginx权限被拒绝解决案例
Sep 23 #Servers
Fluentd搭建日志收集服务
Sep 23 #Servers
Flink 侧流输出源码示例解析
Sep 23 #Servers
修改Nginx配置返回指定content-type的方法
Sep 23 #Servers
Nginx如何配置多个服务域名解析共用80端口详解
Sep 23 #Servers
You might like
PHP判断搜索引擎蜘蛛并自动记忆到文件的代码
2012/02/04 PHP
PHP实现微信公众平台音乐点播
2014/03/20 PHP
yii实现创建验证码实例解析
2014/07/31 PHP
老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略
2016/03/20 PHP
phpcmsv9.0任意文件上传漏洞解析
2020/10/20 PHP
JavaScript 给汉字排序实例代码
2008/06/28 Javascript
让网页根据不同IE版本显示不同的内容
2009/02/08 Javascript
Javascript学习笔记之 对象篇(三) : hasOwnProperty
2014/06/24 Javascript
js读取json的两种常用方法示例介绍
2014/10/19 Javascript
JavaScript函数详解
2014/11/17 Javascript
nodejs通过phantomjs实现下载网页
2015/05/04 NodeJs
JQuery替换DOM节点的方法
2015/06/11 Javascript
js实现添加可信站点、修改activex安全设置,禁用弹出窗口阻止程序
2016/08/17 Javascript
使用contextMenu插件实现Bootstrap table弹出右键菜单
2017/02/20 Javascript
Bootstrap响应式表格详解
2017/05/23 Javascript
详解VueRouter进阶之导航钩子和路由元信息
2017/09/13 Javascript
Node.js使用MySQL连接池的方法实例
2018/02/11 Javascript
Node.js readline 逐行读取、写入文件内容的示例
2018/03/01 Javascript
JS实现图片切换效果
2018/11/17 Javascript
微信小程序基于Taro的分享图片功能实践详解
2019/07/12 Javascript
layui表单验证select下拉框实现验证的方法
2019/09/05 Javascript
Centos7 安装Node.js10以上版本的方法步骤
2019/10/15 Javascript
vue中watch的用法汇总
2020/12/28 Vue.js
浅谈用VSCode写python的正确姿势
2017/12/16 Python
python 实现得到当前时间偏移day天后的日期方法
2018/12/31 Python
Python 实现自动导入缺失的库
2019/10/29 Python
python应用Axes3D绘图(批量梯度下降算法)
2020/03/25 Python
PyCharm常用配置和常用插件(小结)
2021/02/06 Python
简单叙述一下MYSQL的优化
2016/05/09 面试题
员工自我鉴定
2013/10/09 职场文书
学习心理学的体会
2014/11/07 职场文书
大学生心理健康活动总结
2015/05/08 职场文书
运动会运动员赞词
2015/07/22 职场文书
FFmpeg视频处理入门教程(新手必看)
2022/01/22 杂记
Python3的进程和线程你了解吗
2022/03/16 Python
JavaScript实现九宫格拖拽效果
2022/06/28 Javascript