栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

使用docker搭建自己的域名服务器

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用docker搭建自己的域名服务器

使用docker搭建自己的域名服务器
  • 写在前面
  • 查找镜像
  • 下载镜像
  • 简单启动
    • 查看日志
    • 查看默认配置,并使用nslookup命令测试
  • 使用HighLevelLocal方式启动
    • 查看日志
    • 查看默认配置,使用nslookup命令测试
  • 挂载本地目录配置方式启动
    • 生成配置
    • 停掉之前的容器并启动
    • 使用nslookup进行测试
    • 修改配置,配置刷新成功,使用nslookup测试
  • docker-compose方式启动
    • 初始化配置
    • 编写docker-compose脚本
    • 启动
    • nslookup解析
    • 使用浏览器访问测试
      • 配置windows使用设置的dns地址进行解析
      • 浏览器输入www.lhstack.com
      • 输入www.lhstack.org
      • 输入www.baidu.com
  • 写在后面

写在前面

这里我使用docker一个小巧轻量的dns服务器,它的大小仅仅6M左右,镜像为lhstack/small-dns,它的功能比较单一,目前仅支持Ptr和Ipv4的域名映射和解析转发,不过也能满足我们内网的大部分需求,同时2.0.0版本支持正则域名解析,以及修改配置自动加载最新配置等功能,使它变得更加灵活

查找镜像

查找镜像

docker search small-dns

下载镜像
docker pull small-dns

简单启动
docker run --name small-dns -p 53:53/udp -d lhstack/small-dns

查看日志

通过日志可以看到,这里有几个环境变量,DNS_REPO_TYPE支持Local和HighLevelLocal两种,我们后面将使用HighLevelLocal,Local是1.0.0版本的兼容层,后面不予演示
加载了/app/config/config.json配置,这里查看加载的配置内容

查看默认配置,并使用nslookup命令测试


使用HighLevelLocal方式启动

停掉之前启动的容器

docker rm -f small-dns

使用HighLevelLocal方式

docker run --name small-dns -p 53:53/udp -e DNS_REPO_TYPE=HighLevelLocal -d lhstack/small-dns
查看日志


可以看到,这里有以下环境变量
HIGH_LEVEL_LOCAL_DNS_RESOLVE_CONFIG_CHECK_INTERVAL_SECONDS: 配置检查时间间隔,当配置内容发生修改,可以及时加载最新的配置
HIGH_LEVEL_LOCAL_DNS_RESOLVE_CONFIG: 配置文件的地址
DNS_REPO_TYPE: 支持的dns解析配置存储的仓库类型
DNS_REMOTE_RESOLVE_ADDRESS: 需要转发到远程的dns地址
DNS_LISTEN_ADDRESS: dns启动时监听的udp地址,使用golang的地址解析方式

查看默认配置,使用nslookup命令测试


挂载本地目录配置方式启动 生成配置
mkdir config
cat >config/config.json< 
停掉之前的容器并启动 
docker rm -f small-dns
docker run --name small-dns -p 53:53/udp -e HIGH_LEVEL_LOCAL_DNS_RESOLVE_CONFIG=/config/config.json -e DNS_REPO_TYPE=HighLevelLocal -v ${PWD}/config:/config -d lhstack/small-dns
使用nslookup进行测试

修改配置,配置刷新成功,使用nslookup测试


docker-compose方式启动 初始化配置
mkdir conf.d config
cat > conf.d/default.conf < conf.d/gitee.conf <config/config.json< 
编写docker-compose脚本 
cat > docker-compose.yml < 
启动 
docker-compose up -d

nslookup解析

使用浏览器访问测试 配置windows使用设置的dns地址进行解析

浏览器输入www.lhstack.com

输入www.lhstack.org

输入www.baidu.com

写在后面

small-dns可以使用正则方式解析自定义的域名到指定地址,同时也支持解析公网域名,根据配置调整即可

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1007234.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号