簡介
本檔案介紹EDNS使用者端子網(ECS)及其與Cisco Umbrella的配合方式。
什麼是ECS?
傳統DNS是DNS伺服器上的一個請求,該請求用單個A記錄應答進行響應。通過僅討論A記錄,可簡化此討論。同樣的過程適用於IPv6和AAAA記錄。隨著廣泛分佈的內容交付網路(CDN)和遞迴DNS服務的出現,地理位置對於最佳化體驗越來越重要。
傳統DNS會在授權DNS伺服器上定位對DNS問題的答案,並提供與DNS查詢的源最匹配的答案。要用比喻來形容,就拿電話簿來說。傳統上,唯一相關的電話簿是本地電話簿,因此您總是可以找到本地商店。查詢「Call Jim's hardware store」。 如今,一個網址在全球範圍內擁有許多位置,因此必須獲得良好的體驗,才能連線到附近的伺服器。由於遞迴DNS伺服器和分散式網路較多,因此DNS查詢的源IP不一定能成為地理定位資料的最佳來源。
圖 2:新澤西州使用者從權威性DNS尋求回覆的示例

以我們的電話簿比喻來說,一家企業在全球可能有50個網點,但作為讀者,你知道離我們最近的是什麼,並給他們打電話。Jim's hardware store一直表現不錯,因此我們對「call Jim's hardware store」的查詢可能會將您帶到新澤西的商店或者芝加哥的商店,這取決於您所諮詢的人。ECS執行相同的服務,但用於DNS查詢。EDNS客戶端子網(ECS)是一種機制,用於將DNS查詢的所需源IP地址嵌入到DNS資料包的EDNS資訊中。支援ECS的權威DNS伺服器讀取此源資訊,並使用可能的最佳位置伺服器的A記錄進行應答。對於我們的電話簿隱喻,ECS相當於指定要檢視哪個區域的電話簿的註釋。該請求將是「致電新澤西州貝爾維代雷的Jim's hardware store」,並提供理想的答案。有關詳細資訊,請訪問umbrella.cisco.com上的ECS專案首頁。
ECS和遞迴DNS伺服器
Cisco Umbrella與其他遞迴DNS服務一樣,是對基於DNS的地理定位的挑戰。傳統上,使用者會向ISP請求DNS,ISP會查詢DNS授權。這為ISP的網路IP範圍提供了良好的本地地理定位。
遞迴DNS提供商位於ISP網路之外,可以位於任何位置。Cisco Umbrella使用任播IP地址運行多個資料中心,DNS查詢可以到達全球範圍內的多個解析程式位置之一。最常見的是查詢最近的位置;但這取決於每個ISP的最佳路由。最重要的是,對於廣泛分佈的Web服務(如CDN),最近的Umbrella解析程式可能無法通過網路接近請求者的位置,並且可能會收到較差的CDN伺服器作為響應。例如,哥斯大黎加的使用者可能會訪問Cisco Umbrella的邁阿密資料中心,並從邁阿密CDN獲得內容。對於電話簿的比喻,這相當於給操作員打電話,要求得到吉姆硬體裝置的號碼。根據操作員所在的位置,您會收到基於該區域的答案。芝加哥歸還惠頓的吉姆,邁阿密可以歸還南灘的吉姆。
圖 2:新澤西州使用者向Cisco Umbrella尋求回覆的示例

ECS對於遞迴DNS提供程式的CDN非常重要,因為原始源子網可以通過ECS傳遞到CDN的授權DNS基礎設施。通過Umbrella對啟用了ECS的名稱伺服器的查詢包括請求使用者的C類網路(/24 CIDR塊)到授權DNS查詢,並返回和快取(根據TTL)相關應答。對於我們的電話簿比喻,這是呼叫操作員,要求吉姆在哥斯大黎加聖何塞附近安裝硬體。邁阿密的接線員會回覆聖佩德羅吉姆的電話號碼。
總而言之,ECS使使用者可以在世界任何地方查詢名稱伺服器,並根據其源位置接收自定義答案,即使使用遠端的遞迴DNS伺服器(支援ECS)。 最終結果是通過任何受支援的DNS服務,從世界任何地方獲得的最快的CDN伺服器。
ECS和思科資安防護傘
Cisco Umbrella基於名稱伺服器所有者的選擇使用基礎為授權DNS解析器支援ECS。許多CDN對Umbrella使用者享有快速、準確的地理定位,而某些CDN和服務尚不支援ECS。
瞭解尚未使用ECS的服務?聯絡CDN網路並詢問有關實施ECS的資訊。在Umbrella能夠向其傳送ECS資料之前,需要授權名稱伺服器支援ECS。
站點所有者,如果您現在使用ECS,請通過umbrella-support@cisco.com聯絡我們,驗證您的實施並開始從思科Umbrella接收ECS資料!支援IPv6和IPv4 ECS資料。包括要驗證的名稱伺服器(按名稱)和要驗證的域的清單。
在挖掘中使用ECS
您是否知道從9.10版開始的DNS查詢中的挖掘本機支援ECS?將「+subnet=<subnet>」直接附加到權威域名伺服器的挖掘中。請注意,如果直接查詢Umbrella,則此資料將被丟棄,並替換為源/24。有關詳細資訊,請參閱此處的文章https://support.opendns.com/hc/en-us/articles/227987687。
dig +subnet=208.67.222.0/24 <domain> @<nameserver>
在響應中查詢此子部分,以確認名稱伺服器使用ECS資料:
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
; CLIENT-SUBNET: 208.67.222.0/24/32
授權名稱伺服器所有者
您是否正在您的名稱伺服器上使用ECS,並希望為全球的Cisco Umbrella使用者發掘它的潛力?請通過umbrella-support@cisco.com與我們聯絡,以便我們可以開始將ECS資料傳送到您的名稱伺服器!在您的請求中包括一個名稱伺服器域清單和一個啟用ECS的示例域,我們可以使用該示例域來驗證您的配置。讓我們攜手構建更快的網際網路。