求助, mac 无法访问.local 结尾的域名

fengpan567 2026-10-16 20:28 1

公司测试环境数据库、网关全是 xxx.cloud.local 这种格式的域名,今天用 mac 连测试环境发现 dbgate 、stuio 3t 、postman 都访问不了测试环境了。


问了 AI 说是.local 结尾的域名和 mac 特殊的 dns 解析逻辑冲突了,尝试了配置了指定 dns 解析 IP 也不行
/etc/resolver/cloud.local
nameserver 100.111.110.9


有没有大佬支支招,求求了

最新回复 (6)
  • loading 10-16 20:50
    1楼
    https://support.apple.com/en-us/101903

    https://discussions.apple.com/thread/255706215?sortBy=rank
  • labay 10-16 20:53
    2楼
    加个代理凑合一下
  • Need4more 10-16 22:14
    3楼
    修改 resolver 无效是因为 DbGate 和 Postman 基于 Electron )开发,Node.js 默认使用的 c-ares 异步 DNS 解析库以及 Chromium 内置的异步 DNS 解析器,往往只读取全局 /etc/resolv.conf ,完全忽略 macOS 特有的 /etc/resolver/ 分流规则。

    有三个方案供你参考

    1 如果你的 cloud.local 下只有几个固定的数据库域名,找到域名对应的 ip 写死在 /etc/hosts 最稳妥
    2 如果内网 .local 子域下有成百上千个动态域名,在网络设置中追加“搜索域”
    3 如果你既不能把内网 DNS 设为全局第一 DNS (比如该内网 DNS 无法解析外网),又必须让 Postman/DbGate 自动解析 *.corp.local 下的所有子域,最完美的工程方案是在本机用 dnsmasq 做一层轻量级 DNS 代理

    相关命令看一下 gemini 给的: https://share.gemini.google/Fvc1gAwtdmdB
  • Need4more 10-16 22:18
    4楼
    无法访问 gemini 的话,看这个截图

  • RayLin 10-17 07:24
    5楼
    .local 是给 mdns 用的,要么在产品上启用 mdns ,要么换个本地后缀。
  • sky96111 10-17 15:19
    6楼
    .local 是不允许使用的保留域,是 mdns 专用的,不走 dns 服务器解析。有一个方法,你先 nslookup 域名,用 dns 拿到具体的解析,然后手动将解析写入 hosts
* 帖子来源V2EX
返回