ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

使用 Docke r搭建自己的 dns 服务器

2022-06-16 12:35:21  阅读:186  来源: 互联网

标签:10000 -- bind 53 地址 dns 服务器 docker Docke


 

在开发运维过程中经常需要自定义一个域名来管理服务,通常的方法是修改hosts文件,但还有一种更便捷的方法,从源头上解决问题,也就是使用DNS来实现。

1.搭建

搭建依然使用docker,安装前请安装好docker的运行时环境。

# 创建一个持久化存放文件的目录
mkdir -p /opt/docker/bind
# 使用容器创建应用
docker run --name bind -d --restart=always \
  --publish 53:53/tcp --publish 53:53/udp --publish 10000:10000/tcp \
  --volume /opt/docker/bind:/data \
  sameersbn/bind:9.16.1-20200524
 

默认占用53的tcp和udp的DNS访问端口,这个请不要更改,以及10000的管理面板端口。外网访问时,请在防火墙中放行此端口。

firewall-cmd --add-port={53,10000}/tcp --permanent
firewall-cmd --add-port=53/udp --permanent
firewall-cmd --reload

2.访问

使用你的https://ip:10000在浏览器中打开。

 

在高级内打开此网页,使用默认账户密码root/password登录。



调整语言为中文,部分菜单可能仍会显示为英文。



3.配置

尝试绑定一下dns,依次点击图标中的例子。



任意填写一个名称,比如我以cn为域名后缀,填写邮箱,然后点击新建。



选择地址。



填写域名和ip地址。

 

 



可以看到我们的aaa.cn域名,已经解析到192.168.31.92这个ip上了。



重启一下服务,执行以下命令,这样才能使用配置生效:

docker restart bind

4.使用

将电脑的dns地址指向服务器地址,比如我在Mac下修改DNS地址。Windows修改方式类似。


如果是公网就填公网地址。做一下ping测试,发现已经正常解析了。


到这个时候,其实还有一个问题,就是除了我们设置的域名之外的网站是无法访问的。如果想访问百度之类的公网网站,进行如下设置:

vim /opt/docker/bind/bind/etc/resolv.conf

加入以下DNS地址:

nameserver 114.114.114.114
nameserver 8.8.8.8

修改另一个配置文件:

vim /opt/docker/bind/bind/etc/named.conf.options

添加一行,内容如下:

allow-query { any; };

再次重启一下bind服务,发现已经可以正常地访问互联网了,同时也能正常访问自定义的域名。

最后放上github的地址:

https://hub.docker.com/r/sameersbn/bind
鸣谢:
https://mp.weixin.qq.com/s/FZj1cY0B3GfFdkq6tCQpPg

标签:10000,--,bind,53,地址,dns,服务器,docker,Docke
来源: https://www.cnblogs.com/yakniu/p/16381538.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有