在 OpenResty Edge 中配置 DNS 記錄:內建權威 DNS 與地理智慧解析
OpenResty Edge 內建權威 DNS 伺服器,讓您無需依賴第三方服務商即可直接託管域名解析。在 Admin 控制檯中,您可以新增多種型別的 DNS 記錄(A、AAAA、CNAME、MX、TXT、NS、CAA、SRV 等),按地域或 CIDR 網段對每條解析做地理智慧派發,並配置主備記錄與自動健康檢查,只返回可用的解析結果。本教程將演示如何在 OpenResty Edge 中配置 DNS 記錄與地理派發規則、用 dig 驗證,並將域名的名稱伺服器委派給 OpenResty Edge。
如何在 OpenResty Edge 中新增 DNS 記錄
讓我們進入 OpenResty Edge 的 Admin Web 控制檯。這是我們控制檯的樣本部署。每個使用者都有自己的本地部署。
進入 DNS 應用管理介面。
點選 “openresty.net” 應用,看實際使用中的 DNS 應用是如何配置的。
首先可以看到 DNS 記錄對映圖,它直觀地展示了不同地域的解析情況。
可以在這裡選擇不同的子域名。
透過這個開關可以開啟或關閉對映圖。
點選新增 DNS 記錄按鈕後,在列表中會出現一行新的記錄。
可以選擇記錄的型別。
輸入記錄的子域名,例如 “blog”。
可以限定只能特定的客戶端地址解析到這條記錄。
“Any” 表示不進行限制。
透過 CIDR 進行限制。
例如 192.168.1.1/24。
還可以限定地域,例如 “新加坡”。
這裡我們不進行限制。
這裡是解析結果,可以直接輸入 IP 地址。
也可以選擇 OpenResty Edge 的閘道器叢集。
例如 “aws-london”。
這個是記錄的過期時間。
可以選擇不同的單位。
這裡是主備記錄的開關,當沒有主記錄或者主記錄健康檢查失敗時,將會使用備用記錄。
同時 OpenResty Edge 還支援 DNS 記錄的健康檢查,可以避免返回不可用的結果。
配置完成點選 “Add” 按鈕。
如何用 dig 測試 DNS 記錄
接著我們來看下剛才配置的 DNS 記錄中閘道器節點的 IP 地址。
可以看到 IP 地址是以 .240 結尾的。
接著使用 dig 命令進行 DNS 查詢。
可以看到返回的正是我們剛剛選擇的閘道器叢集中的閘道器節點的 IP 地址。
當需要返回多個結果時,可以新增多條 DNS 記錄。
再次點選 “Add” 按鈕。
輸入域名 “blog”。
選擇另一個閘道器叢集 “aws-us-east”。
點選新增這條記錄。
現在有兩條關於 “blog.openresty.net” 的 DNS 記錄。
接著再次來到 “Gateway Cluster” 介面,檢查 “aws-us-east” 閘道器叢集的 IP 地址。
這個 IP 地址以 .84 結尾。
然後再次使用 “dig” 命令進行查詢。
可以看到,結果正確。
您毋需手動建立所有的 DNS 記錄。點選這個按鈕,您可以基於地理位置自動生成一個 DNS 方案。
如何將域名委派給 OpenResty Edge 的權威 DNS 伺服器
接下來繼續介紹 DNS 的配置。
選擇 “Authoritative DNS Servers”。
這裡的配置即是 SOA 記錄的結果。
接著我們以某個域名註冊商為例,演示如何將域名的名稱伺服器委派給 OpenResty Edge。下面的截圖使用的是 Google Domains,該服務現已停止運營並遷移至 Squarespace;不同註冊商的 glue record 與自定義名稱伺服器配置步驟基本一致。各註冊商的最新操作步驟,可參閱 OpenResty Edge 文件(以 Namesilo 為例)。
選擇 “DNS” 標籤頁。
選擇 “Global DNS settings”。
新增 glue record,輸入域名及 OpenResty Edge 節點的 IP 地址。
回到前一個頁面。
接著選擇 “Custom name servers”。
點選 “manage name servers”.
輸入前面在 “Global DNS Settings” 中配置的域名
最後點選這個按鈕切換到自定義的域名伺服器。
您已經成功在註冊商處完成了向 OpenResty Edge 的委派。
我們回到 OpenResty Edge Admin 介面繼續介紹 DNS 的配置。
這個 “User Group” 是用於訪問控制的。關於如何限定誰能管理各個 DNS 應用的完整演示,請參閱在 OpenResty Edge 的 Admin 控制檯中管理 DNS 應用的訪問許可權。
常見問題
OpenResty Edge 自帶權威 DNS 伺服器嗎?
是的。OpenResty Edge 內建權威 DNS 伺服器,所有記錄都在 Admin 控制檯中新增和管理,每條記錄都可以直接解析到您的某個 OpenResty Edge 閘道器叢集。
OpenResty Edge 能根據客戶端所在地域返回不同的解析結果嗎?
可以。每條 DNS 記錄都能按地域或 CIDR 網段限定,從而把使用者引導到最近的閘道器叢集。您還可以基於地理位置自動生成 DNS 方案,無需逐條手動新增。
OpenResty Edge 如何實現 DNS 故障切換?
每條記錄都可設為主記錄或備用記錄,OpenResty Edge 會持續對目標做健康檢查。當主記錄缺失或健康檢查失敗時,會返回備用記錄,從而只返回可達的地址。
關於 OpenResty Edge
OpenResty Edge 是一款專為微服務和分散式流量架構設計的全能型閘道器軟體,由我們自主研發。它集流量管理、私有 CDN 構建、API 閘道器、安全防護等功能於一體,幫助您輕鬆構建、管理和保護現代應用程式。OpenResty Edge 擁有業界領先的效能和可擴充套件性,能夠滿足高併發、高負載場景下的苛刻需求。它支援排程 K8s 等容器應用流量,並可管理海量域名,輕鬆滿足大型網站和複雜應用的需求。
如果你喜歡這個教程,請訂閱這個部落格網站和我們的 YouTube 頻道 或 B 站頻道。謝謝!
關於作者
章亦春是開源 OpenResty® 專案創始人兼 OpenResty Inc. 公司 CEO 和創始人。
章亦春(Github ID: agentzh),生於中國江蘇,現定居美國灣區。他是中國早期開源技術和文化的倡導者和領軍人物,曾供職於多家國際知名的高科技企業,如 Cloudflare、雅虎、阿里巴巴, 是 “邊緣計算“、”動態追蹤 “和 “機器程式設計 “的先驅,擁有超過 22 年的程式設計及 16 年的開源經驗。作為擁有超過 4000 萬全球域名使用者的開源專案的領導者。他基於其 OpenResty® 開源專案打造的高科技企業 OpenResty Inc. 位於美國矽谷中心。其主打的兩個產品 OpenResty XRay(利用動態追蹤技術的非侵入式的故障剖析和排除工具)和 OpenResty Edge(最適合微服務和分散式流量的全能型閘道器軟體),廣受全球眾多上市及大型企業青睞。在 OpenResty 以外,章亦春為多個開源專案貢獻了累計超過百萬行程式碼,其中包括,Linux 核心、Nginx、LuaJIT、GDB、SystemTap、LLVM、Perl 等,並編寫過 60 多個開源軟體庫。
關注我們
如果您喜歡本文,歡迎關注我們 OpenResty Inc. 公司的部落格網站 。也歡迎掃碼關注我們的微信公眾號:
翻譯
我們提供了英文版原文和中譯版(本文)。我們也歡迎讀者提供其他語言的翻譯版本,只要是全文翻譯不帶省略,我們都將會考慮採用,非常感謝!




































































