部署Linux DNS 解析服务
MeteorCat传统都是依靠 /etc/resolv.conf 来处理 DNS 解析, 但是新的 linux-systemd 系统转而采用 resolved.service 处理网络解析服务.
而目前如果只要不是太老的 linux 版本建议都直接采用 resolved 相关工具链来维护处理服务器 DNS 相关;
resolved 实际上是一整套的工具链, 本质上其实就是在本地开启开启个小型的 DNS 服务端, 常规操作如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| # 查看目前的服务器解析路由状态, 可以看到所有网口链路 sudo resolvectl status
# 查看目前的DNS系统单元状态 sudo systemctl status systemd-resolved.service # 上面的命令都可以看到网口对应 DNS 服务及其上游
# 当然借助这个工具可以手动指定全局 DNS 公共服务器 sudo resolvectl dns all 8.8.8.8 223.5.5.5
# 也可以指定 eth0 网口服务采用的 DNS 服务器 sudo resolvectl dns eth0 8.8.8.8 223.5.5.5
# 更新清空 DNS 缓存 sudo resolvectl flush-caches
# 查看全局 DNS 系统配置文件 cat /etc/systemd/resolved.conf
|
这里需要说明 /etc/systemd/resolved.conf 的全局配置项目说明, 并且附带优化配置:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
|
DNS=223.5.5.5 180.184.1.1 1.1.1.1 1.2.4.8 9.9.9.9 8.8.8.8
FallbackDNS=223.6.6.6 180.184.2.2 1.0.0.1 210.2.4.8 149.112.112.112 8.8.4.4
DNSSEC=no
DNSOverTLS=no
MulticastDNS=no
LLMNR=no
Cache=no-negative
CacheFromLocalhost=no
DNSStubListener=yes
ReadEtcHosts=yes
|
实际上上面的配置项目, 最主要的配置是 DNS 和 FallbackDNS, 其他都是可有可无选项:
1 2 3 4 5 6
| # 日常使用一般修改成 # DNS=223.5.5.5 180.184.1.1 1.1.1.1 1.2.4.8 9.9.9.9 8.8.8.8 # FallbackDNS=223.6.6.6 180.184.2.2 1.0.0.1 210.2.4.8 149.112.112.112 8.8.4.4 # 就足够了, 之后重启 DNS 解析服务就可以了 sudo systemctl restart systemd-resolved sudo resolvectl status # 查看全局 global 查询链路
|