你通常不會(huì)嘗試使用 IP 地址訪問網(wǎng)站。可以這么做,但這很罕見。
你通常使用域名。比如 baidu.com 或 lio-zero.com。
這非常方便,因?yàn)槔纾铱梢愿挠糜谕泄芫W(wǎng)站的服務(wù)器和公司,同時(shí)保持相同的域名。
將人類可讀的域名映射為機(jī)器可讀的 IP 地址的系統(tǒng)稱為 DNS(域名系統(tǒng))。
DNS 是一個(gè)服務(wù)器網(wǎng)絡(luò)。您的提供商將擁有自己的 DNS,您的路由器已經(jīng)預(yù)先配置好使用它。
您也可以選擇使用阿里的 DNS 服務(wù)器,其 IP 地址為 223.5.5.5。
這些 DNS 服務(wù)器將接收來自您計(jì)算機(jī)的請求,然后會(huì)詢問它們自己的參考 DNS 服務(wù)器。
系統(tǒng)組織起來像一棵樹。頂部有一個(gè) DNS 服務(wù)器,稱為根 DNS 服務(wù)器。
為了簡化,它知道管理每個(gè)域擴(kuò)展(如 com、cn、net 和 org 等)的 DNS 服務(wù)器的 IP 地址,包括特定于國家的域擴(kuò)展和新的域擴(kuò)展(如 blog、dev 或 tech)。
這些 DNS 服務(wù)器知道其擴(kuò)展名下所有域的 IP 地址映射。
當(dāng)然,系統(tǒng)的設(shè)置是為了確保緩存、冗余和承受高并發(fā)請求的能力,但這是總體思路。
DNS 解析
由于我們輸入的是域名,而數(shù)據(jù)包是通過 IP 地址傳給對方的。因此我們需要得到域名對應(yīng)的 IP 地址。這個(gè)過程需要依賴一個(gè)服務(wù)系統(tǒng),這個(gè)系統(tǒng)將域名和 IP 一一映射,我們將這個(gè)系統(tǒng)就叫做 DNS(域名系統(tǒng))。得到具體 IP 的過程就是 DNS 解析。
當(dāng)然,值得注意的是,瀏覽器提供了 DNS 數(shù)據(jù)緩存功能。即如果一個(gè)域名已經(jīng)解析過,那會(huì)把解析的結(jié)果緩存下來,下次處理直接走緩存,不需要經(jīng)過 DNS 解析。
另外,如果不指定端口的話,默認(rèn)采用對應(yīng)的 IP 的 80 端口。
DNS 記錄
DNS 由多條不同類型的記錄組成,每條記錄都有自己的用途。以下是最常用的分類:
- A 記錄 — 地址記錄。用于將域名映射到 IPv4 地址。同樣,AAAA 記錄用于將域名映射到 IPv6 地址。
- CNAME 記錄 — 規(guī)范的名稱記錄。創(chuàng)建指向另一個(gè)域或子域的別名,但絕不是 IP 地址。
- ANAME 記錄 — 允許您將域的根指向主機(jī)名或域名。
- TXT 記錄 — 允許添加有限的文本注釋,通常用于所有權(quán)驗(yàn)證、驗(yàn)證或安全目的。
- MX 記錄 — 指定負(fù)責(zé)接受域的傳入和傳出電子郵件的郵件服務(wù)器。應(yīng)該指向郵件服務(wù)器名稱,而不是 IP 地址。
更多資料
本文首發(fā) blog,如果喜歡或者有所啟發(fā),歡迎
Star,對作者也是一種鼓勵(lì)。