CentOS DNS服務學習
基於C/S結構,即服務器端和客戶端。對於服務器來說,端口同時用到了tcp的53和udp的53,客戶端端口一般是隨機的。
功能
在ip地址和域名之間建立映射關系,在用戶訪問時,可以解析出ip地址,以便進行通信。
同樣在本地的hosts文件中也有一份ip和主機名的映射清單。
linux 客戶端: [root@centos7 ~ ]#cat /etc/hos我sts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 windows客戶端: 路徑:%WINDIR%/system32/drivers/etc/hosts
DNS域名
對於我們經常訪問的網站如www.baidu.com有一個專業的名稱叫FQDN,即全稱域名,而我們經常將它稱為域名是不準確的。FQDN由兩部分組成:主機名(或別名)+域名,由從左到右的第一個點進行分割,前面代表的是一臺主機,後面代表的是一個組織的名稱,而這個組織的名稱又由點進行分級。
事實上,在www.baidu.com的後面是有個點的,只不過大部分情況下省略不寫。由下往上分級為:
. 根域
com 一級域名或頂級域
baidu 二級域
www 主機名
根域
根(root)域就是".",由internet名稱註冊授權機構進行管理;
頂級域
同樣由internet名稱註冊授權機構進行管理;有兩種類型:
- 組織域:三個字符
頂級域 | 說明 |
---|---|
gov | 政府部門 |
com | 商業部門 |
edu | 教育部門 |
org | 非盈利性組織 |
net | 網絡服務機構 |
mil | 軍事部門 |
- 國家或地區頂級域
國家頂級域 | 說明 |
---|---|
cn | 中國 |
tw | 中國臺灣 |
uk | 英國 |
二級域
二級域是註冊到個人、組織或公司的名稱。
二級域下面還可以有三級域、四級域等,最多127級域名,但是一般不超過5級。
主機名
代表具體的一臺主機,和域名結合成FQDN————全稱域名。
DNS工作原理
以用戶訪問www.baidu.com為例
步驟1:客戶端用戶在瀏覽器中輸入www.biadu.com後回車,系統首先會查找本地的DNS緩存或者hosts文件信息,確認是否存在www.baidu.com域名對應的ip解析記錄,如果有就直接獲取到ip地址,然後去訪問這個ip地址對應的服務器;
步驟2:如果客戶端 本地的DNS緩存或者hosts文件中沒有www.baidu.com域名對應的解析記錄,系統會將解析請求發送給客戶端本地設置的DNS服務器地址,一般稱之為local DNS(LDNS),同樣,如果LDNS服務器本地緩存有對應的解析記錄,就會直接返回ip地址給客戶端,否則,LDNS繼續請求其他的DNS服務器;
步驟3:LDNS服務器向根服務器開始請求對www.baidu.com的解析,根DNS發現沒有www.baidu.com的解析記錄,但是它可以提供.com的地址,於是返回.com的地址給LDNS服務器;
步驟4:LDNS獲取到.com的地址後,向.com的服務器的發送解析請求,.com的服務器發現也沒有相關解析記錄,但是它可以提供baidu.com的地址,於是返回baidu.com的地址給LDNS服務器;
步驟5:同理,LDNS獲取到baidu.com的ip地址後,向它發送www.baidu.com的解析請求,由於baidu.com是該域名的授權服務器,所以直接返回ip地址給LDNS服務器;
步驟6:LDNS把來自授權服務器的與www.baidu.com對應的ip解析記錄發給客戶端瀏覽器,並且LDNS會在本地把域名和ip對應的解析記錄緩存起來,以便下次更快地返回相同解析請求的記錄給客戶端。到此,整個DNS的解析流程就完成了。
DNS解析
DNS查詢類型
遞歸查詢:客戶端和它的首選DNS之間就是遞歸查詢。
叠代查詢:首選DNS和根DNS等其他DNS之間進行的查詢就是叠代查詢。
解析類型
正向解析:FQDN——IP
反向解析:IP——FQDN
面試題:
客戶端用戶在瀏覽器中輸入網址,到看到網站內容的完整訪問流程。(DNS解析流程+HTTP協議的通信原理)
CentOS DNS服務學習