教你使用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 相关文章推荐
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
Mar 09 Servers
Nginx+Tomcat实现负载均衡、动静分离的原理解析
Mar 31 Servers
nginx处理http请求实现过程解析
Mar 31 Servers
详解Nginx 被动检查服务器的存活状态
Oct 16 Servers
Apache Linkis 中间件架构及快速安装步骤
Mar 16 Servers
Tomcat项目启动失败的原因和解决办法
Apr 20 Servers
讨论nginx location 顺序问题
May 30 Servers
Windows server 2022创建创建林、域树、子域的步骤
Jun 25 Servers
使用 DataAnt 监控 Apache APISIX的原理解析
Jul 07 Servers
Linux在两个服务器直接传文件的操作方法
Aug 05 Servers
windows系统搭建WEB服务器详细教程
Aug 05 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
Protoss魔法科技
2020/03/14 星际争霸
深入分析PHP引用(&)
2014/09/04 PHP
Thinkphp批量更新数据的方法汇总
2016/06/29 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
PHP用PDO如何封装简单易用的DB类详解
2017/07/30 PHP
jquery.alert 弹出式复选框实现代码
2009/06/15 Javascript
jquery选择器之属性过滤选择器详解
2014/01/27 Javascript
jquery实现简单的遮罩层
2016/01/08 Javascript
改变checkbox默认选中状态及取值的实现代码
2016/05/26 Javascript
vue2.0开发实践总结之疑难篇
2016/12/07 Javascript
解决Angular.Js与Django标签冲突的方案
2016/12/20 Javascript
Ionic3 UI组件之autocomplete详解
2017/06/08 Javascript
详解vue-cli 构建Vue项目遇到的坑
2017/08/30 Javascript
详解AngularJS之$window窗口对象
2018/01/17 Javascript
Angular 4.x+Ionic3踩坑之Ionic 3.x界面传值详解
2018/03/13 Javascript
WebPack配置vue多页面的技巧
2018/05/15 Javascript
angularJS开发注意事项
2018/05/26 Javascript
nodejs中express入门和基础知识点学习
2018/09/13 NodeJs
js中call()和apply()改变指针问题的讲解
2019/01/17 Javascript
Vue组件教程之Toast(Vue.extend 方式)详解
2019/01/27 Javascript
NodeJS读取分析Nginx错误日志的方法
2019/05/14 NodeJs
bootstrap 日期控件 datepicker被弹出框dialog覆盖的解决办法
2019/07/09 Javascript
vue.js页面加载执行created,mounted的先后顺序说明
2020/11/07 Javascript
[01:04:49]KG vs LGD 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
[01:45]典藏宝瓶2+祈求者身心——这就是DOTA2TI9总奖金突破3000万美元的秘密
2019/07/21 DOTA
python 默认参数问题的陷阱
2016/02/29 Python
python面向对象_详谈类的继承与方法的重载
2017/06/07 Python
深入理解Django中内置的用户认证
2017/10/06 Python
python3+PyQt5实现拖放功能
2018/04/24 Python
Pycharm 实现下一个文件引用另外一个文件的方法
2019/01/17 Python
python TK库简单应用(实时显示子进程输出)
2019/10/29 Python
如何打印出当前源文件的文件名以及源文件的当前行号
2015/04/05 面试题
汽车转让协议书范本
2014/12/07 职场文书
小学校长个人总结
2015/03/03 职场文书
有关保护环境的宣传标语100条
2019/08/07 职场文书
python中 .npy文件的读写操作实例
2022/04/14 Python