偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

扒一扒 DNS 的前世今生

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
簡(jiǎn)單來(lái)說(shuō),DNS(域名系統(tǒng))就是域名和各種數(shù)據(jù)之間的一個(gè)映射表。最常見(jiàn)的映射就是把像?chatgpt.com?這樣的域名轉(zhuǎn)換成電腦能懂的IP地址。

今天給大家科普一下關(guān)于DNS的相關(guān)知識(shí),講一講一個(gè)網(wǎng)址背后發(fā)生的一些故事。

簡(jiǎn)單來(lái)說(shuō),DNS(域名系統(tǒng))就是域名和各種數(shù)據(jù)之間的一個(gè)映射表。最常見(jiàn)的映射就是把像 chatgpt.com 這樣的域名轉(zhuǎn)換成電腦能懂的IP地址。

當(dāng)你把 chatgpt.com 敲進(jìn)瀏覽器時(shí),DNS 就會(huì)出馬,找到并返回這個(gè)域名綁定的 IP 地址:

圖片圖片

當(dāng)然啦,這背后發(fā)生了很多事。在這篇文章里,我們就來(lái)扒一扒它到底是怎么運(yùn)作的。

我希望這篇文章能比 ChatGPT 或者 DeepSeek 講得還好懂,要是連它們都能寫(xiě)得比我好,那我就太失敗了!

好了,閑話少說(shuō),咱們開(kāi)始吧。

DNS 誕生之前

在深入 DNS 之前,咱先看看它出現(xiàn)之前是啥情況。

在 80 年代現(xiàn)代互聯(lián)網(wǎng)出現(xiàn)之前,有個(gè)叫ARPAnet的玩意兒。它是當(dāng)時(shí)第一個(gè)分組交換網(wǎng)絡(luò),算是現(xiàn)代互聯(lián)網(wǎng)的老祖宗。

ARPAnet 用一個(gè)叫HOSTS.TXT的文件,把服務(wù)器的域名和網(wǎng)絡(luò)地址(也就是 IP 地址)對(duì)應(yīng)起來(lái)。

這個(gè)文件大概長(zhǎng)這樣:

# 官方 ARPANET 主機(jī)表 (hosts.txt)
# 格式:<IP 地址>    <主機(jī)名>    [別名]    # [注釋]

10.0.0.6    mit-ai        # MIT 人工智能實(shí)驗(yàn)室
10.0.0.7    sri-nic       # SRI 網(wǎng)絡(luò)信息中心
10.0.0.11   ucla-seismo   # 加州大學(xué)洛杉磯分校 地震學(xué)系
10.0.0.13   berkeley      # 加州大學(xué)伯克利分校
10.0.0.14   stanford      # 斯坦福大學(xué)

# 別名 (可選項(xiàng),跟在主機(jī)名后面)
10.0.0.6    mit           mit-ai

這個(gè)“主” HOSTS.TXT 文件就一份,由斯坦福研究所 (SRI) 獨(dú)家維護(hù)。這慢慢就出問(wèn)題了,為啥呢?

  • 流量和服務(wù)器壓力山大:所有設(shè)備都得找 SRI 的服務(wù)器查名字,SRI 服務(wù)器快被壓垮了。
  • 名字撞車(chē)越來(lái)越頻繁:網(wǎng)絡(luò)變大了,大家想用的好名字就那些,沖突越來(lái)越多。
  • 文件變得巨胖:文件大小漲到了 100-200KB?,F(xiàn)在看這點(diǎn)數(shù)據(jù)不算啥,但在 80 年代的基礎(chǔ)設(shè)施條件下,這已經(jīng)是個(gè)大瓶頸了。

這些問(wèn)題可太要命了,直接催生了 DNS 的誕生。

DNS登場(chǎng)

DNS 架構(gòu)

DNS (域名系統(tǒng))最好理解成一個(gè)分布式的和層次化的系統(tǒng)。

啥意思呢?

  • 分布式:意思是 DNS 運(yùn)行在好多臺(tái)互相連接的服務(wù)器(也就是 DNS 服務(wù)器)上。
  • 層次化:DNS 組織成一個(gè)樹(shù)狀結(jié)構(gòu),上面的服務(wù)器管著下面的服務(wù)器。等會(huì)兒講到 DNS 區(qū)域時(shí)再細(xì)說(shuō)。

DNS 記錄

現(xiàn)在我們知道了,DNS 就是一堆服務(wù)器按樹(shù)狀結(jié)構(gòu)組織起來(lái),互相通信。那這些服務(wù)器存啥呢?

DNS 服務(wù)器存的就是DNS 記錄??磦€(gè)例子:

# DNS 記錄結(jié)構(gòu)
# 域名              TTL(秒)  類(lèi)別  類(lèi)型     數(shù)據(jù)
example.com.        3600     IN    A       93.184.216.34
www.example.com.    3600     IN    CNAME   example.com.
example.com.        3600     IN    MX      10 mail.example.com.
mail.example.com.   3600     IN    A       93.184.216.50
example.com.        3600     IN    TXT     "hello world"

來(lái)詳細(xì)掰扯掰扯每個(gè)字段是啥意思:

  • 域名:就是互聯(lián)網(wǎng)上的域名,比如 chatgpt.com。注意結(jié)尾那個(gè)點(diǎn) . 表示根域(通??梢允÷裕?/li>
  • TTL:生存時(shí)間(單位秒)。意思是這個(gè)記錄你能在本地緩存多久,過(guò)期了就得去問(wèn)權(quán)威服務(wù)器要新的。
  • 類(lèi)別:這玩意兒基本總是IN,代表“互聯(lián)網(wǎng)” (Internet)。還有別的類(lèi),像CH或HS,但現(xiàn)在基本不用了。
  • 類(lèi)型:代表這條記錄存的是哪類(lèi)數(shù)據(jù)。最常見(jiàn)的類(lèi)型有:

A:代表一個(gè)IPv4 地址。

AAAA:代表一個(gè)IPv6 地址。

CNAME:意思是規(guī)范名稱(chēng),就是給另一個(gè)域名起個(gè)別名。

MX:郵件交換器,指定誰(shuí)來(lái)收這個(gè)域名的郵件(后面跟優(yōu)先級(jí),數(shù)字越小越優(yōu)先)。

TXT:文本記錄,可以存任意文本(比如驗(yàn)證信息、安全策略啥的)。

  • 數(shù)據(jù):你要查的那個(gè)信息的真身。具體是啥完全取決于類(lèi)型字段。

DNS 區(qū)域

還記得我們說(shuō) DNS 是個(gè)大樹(shù)嗎?

那么,一個(gè) DNS 區(qū)域就可以代表整棵樹(shù)、樹(shù)的一個(gè)分支、或者樹(shù)里的一個(gè)節(jié)點(diǎn)。

在下面的示意圖里,我圈出了兩個(gè)分支,標(biāo)為區(qū)域1和區(qū)域2。不過(guò)區(qū)域怎么劃分其實(shí)挺隨意的。

圖片圖片

關(guān)鍵點(diǎn)在于:位于一個(gè)區(qū)域根部的那個(gè) DNS 服務(wù)器,負(fù)責(zé)管理它下面的所有服務(wù)器。比如,example.com 這個(gè)服務(wù)器就管著 hello 和 world(如果它們是子域的話)。

DNS 服務(wù)器

“DNS 服務(wù)器”這個(gè)詞用得很寬泛,這也是我學(xué) DNS 時(shí)最暈乎的地方之一。

簡(jiǎn)單說(shuō),任何運(yùn)行 DNS 軟件的服務(wù)器都可以叫 DNS 服務(wù)器。但有四種核心角色你必須知道:

  1. 權(quán)威域名服務(wù)器:這些服務(wù)器存著它們負(fù)責(zé)的DNS 區(qū)域里所有域名的官方 DNS 記錄。比如 .com 的權(quán)威服務(wù)器就存著所有以 .com 結(jié)尾網(wǎng)站的記錄。
  2. 遞歸解析器:一個(gè)專(zhuān)門(mén)幫客戶(比如你的電腦)查找 DNS 信息的程序,還會(huì)把結(jié)果緩存起來(lái)。比如客戶說(shuō)“我要訪問(wèn) www.example.com”,遞歸解析器就把復(fù)雜的查詢(xún)過(guò)程全包了,最后直接給你返回 example.com 的正確 IPv4 地址(A 記錄)。你的路由器或 ISP(像電信、聯(lián)通)提供的 DNS 服務(wù)器通常就干這個(gè)活。
  3. 緩存服務(wù)器:專(zhuān)門(mén)用來(lái)存之前查過(guò)的 DNS 結(jié)果,這樣下次再問(wèn)就能飛快地給答案。
  4. 轉(zhuǎn)發(fā)器:它自己不去查,而是把收到的 DNS 查詢(xún)請(qǐng)求 轉(zhuǎn)給另一個(gè)能查的服務(wù)器(通常就是個(gè)遞歸解析器)去處理。

一臺(tái)物理上的 DNS 服務(wù)器可以同時(shí)干好幾樣活。比如,一個(gè)遞歸解析器通常也自帶緩存功能(也就是緩存服務(wù)器)。

DNS 查詢(xún)實(shí)例

術(shù)語(yǔ)講夠了,讓我們看個(gè)動(dòng)圖(腦補(bǔ)一下)!看看這一切是怎么配合工作的,舉個(gè)栗子??:一個(gè)客戶端第一次查詢(xún) hello.world.com 的 IP 地址(A 記錄)。

圖片圖片

請(qǐng)求內(nèi)容是:A hello.world.com? (意思就是:hello.world.com 的 IP 是啥?)


注意:存根解析器(Stub Resolver)不算真正的 DNS 服務(wù)器,它就是你電腦操作系統(tǒng)里一個(gè)簡(jiǎn)單的 DNS 客戶端,負(fù)責(zé)跟你配置的 DNS 服務(wù)器(通常是路由器或 ISP 的)對(duì)話。路由器這時(shí)通常就扮演轉(zhuǎn)發(fā)器的角色。

接下來(lái),就要進(jìn)行遞歸 DNS 查詢(xún)了。過(guò)程大概是這樣的:

  1. 客戶端問(wèn)路由器/本地DNS:“嘿,hello.world.com 的 IP 是啥?” (本地沒(méi)緩存)。
  2. 本地DNS(遞歸解析器)開(kāi)始干活:
  • 先看看自己緩存里有沒(méi)有,沒(méi)有。
  • 跑去問(wèn)根域名服務(wù)器:“.com 該找誰(shuí)管?。俊?/li>
  • 根服務(wù)器回復(fù):“.com 的事歸這些 TLD 服務(wù)器(頂級(jí)域服務(wù)器)管,地址是 X.X.X.X”。
  1. 問(wèn) .com TLD 服務(wù)器:“world.com 該找誰(shuí)管???”
  • .com TLD 服務(wù)器回復(fù):“world.com 歸這些權(quán)威服務(wù)器管,地址是 Y.Y.Y.Y”。
  1. 問(wèn) world.com 權(quán)威服務(wù)器:“hello.world.com 的 IP 是啥?”
  • world.com 的權(quán)威服務(wù)器回復(fù):“在這兒呢,hello.world.com 的 A 記錄是143.54.1.8”。
  1. 結(jié)果返回與緩存:
  • 遞歸解析器拿到最終答案 143.54.1.88,開(kāi)心地把它返回給客戶端(一路經(jīng)過(guò)路由器)。
  • 這個(gè)結(jié)果會(huì)一路被緩存:ISP 的解析器會(huì)緩存它,你的路由器(如果支持)也可能會(huì)緩存,你的電腦操作系統(tǒng)也會(huì)緩存。緩存多久?看記錄的 TTL 值,通常幾小時(shí)到幾天不等(比如 1 到 72 小時(shí))。
  1. 連接建立:客戶端瀏覽器拿到 IP 地址 143.54.1.88,終于可以向這個(gè)地址發(fā)送 HTTP 請(qǐng)求加載網(wǎng)頁(yè)了。

圖片圖片

結(jié)語(yǔ)

DNS 這玩意兒挺繞的,倒不是因?yàn)樗旧矶嚯y,而是因?yàn)橐愣臇|西實(shí)在有點(diǎn)多。

即使有了這些概念解釋和實(shí)例演示,我們也只是掀開(kāi)了 DNS 世界的一角。它在現(xiàn)實(shí)世界中能干的事和帶來(lái)的影響,遠(yuǎn)比我們這里講的要豐富和深遠(yuǎn)得多。

責(zé)任編輯:武曉燕 來(lái)源: 程序員新世界
相關(guān)推薦

2018-07-30 15:49:12

2022-07-11 20:46:39

AQSJava

2019-10-21 10:59:52

編程語(yǔ)言JavaC

2019-09-10 07:29:44

2018-04-03 15:42:40

2023-01-30 22:10:12

BeanSpring容器

2019-02-25 22:46:39

2020-01-15 15:29:52

InnoDB數(shù)據(jù)硬盤(pán)

2015-09-16 14:04:06

大數(shù)據(jù)巨頭

2023-04-10 23:05:54

NacosOpenFeignRibbon

2015-10-15 13:38:39

2015-08-18 09:12:54

app推廣渠道

2019-01-03 11:09:19

2015-09-21 10:07:31

2015-09-16 14:11:47

2017-09-07 18:45:51

C#

2022-09-30 09:40:39

智能汽車(chē)

2025-04-30 07:26:04

2014-07-30 10:55:27

2015-11-18 14:14:11

OPNFVNFV
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)