Mac Ventura 13.4 DNS 水平分割 - ping 不起作用,但 dig 起作用

Mac Ventura 13.4 DNS 水平分割 - ping 不起作用,但 dig 起作用

有什么问题:

  • dig、nslookup 可以使用 PiHole dns 服务器解析域名
  • ping、浏览器等都无法

我尝试做的是:

  • 重启 :d
  • 刷新缓存 ( sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder)
  • 从注册器中添加/删除通配符条目
  • 使用二级域名或子域名(hmwsl.de 与 int.hmwsl.de)
  • 在网络设置中除 DHCP 之外添加 DNS 服务器条目sudo networksetup -setdnsservers "Wi-Fi" 192.168.69.10 这有效

因此,当前面临的问题是:

  • 为什么 DHCP 提供的 DNS 解析器不够用?
  • dscacheutil和朋友究竟是如何工作的?

我想要的是:

  • 从远处或从家庭 LAN 访问我的 raspberry-pi 服务
  • 使用单个域名(带有子域名)来简化使用 Authelia 的身份验证
  • 有一个 Authelia 实例
  • 使用正确的 Let's Encrypt 证书
  • 使用 Traefik 作为反向代理

我做了什么:

  • 有一个域名
  • 设置 Traefik、Authelia 和一些服务(它们与 Avahi 的 .local 域名配合使用)
  • 使用通配符 DNS 条目为域设置 PiHole(见下文)

这是怎么回事:

Dig 和 nslookup 解析(通配符)域:

➜ dig foo.int.hmwsl.de

; <<>> DiG 9.10.6 <<>> foo.int.hmwsl.de
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2173
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;foo.int.hmwsl.de.      IN  A

;; ANSWER SECTION:
foo.int.hmwsl.de.   0   IN  A   192.168.69.10

;; Query time: 40 msec
;; SERVER: 192.168.69.10#53(192.168.69.10)
;; WHEN: Tue Jul 18 15:11:12 CEST 2023
;; MSG SIZE  rcvd: 61

➜ nslookup bar.int.hmwsl.de
Server:     192.168.69.10
Address:    192.168.69.10#53

Name:   bar.int.hmwsl.de
Address: 192.168.69.10

但是 ping 和 Mac 实用程序没有:

➜ ping foo.int.hmwsl.de
ping: cannot resolve foo.int.hmwsl.de: Unknown host

➜ dscacheutil -q host -a name foo.int.hmwsl.de && echo end
end

❯ dns-sd -q foo.int.hmwsl.de
DATE: ---Tue 18 Jul 2023---
15:15:07.504  ...STARTING...
Timestamp     A/R  Flags         IF  Name                          Type   Class  Rdata
15:15:07.505  Add  40000002       0  foo.int.hmwsl.de.             Addr   IN     0.0.0.0    No Such Record
^C

我认为我的本地 DNS 配置正确:

➜ scutil --dns
DNS configuration

resolver #1
  nameserver[0] : 192.168.69.10
  nameserver[1] : 62.233.233.233
  nameserver[2] : 8.8.8.8
  if_index : 12 (en0)
  flags    : Request A records
  reach    : 0x00020002 (Reachable,Directly Reachable Address)

从 raspberry-pi 进行 ping 操作也可以正常进行:

$ ping baz.int.hmwsl.de
PING baz.int.hmwsl.de (192.168.69.10) 56(84) bytes of data.
64 bytes from pi-hole.int.hmwsl.de (192.168.69.10):

PiHole 中的相关条目:

$ cat pi-hole/etc/dnsmasq.d/02-local-wildcard-dns.conf
address=/int.hmwsl.de/192.168.69.10

答案1

任何 iOS/macOS 设备都存在同样的问题。我正在使用 Synology DNS 服务器,也遇到了同样的问题!Windows 系统没有问题!

变得疯狂

相关内容