我使用dig
DNS 检查我的域名的 IP 地址,输出为:
dig davidzhu.xyz +short
172.67.210.8
104.21.50.195
但我只有一 A DNS record
在我的域名上,这是我的域名的 DNS 记录(第三个是关于 Google 搜索控制台的):
我使用 cloudflare 作为我的 NS,并在 cloudflare 上打开了代理,因为我使用它来获得免费的 ssl。
这是我的两个 NS:
$ dig chin.ns.cloudflare.com +short
172.64.32.84
173.245.58.84
108.162.192.84
$ dig noel.ns.cloudflare.com +short
108.162.193.216
172.64.33.216
173.245.59.216
我看到另一个人使用dig
命令检查我的域名的IP www.davidzhu.xyz
,
dig davidzhu.xyz +short
144.202.12.32
dig www.davidzhu.xyz +short
144.202.12.32
这是关于我的 Mac 上的 DNS 缓存吗?我尝试使用类似这样的方法sudo killall -HUP mDNSResponder
,但没有帮助。
其他信息:
dig www.davidzhu.xyz +trace
; <<>> DiG 9.10.6 <<>> www.davidzhu.xyz +trace
;; global options: +cmd
. 113542 IN NS g.root-servers.net.
. 113542 IN NS j.root-servers.net.
. 113542 IN NS k.root-servers.net.
. 113542 IN NS l.root-servers.net.
. 113542 IN NS m.root-servers.net.
. 113542 IN NS b.root-servers.net.
. 113542 IN NS f.root-servers.net.
. 113542 IN NS a.root-servers.net.
. 113542 IN NS d.root-servers.net.
. 113542 IN NS h.root-servers.net.
. 113542 IN NS e.root-servers.net.
. 113542 IN NS i.root-servers.net.
. 113542 IN NS c.root-servers.net.
;; Received 1097 bytes from 192.168.2.1#53(192.168.2.1) in 6 ms
xyz. 172800 IN NS generationxyz.nic.xyz.
xyz. 172800 IN NS y.nic.xyz.
xyz. 172800 IN NS x.nic.xyz.
xyz. 172800 IN NS z.nic.xyz.
xyz. 86400 IN DS 3599 8 2
;; Received 678 bytes from 192.33.4.12#53(c.root-servers.net) in 41 ms
davidzhu.xyz. 3600 IN NS chin.ns.cloudflare.com.
davidzhu.xyz. 3600 IN NS noel.ns.cloudflare.com.
;; Received 585 bytes from 194.169.218.42#53(x.nic.xyz) in 29 ms
www.davidzhu.xyz. 300 IN A 104.21.50.195
www.davidzhu.xyz. 300 IN A 172.67.210.8
;; Received 77 bytes from 173.245.59.216#53(noel.ns.cloudflare.com) in 28 ms
$ netstat -rn
Routing tables
Internet:
Destination Gateway Flags Netif Expire
default 192.168.2.1 UGScg en0
127 127.0.0.1 UCS lo0
127.0.0.1 127.0.0.1 UH lo0
169.254 link#12 UCS en0 !
192.168.2 link#12 UCS en0 !
192.168.2.1/32 link#12 UCS en0 !
192.168.2.1 c:ac:8a:3d:2b:8c UHLWIir en0 1182
192.168.2.10 ea:26:6b:65:51:f8 UHLWI en0 1087
192.168.2.11 56:c5:6d:df:38:e5 UHLWI en0 369
192.168.2.14 link#12 UHRLWI en0 !
192.168.2.15/32 link#12 UCS en0 !
192.168.2.16 5c:87:9c:38:f5:45 UHLWI en0 !
192.168.2.17 e:a:74:5:69:9 UHLWI en0 !
192.168.2.18 6c:b1:33:9b:d6:b0 UHLWI en0 132
192.168.2.19 42:a0:dc:36:87:9a UHLWI en0 !
192.168.2.21 94:ea:32:b4:4d:ca UHLWIi en0 765
192.168.2.22 94:ea:32:a3:4e:c6 UHLWIi en0 438
192.168.2.36 link#12 UHRLWI en0 !
192.168.2.59 link#12 UHRLWI en0 !
192.168.2.63 link#12 UHRLWI en0 !
192.168.2.255 ff:ff:ff:ff:ff:ff UHLWbI en0 !
224.0.0/4 link#12 UmCS en0 !
224.0.0.251 1:0:5e:0:0:fb UHmLWI en0
239.255.255.250 1:0:5e:7f:ff:fa UHmLWI en0
255.255.255.255/32 link#12 UCS en0 !
谢谢你们,也谢谢@YisroelTech,我通过关闭cloudflare上的代理解决了这个问题。关闭代理后davidzhu.xyz
,我只得到一个IP地址!
$ dig davidzhu.xyz +trace
...
...
...
davidzhu.xyz. 3600 IN NS chin.ns.cloudflare.com.
davidzhu.xyz. 3600 IN NS noel.ns.cloudflare.com.
;; Received 581 bytes from 212.18.249.42#53(generationxyz.nic.xyz) in 26 ms
davidzhu.xyz. 300 IN A 144.202.12.32
;; Received 57 bytes from 173.245.58.84#53(chin.ns.cloudflare.com) in 34 ms
答案1
该域名有两个 IP 地址的原因是该域名被置于 Cloudflare 之下,而 Cloudflare 的工作方式是通过它们代理您的所有流量(它们的系统上有 SSL,因此它不能直接发给您。)
请参阅此处的答案https://stackoverflow.com/a/66214163/5518385似乎没有任何办法可以解决这个问题,这是他们的 SSL 的工作方式(对于免费的 SSL,您可以使用 Let's Encrypt 等)
您可以通过以下方式验证 DNS 传播https://dnschecker.org/#A/www.davidzhu.xyz(现在显示 Cloudflare 的两个 IP)
(另一个人拥有 144.xxx IP 是因为他存在添加到 Cloudflare 之前的旧缓存。)