Next Whois 開源 WHOIS 查詢工具,網域註冊資料一次查清楚

Next Whois 是開源的 WHOIS 與 RDAP 查詢工具,實測網域、IPv4 與 ASN 查詢都在 1.4 秒內回應,原生繁中介面、無廣告無追蹤碼,可線上直接用也能自架。這篇整理五種查詢實測、雙協定合併機制、查詢隱私邊界與自架差異。

用 AI 摘要這篇文章:

把 techmoon.xyz 丟進 Next Whois 的查詢框,1.29 秒後畫面攤開一頁網域履歷:註冊商是 Unstoppable Domains、2018 年 7 月註冊、到期日 2027 年 7 月 27 日、名稱伺服器掛在 Cloudflare,到期倒數 326 天也自動算好了。這是我在 Next Whois 官方站實測的第一筆查詢(2026 年 9 月),接著測了大型網域、IPv4、ASN 和一個不存在的網域,全部在 1.4 秒內拿到結果。

站長查 WHOIS 的時機通常很具體:接手一個客戶的舊網站,要先確認網域在哪個註冊商、什麼時候到期;收到釣魚信,想看看對方網域是不是上週才註冊的新網域;管機器的人要確認一個 IP 或 ASN 到底歸誰管。這些問題都只需要一個動作,卻常見兩種不順:指令列的 whois 回一整面純文字要自己撈,要回報客戶還得手動整理成表格;網頁版工具則常見廣告、彈窗,或查詢送出去半天沒回應。

Next Whois 是一套用 Next.js 寫成的開源 WHOIS 查詢工具,可以直接在官方站用,也可以整包搬回自己的伺服器。它跟一般 whois 查詢網站的差別,要從一次查詢背後發生的事說起。

一次查詢,其實同時查了兩套系統

先補一段背景。WHOIS 是查網域註冊資料的老協定,伺服器聽 TCP 埠 43,你丟一個網域給它,它回你一整面純文字,註冊商、日期、名稱伺服器全混在一起,欄位位置還因註冊單位而異,要自己肉眼找。RDAP 是後來接棒的標準,同樣的註冊資料改用結構化的 JSON 回傳,欄位固定、機器好讀,查 IP 與 ASN 這類網路資源也是同一套介面。RDAP 回應裡的註冊事件、註冊商實體、名稱伺服器清單都有固定位置,Next Whois 能把兩邊資料逐欄互補合併,靠的正是這層結構;面對純文字的 WHOIS 回應,它則靠一組解析規則去撈欄位,撈不到就以 Unknown 標示,不硬猜。

多數查詢工具只走其中一邊。我翻 Next Whois 的原始碼,src/lib/whois/lookup.tsPromise.allSettled 把 RDAP 與 WHOIS 兩個查詢同時丟出去,兩邊都回來之後逐欄比對、合併成同一份結果,RDAP 欄位優先,缺的用 WHOIS 補上。README 的功能表把這寫成 RDAP 優先、WHOIS 備援,但程式實際的行為是並行查詢再合併,README 的 API 說明自己也寫了 parallel 與 merged。兩邊同查的好處很實際:結果頁會同時附上原始 WHOIS 文字與原始 RDAP JSON,哪一欄有疑慮可以自己對照源頭。

程式對查不到的處理也寫得乾淨。遇到兩邊都查無資料的網域,直接回 No match;遇到 WHOIS 伺服器只回 IANA 佔位文字的頂級網域,程式會判定這個 TLD 沒有可用的 WHOIS/RDAP 伺服器,而不是把佔位文字當結果端出來。每筆查詢都有 15 秒逾時保護,註冊單位伺服器卡住時不會把整個查詢拖死。

合併結果落地成一頁摘要:網域名稱、註冊商與 IANA 編號、WHOIS 伺服器、三個關鍵日期、狀態碼、名稱伺服器,日期再自動換算成年齡與倒數。查 IP 得到網段範圍與登記國別,查 ASN 得到歸屬機構,欄位結構是同一套,換查詢類型不用重新學一遍介面。

五種查詢實測,都在 1.4 秒內

實測當天我對官方站的查詢介面丟了五種不同類型的查詢,結果如下:

查詢回應時間資料來源拿到什麼
google.com1.36 秒RDAP註冊商 MarkMonitor、IANA 編號 292、1997 年註冊、2028 年到期
techmoon.xyz1.29 秒RDAP註冊商、到期日、剩餘 326 天、Cloudflare 名稱伺服器
8.8.8.80.93 秒RDAPGoogle 網段 8.8.8.0 至 8.8.8.255、登記國別美國
AS151690.79 秒RDAPASN 歸屬 Google、美國
未註冊網域0.36 秒No match 錯誤訊息

結果頁本身把查詢耗時與資料來源標在網域名稱旁邊,截圖當下那筆 google.com 查詢顯示 0.83 秒、來源 rdap。註冊日期自動換算成網域年齡,google.com 的 1997 年註冊換算下來是 28 年;到期日換算成剩餘天數,techmoon.xyz 剩 326 天,快到期的網域一眼就能排出續約優先順序。查 8.8.8.8 時,回來的是 GOOGLE 的網段登記(netName 顯示 GOGL)加上美國的登記國別;查 AS15169 直接回這個 ASN 歸屬 Google。google.com 的狀態欄列出 clientDeleteProhibited、clientTransferProhibited 這類 EPP 狀態碼,每個都附人話說明,看得出網域被註冊商上了哪些保護鎖。名稱伺服器欄位一眼看得出網域掛在哪家 DNS 服務,techmoon.xyz 查出來就是 Cloudflare 的兩台 NS。怕欄位被工具消化掉的人,結果頁右側還留著原始 WHOIS 文字與原始 RDAP JSON 兩個面板,摘要與源頭並列,這個設計對要寫報告或存證的人很實用。

Next Whois 繁體中文介面查詢 google.com 的結果頁,顯示註冊商、日期與名稱伺服器欄位Pin
Next Whois 官方站查詢 google.com 的結果頁(2026 年 9 月截圖),繁中介面,右上角標示查詢耗時與資料來源

介面的小地方也看得出打磨。查詢歷史存在瀏覽器的 localStorage,原始碼預設不設筆數上限,自架時可以用環境變數設上限;官方功能表另列了歷史搜尋、過濾、鍵盤快速鍵與 PWA 安裝。可以確定的是整個站沒有帳號系統,開了就查,查完就走。

那筆 0.36 秒的 No match 也值得記下來。想註冊新網域的人可以拿它當第一道可用性快查:名字先用 Next Whois 查有沒有人註冊,再去看網域比價工具的行情,流程比到註冊商網站一個一個試快得多。結果頁上那排註冊價格就當參考,它來自單一聚合來源且會浮動,真的要下單前仍以註冊商即時報價為準。

你的查詢字串,會被誰看到

這是最多人關心、也最容易講混的一段,就從查詢字串的流向講起。

Next Whois 是有伺服器端的應用,你的查詢會先送到站方伺服器,再由伺服器轉發給各註冊單位的 WHOIS 與 RDAP 伺服器。用官方站查詢,who.zmh.me 的伺服器就看得到你查了什麼。這是網頁版 whois 工具的通則,不是 Next Whois 特有的弱點,差別在於它的原始碼把邊界畫得比多數同類清楚,每個對外呼叫都攤在程式裡。另外有個更根本的事實:任何 whois 查詢,發起端的 IP 對被查詢的註冊單位伺服器本來就是可見的,這是協定的本質,自架改變的是誰站在中間,查詢本身對終點伺服器仍然看得到。

再來看第三方服務。結果頁的註冊價格欄位,資料來自 nazhumi.com 的價格聚合 API(src/lib/pricing/client.ts 寫得明白),查 google.com 時拿到 Cosmotown 的 7.89 美元註冊價。程式只把頂級網域送給這個 API,完整網域不外流。Moz 的 DA/PA 分數是選配功能,自架者填了自己的 API 金鑰才會出現;官方站沒設金鑰,實測這欄回 -1。

至於紀錄本身:查詢歷史只存在瀏覽器的 localStorage,登出或清快取就消失;程式沒有接任何資料庫,查詢不落地。我把整個 repo 掃過一遍,沒有 Google Analytics、Plausible、Sentry 這類追蹤碼。唯一與查詢內容相關的伺服器端痕跡,是啟用 Redis 快取時的快取鍵與一般伺服器 log。

官方站直接用,自架者拿得更多

實測官方站時有個發現:重複查同一個網域,第二次回應的 cached 欄位仍然是 false,代表官方部署沒有啟用 Redis 快取。原始碼的設計是 REDIS_HOST 留空就自動停用快取,自架者只要接上 Redis,重複查詢直接吃快取(預設存一小時),API 回應也帶 s-maxage=3600 的 CDN 快取標頭,對要寫腳本批次查的人是明顯的加速。

部署途徑官方列了 Vercel、Netlify、Zeabur 一鍵部署與 Docker image。一個小細節:Docker image 名稱仍是舊的 programzmh/next-whois-ui,repo 已改名 next-whois,兩個名字指同一個專案,照文件指令拉 image 不受影響。

環境變數的設計看得出自架者的位置:REDIS_HOST 接上就啟用快取、REDIS_CACHE_TTL 控制存放時間;MOZ_ACCESS_ID 與 MOZ_SECRET_KEY 填了才解鎖 DA/PA 分數;NEXT_PUBLIC_HISTORY_LIMIT 管瀏覽器歷史筆數。比較少人知道的是 NEXT_PUBLIC_MAX_WHOIS_FOLLOW,預設 0 代表查到頂級網域註冊單位就停、不繼續跟進註冊商自己的細節伺服器,原始碼註解寫明這樣比較快,也順便避開某些註冊商 whois 伺服器連線被拒的問題;需要細節的人可以把它調到 1 或 2。

自架的實際意義在於查詢路徑縮短:瀏覽器到你的伺服器,再到 WHOIS/RDAP 官方伺服器,中間不再經過任何第三方網站。手上有一批網域要顧、會寫腳本、或不想讓查詢字串出現在別人伺服器上的人,這是主要動機。它也提供乾淨的 /api/lookup 介面,回應裡帶查詢耗時、是否命中快取、資料來源是 rdap 還是 whois 三個欄位,內建文件頁連 curl 範例與回應結構都寫好了,接進既有監控或稽核流程不費事。文件頁另一個 /api/og 端點能把查詢結果動態生成一張預覽圖,拿去嵌進報告或訊息裡剛好。

Next Whois 內建 API 文件頁,說明 /api/lookup 端點的參數與回應範例Pin
Next Whois 內建 API 文件頁(2026 年 9 月截圖),附 /api/lookup 的 curl 範例與回應結構

專案狀態:能商用,但節奏放慢了

授權是 MIT,LICENSE 檔完整,商用與修改都沒問題。GitHub 上 589 顆星、142 個 fork、只剩 1 個 open issue,README 還列了 w.is 與 14.cx 兩個社群衍生站,都是拿這套原始碼改出來的查詢服務。帳面健康,但時間軸要看清楚:main 分支最後一筆 commit 停在 2026 年 3 月 4 日,截至 2026 年 9 月已約六個月沒有新變動;GitHub Releases 頁停在 2024 年 8 月的 0.3.0,程式裡的版本號其實已走到 1.6。翻最後一批 commit 的內容,多在收介面細節:行動版文件頁的捲動修正、剩餘天數的配色分級、把 35 家註冊商與名稱伺服器品牌的圖示改成本地檔案。看起來是功能收斂後節奏放緩,導入前要有心理準備:遇到問題可能要自己修。

兩個不屬於工具本身的限制也該知道。WHOIS 資料源頭在遮蔽:實測 google.com 時註冊人國別回 Unknown,近年註冊商大量遮蔽註冊人欄位,換任何查詢工具都一樣查不到。另外它只回當下的註冊資料,需要歷史 WHOIS 紀錄做前後比對的人,要另找專門的歷史資料庫服務。

介面有八種語言,繁體中文原生內建,瀏覽器語言設 zh-TW 開起來就是繁中,導覽列也有語言切換器可以手動換。技術上它是把 zh-HK、zh-MO 這類瀏覽器語言代碼一併對應到繁中介面,名詞用詞(註冊商、名稱伺服器、建立日期)讀起來自然,沒有簡繁夾雜的問題。

偶爾查一次、天天要查、在意查詢流向的人

偶爾查網域到期日、註冊商或 IP 歸屬的人,官方站直接用就夠:速度快、繁中介面、無廣告。做資安或稽核工作的用途更明顯:原始 WHOIS/RDAP 對照面板加上網域年齡換算,判讀可疑網域(剛註冊幾天的網域風險特別高)很順手。手上網域多又會寫腳本的人,值得花十分鐘自架一台,之後查詢只經過自己的伺服器,還能吃 Redis 快取。已經習慣 whois 指令列的人,它多給你的主要是 RDAP 結構化欄位、到期倒數與那份合併結果,沒有非換不可的理由;真想試也沒有門檻,不用註冊帳號,歷史跟著瀏覽器走,舊工具隨時回得去。

至於正準備買新網域的人,順手的順序是:先用網域名稱挑選指南把名字定下來,用 Next Whois 查可用性,用網域比價工具看行情,再照網域購買流程完成註冊。查詢工具解決的是其中最輕鬆的一步,剩下的決策還是要自己做。

Sliven 褚崇名
Sliven 褚崇名

每日分享科技新知、免費資源以及 WordPress、虛擬主機相關主題,任何問題歡迎在科技月球下方留言,或是發送 Email 至 [email protected] 與我聯繫。

文章: 1108

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


Share to...