为什么 Firefox 可以解析我的域名而 Chrome 却不能

为什么 Firefox 可以解析我的域名而 Chrome 却不能

我一直在使用 DNSMasq 设置 LAN DNS 服务器,以转发我的 Web 服务器,该服务器目前具有 https 并由我的路由器进行端口转发。我注册了一个域名,它可以从 LAN 外部正常解析,并且我一直在解决来自 LAN 的请求的 NAT 环回问题。经过足够的时间,我筋疲力尽地ifconfig打开digFirefox Nightly (98),发现地址栏中的域名可以正常解析 https 请求,现在我松了一口气,我不知道为什么会这样。

dig mydomain.local 似乎可以正常工作,并且返回了我服务器所在的私有 IP 的 A 记录:

; <<>> DiG 9.10.3-P4-Ubuntu <<>> mydomain.local
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6363
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;mydomain.local.                 IN      A

;; ANSWER SECTION:
mydomain.local.          0       IN      A       192.168.0.29

;; Query time: 3 msec
;; SERVER: 192.168.0.29#53(192.168.0.29)
;; WHEN: Sun Jan 16 22:33:18 AST 2022
;; MSG SIZE  rcvd: 58

并且 IP 确实按预期解析并提供网站内容

我一直在对 dnsmasq 进行一些基本配置,下面是我在dnsmasq.conf

domain-needed
bogus-priv
no-resolv
server=8.8.8.8
server=8.8.4.4
local=/localnet/
address=/mydomain.local/192.168.0.29
domain=localnet

并且主机文件包含

192.168.0.29    mydomain.local

我已经清除了 Chrome 的本地 DNS 缓存,chrome://net-internals/#dns但没有任何变化,所以此刻我想知道 Chrome 在这方面与 Firefox 有何不同。

答案1

Chrome 不仅需要刷新 DNS 缓存(可在 上完成)Chrome: chrome://net-internals/#dns,还需要刷新套接字池。因此,转到chrome://net-internals/#sockets并单击flush socket pools可修复此缓存问题。

答案2

Chrome 有自己的 DNS 缓存,与其他浏览器不同。这可以解释为什么其他浏览器没有问题。如果您想清除 DNS 缓存并使其影响 Chrome,请转到 Chrome 中的以下页面:chrome://net-internals/#dns

点击“清除主机缓存”按钮。

相关内容