Administrator
发布于 2024-08-06 / 108 阅读
0
0

Docker 搭建私有DNS服务器-coredns

1.拉取镜像

docker pull coredns/coredns:latest

2.创建配置文件

vim /etc/coredns/Corefile

.:53 {
    hosts {
        1.1.1.1 oa1.xxx.cn
        1.1.1.2 oa2.xxx.cn
        fallthrough
    }
    forward . 8.8.8.8:53
    log
}

3.启动容器

docker run -itd --name coredns \
   --restart=always \
   -v /etc/coredns/:/etc/coredns/ \
   -p 53:53/udp \
   coredns/coredns:latest -conf /etc/coredns/Corefile

4.配置说明

.:53 {
  # 绑定interface ip
  bind 127.0.0.1
  # 先走本机的hosts
  # https://coredns.io/plugins/hosts/
  hosts {
    # 自定义sms.service search.service 的解析
    # 因为解析的域名少我们这里直接用hosts插件即可完成需求
    # 如果有大量自定义域名解析那么建议用file插件使用 符合RFC 1035规范的DNS解析配置文件
    10.6.6.2 sms.service
    10.6.6.3 search.service
    # ttl
    ttl 60
    # 重载hosts配置
    reload 1m
    # 继续执行
    fallthrough
  }
  # file enables serving zone data from an RFC 1035-style master file.
  # https://coredns.io/plugins/file/
  # file service.signed service
  # 最后所有的都转发到系统配置的上游dns服务器去解析
  forward . /etc/resolv.conf
  # 缓存时间ttl
  cache 120
  # 自动加载配置文件的间隔时间
  reload 6s
  # 输出日志
  log
  # 输出错误
  errors
}


评论