DNS介紹 DNS(Domain Name System)功能變數名稱系統,是互連網上的一項服務,用於將功能變數名稱轉換為與之相對應的IP地址,功能變數名稱雖然便於記憶,但TCP/IP網路中,設備之間的通信依賴IP地址來實現,它們之間的轉換工作稱為功能變數名稱解析,功能變數名稱解析需要由專門的功能變數名稱解析伺服器來完成,DNS就是進行功能變數名稱解析的 ...
DNS介紹
DNS(Domain Name System)功能變數名稱系統,是互連網上的一項服務,用於將功能變數名稱轉換為與之相對應的IP地址,功能變數名稱雖然便於記憶,但TCP/IP網路中,設備之間的通信依賴IP地址來實現,它們之間的轉換工作稱為功能變數名稱解析,功能變數名稱解析需要由專門的功能變數名稱解析伺服器來完成,DNS就是進行功能變數名稱解析的伺服器。
主機名
主機名可以理解為網路設備的別名,通常是由一個簡短的、易於記憶的字元串組成,通過主機名可以使用戶和系統管理員輕鬆地區分和引用不同的設備。
例如:ubuntu_apache,centos_mysql,這樣很容易區分當前的作用。
功能變數名稱
域在不同的上下文中有不同的含義。但通常有一個“範圍”或“區域”的意思。在DNS中,可以理解為為標識互聯網上某個位置的名稱。
功能變數名稱(domain name):表示某個域的名稱,功能變數名稱是一串由點分隔的字元串組成。
完全限定功能變數名稱
完全限定功能變數名稱(FQDN)是主機名和功能變數名稱結合而來的,在一個域中有很多個設備,使用完全限定功能變數名稱來精准定位一個域中的指定設備。
FQDN=主機名+功能變數名稱,所以一個完全限定功能變數名稱的主機名位於功能變數名稱的前面
例如:在域 baidu.com 這個域中,可能就有很多伺服器,這個時候就通過完全限定功能變數名稱來表示這個域中的一個或者一組伺服器。類似於www.baidu.com,www就表示baidu.com中的一個或者一組設備。
www 介紹
www(World Wide Web)萬維網,所謂的萬維網其實就是個採用C/S架構信息系統,數據存放在服務端,客戶端(例如各種瀏覽器)通過特定的協議(例如http)來獲取服務端的資源。
我們平時所說的web其實就是萬維網的另外一種叫法(簡稱)。
功能變數名稱的組成
功能變數名稱分為根域、頂級域、二級域、......、最多可達到127級功能變數名稱,上面我們說了功能變數名稱是由點(.)分隔的字元串。這些點分隔的部分表示不同級別的域,從最右邊的頂級域開始,往左逐漸指向更具體的子域。
一般的功能變數名稱一般由兩級組成的 二級域.頂級域.(最末尾的 . 表示根域,通常是隱含的,不直接顯示)
例如:
baidu.com
. # 根域(可以忽略不寫)
|
|
gov edu com net org cn # 頂級域:最初只有七個
|
|
360 baidu google sougou #二級域
頂級域
剛開始頂級域只有七個,到了後面就越變越多了。常見的頂級域有以下:
-
com(表示商業公司)
-
net(表示互聯網組織)
-
edu(表示教育結構)
-
org(表示非營利性組織)
-
int(表示internet)
-
mil(表示軍事用途)
-
gov(表示政府使用)
-
cn(表示國家地區功能變數名稱,cn表示中國)
二級域
二級域就很多了,常見的二級域有這些
-
baidu
-
google
-
taobao
-
xiaomi
-
openai
-
zhihu
功能變數名稱解析流程
這裡我們說的功能變數名稱是指的完全限定功能變數名稱(FQDN)
1、功能變數名稱解析是一個將功能變數名稱轉換為與其關聯的IP地址的過程,這個過程就是由DNS來完成的,大致步驟是這樣的:
2、用戶在瀏覽器中輸入功能變數名稱。首先,瀏覽器會檢查自身的緩存中是否有對應的IP地址。若無,繼續下一步。
3、系統會檢查操作系統的DNS緩存,查看是否存在該功能變數名稱的解析記錄。若無,繼續下一步。
4、系統會將DNS查詢請求發送給用戶網路配置中指定的DNS伺服器。這個DNS伺服器會查找其緩存中的記錄。若找不到相關記錄,它會進一步查詢。
5、未解析到對應IP的DNS伺服器會向根DNS伺服器發起查詢。根DNS伺服器返回對應的TLD DNS伺服器地址。TLD DNS伺服器隨後指導查詢到負責該具體功能變數名稱的權威名稱伺服器。
6、權威名稱伺服器響應查詢,返回對應的IP地址。在返回過程中,該IP地址可能被路徑上的各個DNS伺服器緩存,以便下次更快速地解析相同的功能變數名稱請求。
DNS查詢類型
有這麼一個說法:
瀏覽器輸入 www.baidu.com這個FQDN,首先找瀏覽器緩存和系統緩存有沒有,沒有就找當前電腦配置的DNS地址,如果這個地址還沒有就直接交給根域(.)了,根域交給它的下一級域(頂域)com,com再交給它的下一級域baidu進行找,一般到這兒就能把對應的IP地址給找到了。
其實這個說法不太準確,應該這樣理解:
當用戶電腦上配置的DNS伺服器(例如ISP的DNS)沒有找到對應的IP地址時,它會將查詢請求發送到根DNS伺服器。根DNS伺服器會返回負責管理.com頂級域的權威名稱伺服器的地址。ISP的DNS根據這個地址查詢.com的權威名稱伺服器。.com的權威名稱伺服器看到請求後,將負責管理baidu.com的權威名稱伺服器的地址返回給ISP DNS。ISP DNS再查詢這個權威名稱伺服器,得到www.baidu.com的IP地址,並最終返回給用戶。
所以這個過程涉及到了DNS的兩種查詢類型,遞歸查詢和迭代查詢:
-
遞歸查詢:用戶向本地配置的ISP DNS發起請求,ISP DNS沒查詢到,會向其它的DNS伺服器查詢,這就是遞歸啊查詢
-
迭代查詢:本地的ISP DNS沒找到,會給根DNS、然後一層一層找。這就叫做迭代查詢
CDN介紹
CDN(Content Delivery Network)內容分髮網絡,可以和智能DNS進行一個簡單的類比,因為智能DNS的目標就是在整個網路範圍內將用戶的請求定向到最近的節點或區域,都是通過就近原則來提高用戶的網路體驗。