Docker搭建DNS服务器--nouse

前言

DNS服务器是(Domain Name System或者Domain Name Service)域名系统或者域名服务,域名系统为Internet上的主机分配域名地址和IP地址。

安装

2.1 实验环境

IP

系统版本

角色

192.168.40.121

Ubuntu 22.10

DNS服务器

192.168.40.122

Ubuntu 22.10

测试机器

2.2 服务器端

2.2.1 Docker安装

更新软件包
root@121:~# apt-get update
安装docker
root@121:~# apt-get install -y docker.io

2.2.2 创建文件存储文件

root@121:~# sudo mkdir -p /data/docker/dns-server

2.2.3创建容器运行dns服务器

root@121:~# sudo docker run --name dns-server -d \
--restart=always --publish 53:53/tcp \
--publish 53:53/udp --publish 10000:10000/tcp \
--volume /data/docker/dns-server:/data sameersbn/bind:latestsudo docker exec -it dns-server /bin/bash

2.2.4 参数说明

-p 53:53/udp 绑定容器53端口到宿主机的153端口,DNS默认端口;

-p 10000:10000 图形化界面管理器端口;

-volume /data/docker/dns-server:/data 挂载本地目录作为dns配置存储;

2.2.5 查看端口占用情况

root@121:~# sudo lsof -i:153 #查看53端口的进程

如果被占用参考https://www.otakusay.com/866.html

2.2.6 访问DNS服务器

访问地址https://localhost:10000

默认账户和密码root/password

这里访问的是{容器ID}:10000:

# This web server is running in SSL mode. 
# Try the URL <a href='https://1092a6514a9a:10000/'>
#    https://1092a6514a9a:10000/
# </a> instead.<br># 外部机器访问时, 需要配置机器的/etc/hosts文件:
192.168.31.85 1092a6514a9a  # 宿主机ip地址: 192.168.31.85

2.3 DNS服务器页面设置

2.3.1 修改语言

2.3.2 设置DNS-Server默认值

2.3.3 创建新的主区域-正向解析

注意:主服务器写localhost,避免重启后失效. 因为我们只做私网解析,指向本地即可

否则会报错如:无法创建主区域 : '7xxxxxxx..'不是有效的主服务器

2.3.4在刚新建的域名下添加ip映射

#use
示例一:名称: lpf-test   ping: lpf-test.cn示例二:   名称: *.lpf-test   ping: www.lpf-test.cn, master.lpf-test.cn 等任意*.lpf-test.cn

2.3.5 重启容器

root@121:~#sudo docker restart dns-server

2.4 客户端

2.4.1 修改DNS

root@122:~# sudo vi /etc/systemd/resolved.conf
​
...
​
DNS=192.168.40.121 114.114.114.114     # 取消前面的注释,将dns服务器IP写在前面,后面作为备用DNS服务器
​
...

2.4.2 重启systemd-resolved服务

root@122:~# sudo systemctl restart systemd-resolved
​
root@122:~# sudo systemctl enable systemd-resolved
​

2.4.3 ICMP测试

问题

彻底解决 Linux 系统下 systemd-resolve 占用 53 端口的问题

查看端口占用情况,看看 53 端口是不是被 systemd-resolved 占用了。

sudo netstat -nultp

如果 53 端口确定被 systemd-resolved 占用了,则可以根据下面给出的方法解决。

1、先停用 systemd-resolved 服务。

sudo systemctl stop systemd-resolvedsudo systemctl status systemd-resolved

2、编辑 /etc/systemd/resolved.conf 文件,按 “i” 键进入编辑模式。

sudo vi /etc/systemd/resolved.conf

3、换下面说明更改,然后按一下 “esc” 键,再输入 “:wq”(不要输入引号),回车保存即可。

[Resolve]
DNS=223.5.5.5         #取消注释,增加dns
#FallbackDNS=
#Domains=
#LLMNR=no
#MulticastDNS=no
#DNSSEC=no
#DNSOverTLS=no
#Cache=no-negative
DNSStubListener=no    #取消注释,把yes改为no
#ReadEtcHosts=yes

4、最后运行下面命令即可。

sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf

Docker搭建DNS服务器 - 知乎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/116324.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

day03_基础语法

今日内容 零、复习昨日 一、Idea安装&#xff0c;配置 二、Idea使用 三、输出语句 四、变量 五、数据类型 附录: 单词 零、 复习昨日 1 装软件(typora,思维导图) 2 gpt(学会让他帮你解决问题) 3 java发展(常识) 4 HelloWorld程序 5 编码规范 6 安装jdk,配置环境变量 电脑常识 任…

Django的设计模式及模板层

Django的设计模式及模板层 设计模式MVC和MVT MVC 代表 Model-View-Controller(模型-视图-控制器)模式。 M 模型层(Model),主要用于对数据库层的封装 V 视图层(View),用于向用户展示结果 (WHAT HOW) C 控制(Controller&#xff0c;用于处理请求、获取数据、返回结果(重要) 作…

PHP8的类与对象的基本操作之成员变量-PHP8知识详解

成员变量是指在类中定义的变量。在类中可以声明多个变量&#xff0c;所以对象中可以存在多个成员变量&#xff0c;每个变量将存储不同的对象属性信息。 例如以下定义&#xff1a; public class Goods { 关键字 $name; //类的成员变量 }成员属性必须使用关键词进行修饰&#xf…

stm32之ADC

ADC是什么&#xff1f;模拟数字转换器&#xff08;Analog-to-Digital Converter&#xff09;。 一、ADC概述 stm32f013c8t6有两个ADC&#xff0c;精度为 12 位&#xff0c;每个 ADC 最多有 16 个外部通道、2个内部通道&#xff08;温度传感器、内部参考电压&#xff09;。实际s…

【Cpp】位图Bitmap

code #include <iostream> #include <vector> #include <stdio.h> #include <stdint.h>class Bitmap { private:std::vector<uint8_t> data; // 存储位图数据的字节数组uint32_t size; // 位图的大小&#xff08;以位为单位&#x…

大数据从入门到精通(超详细版)之Hive的案例实战,ETL数据清洗!!!

前言 嗨&#xff0c;各位小伙伴&#xff0c;恭喜大家学习到这里&#xff0c;不知道关于大数据前面的知识遗忘程度怎么样了&#xff0c;又或者是对大数据后面的知识是否感兴趣&#xff0c;本文是《大数据从入门到精通&#xff08;超详细版&#xff09;》的一部分&#xff0c;小…

基于FPGA的图像直方图统计实现,包括tb测试文件和MATLAB辅助验证

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1、图像数据传输 4.2、直方图统计算法 4.3、时序控制和电路设计 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 vivado2019.2 matlab2022a 3.部分核心程序 timescal…

使用 PyTorch 的计算机视觉简介 (5/6)

一、说明 本文主要介绍CNN中在pytorch的实现&#xff0c;其中VGG16网络&#xff0c;数据集来源&#xff0c;以及训练过程&#xff0c;模型生成和存储&#xff0c;模型调入等。 二、预训练模型和迁移学习 训练 CNN 可能需要大量时间&#xff0c;并且该任务需要大量数据。但是&am…

Qt5开发及实例V2.0-第十八章-Qt-MyselfQQ实例

Qt5开发及实例V2.0-第十八章-Qt-MyselfQQ实例 第18章-Qt MyselfQQ18.1 概述18.2 、发送文件18.3 、接收文件18.4 、保证传输的安全和稳定18.5 、总结 本章相关例程源码下载1.Qt5开发及实例_CH1801.rar 下载 第18章-Qt MyselfQQ 18.1 概述 MyselfQQ是一个基于Qt5框架开发的轻量…

如何快速走出网站沙盒期(关于优化百度SEO提升排名)

网站沙盒期是指新建立的网站在百度搜索引擎中无法获得好的排名&#xff0c;甚至被完全忽略的现象。这个现象往往发生在新建立的网站上&#xff0c;因为百度需要时间来评估网站的质量和内容。蘑菇号www.mooogu.cn 为了快速走出网站沙盒期&#xff0c;需要优化百度SEO。以下是5个…

【再识C进阶3(上)】详细地认识字符串函数、进行模拟字符串函数以及拓展内容

小编在写这篇博客时&#xff0c;经过了九一八&#xff0c;回想起了祖国曾经的伤疤&#xff0c;勿忘国耻&#xff0c;振兴中华&#xff01;加油&#xff0c;逐梦少年&#xff01; 前言 &#x1f493;作者简介&#xff1a; 加油&#xff0c;旭杏&#xff0c;目前大二&#xff0c;…

平均精度(AP)

什么是平均精度(AP) 平均精度 (AP)并不是精度 (P)的平均值。 平均精度 (AP) 是按类别计算的。 mAP&#xff08;mean average precision&#xff09;是一个平均值&#xff0c;常用作目标检测中的检测精度指标mAP 指标通过对于一个平均目标来检测任务中多个目标所对应不同 AP&a…