DNS 配置

OpenResty Edge 可以當做 DNS 的權威解析伺服器。

如下示意圖:

在不考慮 DNS 快取的情況下,客戶端解析 example.com 需要經過這兩個環節:

  1. 查詢根域名伺服器,獲取 example.com 的權威伺服器地址。
  2. 查詢 example.com 的權威伺服器,獲取 example.com 的地址。

如果希望使用 OpenResty Edge 閘道器來實現權威伺服器,需要將權威伺服器地址指向閘道器節點

啟用 DNS

在使用 DNS 服務之前,需要確保 全域性配置/DNS是啟用的狀態。

建立 DNS 應用

選擇 DNS 選項卡,點選建立新的 DNS 應用。

按照提示填寫解析的域名和域名伺服器,如 example.com 和 ns1.example.com/ns2.example.com。

解析到閘道器節點

在域名提供商的管理控制檯裡,將域名伺服器(如 n1s.example.com)的解析指到閘道器節點上。

如在 Godaddy 上,就是先新增主機名 ns1 和 ns2,IP 地址為 Edge 的閘道器節點 IP,然後再將域名伺服器設定為 ns1.example.com / ns2.example.com。

等待 NS 記錄解析生效後,閘道器節點就可以提供 DNS 解析的服務了。

新增 DNS 記錄

在 DNS 應用列表中選擇建立好的 DNS 應用,點選新增 DNS 記錄。

支援新增的 DNS 記錄型別有:A、AAAA、CNAME、MX、TXT、NS,同時可以根據使用者網路型別解析到不同的閘道器節點,

目前可選擇的網路型別有國家,地區以及運營商。

自動選擇合適的 DNS 記錄

在建立 DNS 記錄的時候可以選擇該條記錄對應的網段,Edge 會透過請求的 IP 地址返回對應的 DNS 記錄

或者透過 cidr 的方式

計算推薦配置

如果不想手動配置每條 DNS 記錄,可以使用 計算推薦配置

填入配置,會根據配置生成合適的 DNS 記錄

DNS 記錄優先順序

OpenResty Edge 可以針對不同的網路來源,配置不同的 DNS 解析記錄。比如配置如下兩條 DNS 記錄:

  1. 來自北京的 DNS 請求,解析到 1.1.1.1 這個 IP
  2. 來自中國的 DNS 請求,解析到 2.2.2.2 這個 IP

針對這種存在包含關係的 DNS 記錄,OpenResty Edge 會按照精確度優先的原則來解析。 比如:

  1. 如果客戶端來自北京,則會應用規則 1,解析到 1.1.1.1
  2. 如果客戶端來自非北京的中國其他地區,則會應用規則 2,解析到 2.2.2.2

DNS 記錄支援主備設定

型別 + 記錄 + 網路型別 完全相同的 DNS 記錄可以設定互為主備

預設只使用主 DNS 記錄,以下情況會使用備 DNS 記錄:

  1. 沒有主 DNS 記錄
  2. 開啟了健康檢查後,主 DNS 記錄不健康

DNS 繫結到 k8s 叢集

DNS 繫結到 k8s 叢集后會自動管理 DNS 記錄

新建 DNS 應用時開啟 map to kubernetes 開關,選擇 k8s 叢集,點選建立按鈕。