曾經(jīng)寫過一個答案,兩年之后的今天當再次看到那個答案時,發(fā)現(xiàn)并不是很滿意。遵循著一貫的追根溯源的態(tài)度,查閱了多如牛毛的資料,最終順藤摸瓜找到了問題的答案,這個答案依然不完美,也許有一天依然需要更新。

以上官方文獻清清楚楚表明,最初的DNS域名查詢默認使用UDP協(xié)議,而使用UDP傳輸?shù)腄NS

查詢響應(Query Response)

報文,不希望任何形式的分片。換句話說,要求使用唯一的UDP報文傳輸DNS響應。

上文提到的任何形式的分片,包括DNS應用層的分片、以及IP層的分片。前者的分片只會造成DNS報文

消息作廢(Corrupted),

IP的分片同樣無法接受,因為那個時候很多原始的主機不具備IP分片的

重組(Reassemble)。

再來回顧一下當時的互聯(lián)網(wǎng)環(huán)境:

絕大多數(shù)的網(wǎng)絡接口類型支持IP報文≥576 字節(jié)無需分片自由通行

,考慮到以上諸因素,IETF決定將DNS報文體限制在512字節(jié)。每一個根域名服務器占用32字節(jié),其中包括

根域名的名稱、IP地址、TTL(Time To Live)

等參數(shù)。

13根域名服務器一共占用416字節(jié),剩余的96字節(jié)用于包裝DNS報文頭以及其它協(xié)議參數(shù)。所以從空間上來說,沒有多余的空間容納第14個根域名服務器的32字節(jié)。

13個根域名服務器列表

容易被大眾誤解的是,這13個根域名服務器并不等于13臺物理服務器,而是代表著13個全球IP地址,由12個機構(gòu)來管理,其中美國最大電信運營商Verizon管理兩個根域名全球IP地址。

截至到今天為止,全球一共有996臺服務器實例(Instances),遍布5大洲4大洋。

既然根域名服務器只有13個全球IP,而物理服務器卻有996臺,到底怎么分配的?

BGP泛播技術(shù)(Anycast)

Verizon

管理的“

IPv4:

198.41.0.4

”為例,在全球一共分布在28個站點,每個站點的服務器都使用“

198.41.0.4

”這個全球IP。

IP地址在互聯(lián)網(wǎng)上重復使用,會不會有什么問題?

記得我在講企業(yè)局域網(wǎng)的時候,著重強調(diào)IP地址要唯一,不允許有重復使用IP地址的情況發(fā)生。

但是,在互聯(lián)網(wǎng)上不同站點可以使用相同的IP地址,只要使用方是IP地址的合法使用者。

“198.41.0.4”就會在28個站點,通過BGP路由協(xié)議,28次擴散到Internet路由表。

全球的主機究竟挑選哪個“198.41.0.4”來使用呢?

當然是距離自己最近的,用BGP的專業(yè)術(shù)語表達就是

最優(yōu)路徑

。

泛播技術(shù)有哪些優(yōu)點?

根域名服務器特別重要,曾經(jīng)有黑客集中攻擊它,差一點就成功了,因為13個服務器中某些依然沒有被打趴下,源于服務器的全球式分布。

一朝被蛇咬,十年怕草繩。

互聯(lián)網(wǎng)管理機構(gòu)發(fā)現(xiàn)對付DDoS攻擊最有效的方法,就是分布式部署根域名服務器

。于是,使用了泛播技術(shù),全球有了996臺實例。

如果有一天996臺不夠用,可以添加任意多臺服務器,因為全球IP可以重復使用。

攻擊方可以打趴其中的幾十臺、甚至幾百臺,但是永遠打不趴所有臺!

如果喜歡這篇文章,請轉(zhuǎn)發(fā)給您喜歡的朋友閱讀,謝謝

!

1.《域名服務器 為何根域名服務器只有13個?》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡信息知識,僅代表作者本人觀點,與本網(wǎng)站無關(guān),侵刪請聯(lián)系頁腳下方聯(lián)系方式。

2.《域名服務器 為何根域名服務器只有13個?》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。

3.文章轉(zhuǎn)載時請保留本站內(nèi)容來源地址,http://f99ss.com/keji/344880.html