解决内网ubuntu20.04无法进行域名解析的问题

2022-03-28 21:16:45 浏览数 (1)

有时有些机器部署在内网,有关内网ubuntu如何通过fiddler代理执行apt命令、下载docker镜像的问题可以参考笔者的其他文章:https://blog.csdn.net/john1337/category_10165743.html

本文就不再介绍其他内容,只介绍内网ubuntu如何通过自建的dns服务进行域名解析的步骤

1、在代理机器上安装coredns服务,coredns使用很简单,执行可执行文件即可,笔者使用的代理机器是win10(一定要确保代理服务器能访问外网),下载如下可执行文件即可,下载网址:https://github.com/coredns/coredns/releases/tag/v1.8.0:

2、解压coredns_1.8.0_windows_amd64.tgz文件,linux作为dns服务器下载对应的linux版本即可

3、在coredns.exe文件同一目录创建Corefile文件,该文件内容参考如下所示:

代码语言:javascript复制
.:53 {
  # 绑定本地ip
  bind 192.168.1.139
  # 先走本机的hosts
  # https://coredns.io/plugins/hosts/
  hosts {
    # 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 . 8.8.8.8
  # 缓存时间ttl
  cache 120
  # 自动加载配置文件的间隔时间
  reload 6s
  # 输出日志
  log
  # 输出错误
  errors
}

4、双击运行coredns.exe即可,执行效果如下图所示:

5、ubuntu上执行命令设置域名服务器地址:

systemd-resolve --set-dns=10.xx.xx.xx --interface=xxx

其中interface为对应网口,通过ifconfig可以查到,不要通过修改/etc/resolv.conf文件的方式来修改,因为里面说了这个文件会在重启域名服务时覆盖掉!!!

6、重启域名解析服务:systemctl restart systemd-resolved.service

7、测试效果:

0 人点赞