網路中的dns是什麼意思(dns是幹嘛用的)
歡迎關注 "教程與解決方案",多平臺同名。官網 docs.fuyeor.com
目錄:
- 什麼是DNS,它主要做什麼?
- DNS都支援那些記錄型別?都是如何工作的?
DNS是域名系統 (Domain Name System) 是網際網路重要服務之一。是將域名和IP地址相互對映的一個分散式資料庫,能夠使人更方便地訪問網際網路。
當前,對於每一級域名長度的限制是63個字元,域名總長度則不能超過253個字元。
什麼是DNS,它主要做什麼?
將域名(例:fuyeor.com)解析為IP地址(例:47.99.212.245)
假設網站伺服器的IP地址為 47.99.212.245,要訪問它,則要在瀏覽器位址列內輸入:47.99.212.245。然而IP地址是難以記憶的,所以人們發明了DNS服務,用便於記憶的域名(例如:fuyeor.com)代替IP地址。訪問域名時,DNS伺服器將域名解析到IP地址上。
那麼,訪問諸如域名 docs.fuyeor.com的時候,瀏覽器中都傳送了什麼呢?
其實,主要發生了以下幾步:
- 1.根據域名,進行DNS域名解析;
- 2.根據解析的IP地址,建立TCP連線;
- 3.向IP地址,傳送HTTP請求;
- 4.伺服器處理請求;
- 5.返回響應結果;
- 6.關閉TCP連線;
- 7.瀏覽器解析HTML;
- 8.瀏覽器佈局渲染;
其中:
- 瀏覽器先去瀏覽器的DNS Cache(DNS快取)裡查詢,如若DNS快取中沒有則請求DNS伺服器。
- 請求DNS伺服器進行DNS解析前,首先檢查域名是否在 Hosts 檔案裡,如若無,則去DNS伺服器解析。
DNS都支援那些記錄型別?
DNS一般支援A、CNAME、MX、TXT、SRV、AAAA、NS、CAA記錄型別。
記錄型別 | 功能描述 |
A | IPV4記錄,支援將域名對映到IPv4地址使用。新增 A 記錄可實現將域名指向 IP 地址。 |
AAAA | IPV6記錄,支援將域名對映到IPv6地址使用。實現訪問者通過 IPv6 地址訪問網站。 |
CNAME | 別名記錄,支援將域名指向另外一個域名。 |
MX | (MX mail exchanger)電郵互動記錄,支援將域名指向郵件伺服器地址。設定郵箱時需要新增 MX 記錄。 |
TXT | 文字記錄,是任意可讀的文字DNS記錄。對域名進行標識和說明,可以使用 TXT 記錄。 |
SRV | 伺服器資源記錄,用來標識某臺伺服器使用了某個服務,常見於微軟系統的目錄管理 |
NS | 名稱伺服器記錄,支援將子域名委託給其他DNS服務商解析 |
CAA | CAA資源記錄,可以限定域名頒發證書和CA(證書頒發機構)之間的聯絡 |
DNS解析記錄
A記錄
A記錄是DNS最常見、最常用。最本質的服務。即將域名解析為IP地址。
新增 A 記錄可實現將域名指向 IP 地址。
- 記錄型別:選擇 A
- 主機記錄:一般是指子域名的字首(如需建立子域名為www.dns-example.com, 主機記錄輸入 www;如需實現dns-example.com,主機記錄輸入 @)。
- 解析線路:選擇 預設 (預設為必選項,如未設定會導致部分使用者無法訪問 )。
- 記錄值:記錄值為 IP 地址,填寫 IPv4 地址。
- TTL:為快取時間,數值越小,修改記錄各地生效時間越快,預設為10分鐘。
CNAME 記錄
CNAME 記錄又叫做 "別名"
當需要將域名指向另一個域名,再由另一個域名提供 IP 地址,就需要新增 CNAME 記錄,最常用到 CNAME 的場景包括做 CDN、企業郵箱、全域性流量管理等。
- 記錄型別:選擇 CNAME
- 主機記錄:一般是指子域名的字首(如需建立子域名為www.dns-example.com的解析, 主機記錄輸入“ www”;如需實現根域名,例如fuyeor.com的解析,主機記錄輸入“@”)
- 解析線路:預設為必填項,否則會導致部分使用者無法解析。
- 記錄值:記錄值為 CNAME 指向的域名,只可以填寫域名。
- TTL:為快取時間,數值越小,修改記錄各地生效時間越快,預設為10分鐘。
MX記錄
用於設定域名郵箱的記錄
設定郵箱時,讓郵箱能收到郵件,就需要新增 MX 記錄。MX全稱為mail exchanger,用於電子郵件系統發郵件時根據收信人的地址字尾來定位郵件伺服器。例如,當有人發郵件給“[email protected]”時,系統將對“example.com”進行DNS中的MX記錄解析。如果MX記錄存在,系統就根據MX記錄的優先順序,將郵件轉發到與該MX相應的郵件伺服器上。
- 記錄型別:選擇 MX
- 主機記錄:一般是指子域名的字首,(要做[email protected]的郵箱,所以主機記錄輸入“ @ ”;要做[email protected],如果主機記錄填 mail)。
- 解析線路:預設為必填項,否則會導致部分使用者無法解析,郵件無法收取;
- 記錄值:輸入內容通過聯絡郵箱註冊商提供。例如阿里雲郵提供的需要配置的解析記錄值是 mx1.qiye.aliyun.com;
- MX優先順序:輸入內容通過聯絡郵箱註冊商提供,MX 優先順序的數值越低,優先順序別就越高(如下圖,郵件會先嚐試傳送到 MX 優先順序為 5 的mx1.qiye.aliyun.com,如果嘗試失敗,才會傳送到 MX 優先順序為10 的mx2.qiye.aliyun.com)。
- TTL:為快取時間,數值越小,修改記錄各地生效時間越快,預設為10分鐘。
注意:以上僅是對MX記錄的設定為例,完整的建立郵箱,還需要同時設定CNAME、TXT記錄。
AAAA 記錄
當預期是實現訪問者通過 IPv6 地址訪問網站,可以使用 AAAA 記錄實現。
- 記錄型別:選擇 AAAA
- 主機記錄:一般是指子域名的字首(如需建立子域名為www.dns-example.com, 主機記錄輸入 www;如需實現dns-example.com,主機記錄輸入 @)
- 解析線路:預設為必選項,未設定會導致部分使用者無法訪問;
- 記錄值:記錄值為IP地址,填寫 IPV6 地址
- TTL:為快取時間,數值越小,修改記錄各地生效時間越快,預設為10分鐘。
TXT 記錄
如果希望對域名進行標識和說明,可以使用 TXT 記錄, TXT 記錄多用來做 SPF 記錄(反垃圾郵件)。
- 記錄型別:選擇 TXT
- 主機記錄:一般是指子域名的字首(如需為子域名為 www.dns-example.com 新增 TXT 記錄, 主機記錄輸入 www;如需為dns-example.com新增TXT記錄,主機記錄輸入 @)
- 解析線路:預設 為必選項,未設定會導致部分使用者無法解析。
- 記錄值:常用情況TXT 記錄是用來做 SPF 反垃圾郵件的,最典型的 SPF 格式的 TXT 記錄例子為“v=spf1 a mx ~all”,表示只有這個域名的 A 記錄和 MX 記錄中的 IP 地址有許可權使用這個域名傳送郵件。
- TTL:為快取時間,數值越小,修改記錄各地生效時間越快,預設為10分鐘。
URL顯性/隱性轉發
將一個域名指向另外一個已經存在的站點時,需要新增 URL 記錄。
示例:以 http://demo.fue 跳轉到 http://demo.s/ 為例。
1 . URL隱性轉發
URL隱性轉發是iframe框架技術,非重定向技術。
實現效果:
為瀏覽器位址列輸入 http://database.fue 回車,開啟網站內容是目標地址
http://fuyeor.fu/home/database-fue 的網站內容,但位址列顯示url是:http://database.fue
缺點:無論使用者點選任何連結,位址列顯示url都不會改變。
2 . URL顯性轉發
支援URL轉發301永久重定向、302暫時性定向
示例:
為瀏覽器位址列輸入 http://live.fue 後訪問,直接重定向到
http://fuyeor.fu/home/live-fue
其中, URL顯性轉發一般在雲伺服器上有如下限制:
- URL轉發時記錄值不能為IP地址
- URL轉發不支援泛解析設定。
- URL轉發前域名支援HTTP,不支援HTTPS,轉發後的目標地址支援HTTP、HTTPS。