天天看點

從CDN視角看公共DNS的選擇從CDN視角看公共DNS的選擇

從CDN視角看公共DNS的選擇

dns是網際網路上大部分流量的入口,所有依賴域名系統的網際網路服務,都需要通過dns域名解析,把使用者帶入自己的伺服器中。本篇博文将介紹介紹幾款目前最适合選用的公共dns。

1.谷歌全球dns 8.8.8.8

谷歌的8.8.8.8是最為人熟知的公共dns,它甚至成為anycast技術的代名詞,當我們談起anycast的時候,往往第一個脫口而出就是谷歌8.8.8.8。

ecs支援 8.8.8.8完美支援edns-subnet-client (誰讓這個協定就是人家谷歌提出來的呢),具有極好的cdn友好性,使用者不必擔心設定了谷歌的dns而被cdn廠商排程到美國,因為谷歌dns會将使用者請求中的使用者ip以ip段的形式攜帶在自己向權威dns伺服器的請求中,大部分cdn廠商(至少網宿科技支援)的權威dns都支援解析ecs資訊,并針對ecs中clientip段傳回使用者地區的cdn節點。

全球節點豐富 應用anycast技術,加上谷歌有自己的as号,實作了全球8.8.8.8的全球廣播,使用者的AS和谷歌的AS的網絡距離隻有一跳,這是其他dns都無法比拟的。從ipip的ping測試來看,在國外時延為16ms左右,在中國大陸時延為50ms,但是有些地區略有丢包現象。

dnssec支援 支援dnssec,雖然在國内目前dnssec應用并不廣,但是聊勝于無。

不作惡的谷歌 秉承不作惡的态度,谷歌dns從未出現過劫持,憑這一點,可以打敗百分之80的營運商local dns。

2.DNSPod 119.29.29.29

DNSPod早在2011年已經被騰訊收購,不僅做公共遞歸dns,同時也做權威dns解析。

ecs支援 沒錯,作為一個CDN從業者,在我眼中,支援ecs是一個dns變得高大上的前提,值得一提的是,dnspod是目前國内唯一一個支援ecs的公共遞歸伺服器(歡迎指正)。

時延低 119.29.29.29目前主要是國内在用,節點應該大部分也都在國内,ipip的ping測試國内時延隻有20ms,可謂良心。

3.南京信風 114.114.114.114

對國内使用者來說,114和8.8.8.8的知名度相近。很遺憾的是114目前還不支援ecs,是以對于cdn使用者來說,可能存在被排程錯誤的現象。筆者猜測,114是bgp節點接收使用者請求,然後根據使用者的ip轉發給對應dns遞歸伺服器做查詢。如果後端遞歸伺服器離使用者較遠,那麼cdn傳回的節點也會較遠。

4. openDNS 208.67.222.222

ecs支援 沒錯這家海外的dns服務商同樣支援ecs,之是以排在114後面是因為國内時延有點大,而且雖然支援ecs,但是需要通過通知opendns添加白名單的方式将權威dns添加進他們的白名單,他們才會對你的dns權威伺服器攜帶ecs資訊,否則你還是得靠dns出口排程,一樣狗帶。

5 CNNIC 1.2.4.8

終于輪到國家隊上場了,1.2.4.8,苗正根紅的國家隊dns,由cnnic-中國網際網路絡中心提供,全國時延也不錯 大概在26ms左右。不支援ecs,支援dnssec。

6 阿裡雲 223.5.5.5

阿裡巴巴集團提供的公共遞歸dns,效果應該還可以。但是不支援ecs,這麼大個阿裡,應該是因為公共dns不掙錢吧,不然早搞了。

7 你的營運商dns

你的營運商通常會為你提供2個local dns,一主一備,除了有些營運商會dns劫持外,大部分情況下他們是能夠滿足你的日常上網需求的,而且離你的網絡距離也很近。同時,他們能夠保證cdn的排程準确,這也是你需要考慮的地方。

ps:如果你發現你的營運商dns劫持了你的通路,那麼恭喜你,趕緊到工信部投訴他吧,十分有效。

繼續閱讀