Domain-Name-System

瀏覽器如何解析 .ph 或 .ws 等未註冊域名?

  • November 11, 2021

如果我們訪問一個未註冊的域,例如http://no-domain-here.ph/,我們會從 ph 註冊處獲得一個網頁

但是,此域沒有任何關聯的 ns 記錄。它是如何工作的?

這取決於。

這在很大程度上取決於您的瀏覽器使用的是哪個遞歸名稱伺服器,因為它可能會撒謊。此外,如今越來越多的瀏覽器(如 Firefox 或 Google Chrome)能夠使用 DoH(基於 HTTPS 的 DNS),因此任何外部伺服器都可以進行 DNS 解析

因此,如果域不存在,您使用的任何 DNS 解析器都可能對您撒謊,並以您的瀏覽器將被引導通過某個特定頁面的方式進行響應。瀏覽器中的各種擴展或配置項也可以獲得相同的行為。

但是對於您的具體範例,它之所以有效,是因為 .PH 的系統資料庫在其區域中有一個萬用字元。

您可以輕鬆檢查它:

$ dig ph. NS +short
1.ns.ph.
ns2.cuhk.edu.hk.
ph.communitydns.net.
ns4.apnic.net.
$ dig \*.ph A @1.ns.ph. +noall +ans +nottlunits
*.ph.           300 IN A 45.79.222.138

這個萬用字元的意思是,無論你查詢哪個名字,如果沒有其他記錄(真實的註冊名),你都會得到這個IP地址。請注意,萬用字元僅適用於A

$ dig \*.ph AAAA @1.ns.ph. +noall +ans +nottlunits
(no data)
$ dig \*.ph NS @1.ns.ph. +noall +ans +nottlunits
(no data)

這種情況僅適用於 ccTLD(但很少有人這樣做),因為在過去臭名昭著的 Verisign SiteFinder“實驗”之後,ICANN 規則在 gTLD 中禁止這種情況。

當這種情況發生時,它不僅會影響瀏覽器和 HTTP 流量,還會影響一切。這是問題的根源:假設有一個有效的example.ph域,您必鬚髮送高度敏感的資訊(而不是加密消息),medical@example.ph但是您打錯字並發送到medical@exanple.phexanple.ph域不存在的地方……但是它將解析並且根據 SMTP 規則,即使沒有MX記錄,消息也會被發送到exanple.ph解析到的 IP 地址(萬用字元),然後取決於 MTA 是否正在那裡偵聽。

.wsccTLD(是的,它是一個國家/地區)具有相同類型的萬用字元:

$ dig ws. NS +short
ns5.dns.ws.
us3.dns.ws.
us4.dns.ws.
a.dns.ws.
ns2.dns.ws.
s.dns.ws.
$ dig @s.dns.ws \*.ws. A +noall +ans +nottlunits
*.ws.           300 IN A 64.70.19.203

引用自:https://serverfault.com/questions/1083273