我一直在使用 DNSMasq 设置 LAN DNS 服务器,以转发我的 Web 服务器,该服务器目前具有 https 并由我的路由器进行端口转发。我注册了一个域名,它可以从 LAN 外部正常解析,并且我一直在解决来自 LAN 的请求的 NAT 环回问题。经过足够的时间,我筋疲力尽地ifconfig
打开dig
Firefox 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
点击“清除主机缓存”按钮。