DNS? 網絡世界的導航? 就這?

目錄:

DNS(網絡世界的導航):

  • DNS服務器的作用
  • 什麼是域名
  • 域名解析測試
  • 域名解析過程
  • DNS 的負載均衡(內部和全局)

HttpDNS(導航也會出錯):

===========================================

(1) DNS 服務器的作用:
一句話概括就像是翻譯軟件,如你把一個英語單詞輸入給百度翻譯,則會返回相應的中文解釋,這樣你就知道這個單詞的作用了。 來,利用類比思維來看一下 DNS(Domain Name System),就是你把 www.baidu.com 這個域名發送給 DNS ,然後會返回百度服務器的 IP 地址( 180.101.49.11)。

(2) 什麼是域名:
就拿上面的話題來說吧,你覺得你訪問百度時是輸入 www.baidu.com 方便還是 180.101.49.11 方便呢?你是不是有疑惑爲啥訪問 www.baidu.com 會間接的訪問 180.101.49.11 這個呢? 很簡單就是做一個映射,也就是把兩者綁定起來。就像你微信綁定你的手機號差不多的道理。
我拿自己的阿里雲控制檯域名與服務器地址映射舉例:
在這裏插入圖片描述
點擊下解析,然後把自己購買的服務器地址往裏面一填,即可完成兩者的綁定。 則今後訪問自己的服務器使用域名就可以訪問啦。

(3) 域名解析測試:
快捷鍵: win + r (打開命令行)
第一種:利用 ping
在這裏插入圖片描述
第二種利用 : nslookup 這個命令可以直接看自己本地的 DNS 的服務器。
非權威應答:是指自己本地的 DNS 緩存中沒有此域名的記錄,所以需要訪問Internet 的根 DNS 服務器(後面會說)。
在這裏插入圖片描述
(4) 域名解析過程:

域名等級樹狀圖:
在這裏插入圖片描述

  • 根DNS(全球大概13個):記錄頂級域名 DNS Server 的 IP 地址,起到一個指路的作用,不做任何域名的解析。
  • 頂級域名(.com . cn …):也就是一級域名,負責解析後綴與之相應的域名,然後返回對應得 權威DNS服務器地址
  • 權威DNS:爲哈叫權威? 我的域名我做主呀。作用:返回對應域名的服務器地址。
    在這裏插入圖片描述
    流程: 當我們訪問 www.baidu.com 的時候先查詢本地 DNS 服務器有沒有對應的緩存記錄,如果有則返回,沒有則去訪問根DNS,然後在訪問頂級域名服務器,最後訪問權威服務器獲取百度服務器的地址。
    Note: 這裏的本地DNS,如果你是通過DHCP 獲取的IP地址,則本地DNS 是由對應的運營商分配的

(5)DNS 的負載均衡(內部和全局):

負載均衡: 就拿寄快遞來說,你所在的城市肯定不止一家相同的快遞公司對吧? 不同的人可以選擇附近的網點去寄快遞達到相同的效果。
簡單點說就是訪問一個資源時不止一種方式可訪問。

內部負載均衡:
訪問數據庫時,我是需要將數據庫服務器的 ip 綁定到 DNS ,還是將其域名綁定呢? 如果綁定的是 Ip 那一個機房內的數據庫服務器換了 IP 時,就得一個個的刪了舊的添加新的。這總吃力不討好的事,難道香嗎?
所以我們一般會將數據庫服務器的域名(可以將多個數據庫的IP地址與一個域名綁定,就像每次 Ping 百度時有時的服務器地址是不一樣的) 與DNS 綁定,這樣訪問數據庫時可以根據網絡擁塞狀況什麼的返回對應的IP。

全局負載均衡:
作用: 不同運營商的客戶可以訪問相同運營商機房中的資源,有利於提高吞吐量,減少延遲。
場景: 對於複雜的大型應用,如跨地域運營商的大型應用(如京東,淘寶…)則需要全局負載均衡。

舉例:通過DNS訪問數據中心上的靜態資源爲例。
一般的大型應用資源都會採用分佈式,如 Cdn 網絡分發資源到全球給地所部署的服務器內。這樣每個分部的服務器就需要單獨的IP 地址。

在這裏插入圖片描述
過程解釋:
當沒有使用負載均衡時,就和(4)域名解析過程 相同。在配置了負載均衡之後: 以訪問 your.company.com 爲例

  1. 客戶端查看本地緩存是否存在記錄,如果發現沒有。則請求本地 DNS 。
  2. 如果也沒有相應的記錄,則需要訪問根服務器,一直到訪問權威服務器,這時如果配置負載均衡則會給你所訪問的域名通過 CNAME 的方式添加一個別名(your.company.vip.com).
  3. 通過別名去找 Layer 1 GSLB 返回第二次的 GSLB的服務器地址
  4. 訪問 Layer 2 GSLB ,獲取離我最近的服務器IP地址。

圖注:
Region 1 (代表一個數據中心),裏面的集羣啥的就是存儲一些數據資源,不必過分追究。

GSLB(GLobal Server Load Balance): 全局負載均衡器

Layer 1 GSLB :獲取用戶在使用哪個運營商提供的服務。(通過本地的 DNS 服務器所在的運營商)

Layer 1 GSLB : 獲取用戶的物理位置(通過本地的 DNS 服務器所在的地址)

問:這裏爲啥要分運營商和區域?

總結
DNS 其實就是一個翻譯器,通過負載均衡也就是通過不同的方式將你需要的 IP 返回給你。其實作爲網絡世界裏的導航,也是會有出錯的時候的,那麼這時候 HttpDNS 就會閃亮登場啦。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章