DNS協議

  • 使用53端口
  • 域名不區分大小寫
  • 底層爲UDP協議而不是TCP協議
    • 如果很短時間內沒有響應返回,就再次發送記錄
    • 重複一定次數後嘗試另一個服務器
    • 每次查詢報文都包含一個標識符,並複製到響應中,以防止混淆查詢結果
  • 爲什麼瀏覽器上不了網,QQ卻能連上?
    • DNS出了故障,而QQ直接通過IP地址連接服務器,無須DNS解析

層次性服務器

  • 採用分佈式,層次性數據庫
    • 負責管理下級域的DNS服務器需要把自己的IP地址註冊到上級DNS服務器

在這裏插入圖片描述
在這裏插入圖片描述

  • 本地DNS服務器

    • 每個用戶通過ISP接入網絡時,該ISP應該提供一臺本地DNS服務器的地址
    • 當用戶主機發送DNS請求時,該請求被髮往本地DNS服務器,該服務器代替用戶向上述分層DNS數據庫迭代請求
  • 本地DNS服務器發送消息時,我們當然也需要知道DNS服務器IP地址,不過這個地址是事先設置好的,無須查詢
    在這裏插入圖片描述

  • 權威DNS服務器

    • 每個組織(域名)必須提供可訪問的權威DNS服務器來記錄組織下面的服務器地址
    • 當然也可以付費把記錄儲存在服務提供商提供的權威DNS服務器中
    • 註冊域名時,需要提供權威權威DNS服務器地址,此時註冊登錄機構將下面記錄插入DNS系統中
    (example.com, dns.example.com, NS)
    (dns.example.com, 212.212.212.1, A)
    

DNS記錄

  • 格式: (Name, Value, Type, TTL)
    • TTL表示生存時間
  • Type分類:
    • Type=A : 表示域名到IP地址的映射
      • (www.example.com, 145.37.92.1, A)
    • Type=NS : 表示該域或組織到權威DNS的域名
      • (foo.com, dns.foo.com, NS)
    • Type=CNAME : 別名到到規範域名的映射
      • 一般是多對一映射
      • (foo.com, relay1.bar.foo.com, CNAME)
        在這裏插入圖片描述

別名(CNAME)

  • 當一個服務器可以提供多種服務時,爲了方便記憶和管理,可以讓多個別名指向同一個規範域名

    • 例如host.example.com可以提供web和郵件服務,那麼可以把www.example.com@example.com都指向 host.example.com
  • 當使用CDN服務的時候,服務商提供的就是一個CNAME地址

    • CDN服務商可以比較方便更換提供的域名的A記錄,而不用變更所有使用者域名的A記錄
      在這裏插入圖片描述
  • 最上層是常規的DNS解析過程,用戶通過local DNS做遞歸查詢,最終定位到taobao.com權威DNS服務器

  • 中間層可以稱爲GSLB(Global Server Load Balancing),作用是提供域名的智能解析,根據一定的策略返回結果

    • taobao.com權威DNS服務器會根據不用的域名,CNAME到不同的GSLB做智能調度
    • CNAME的作用有點類似請求分發
  • 最下層是應用層,提供真正的服務

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