DNS无法解析IP_计算机网络-DNS
DNS
DNS,英文全稱Domain Name System,也就是域名系統(tǒng)。它的作用是:用于解析用戶訪問域名的對應(yīng)IP地址
DNS解析
當我們輸入一個URL,我們的計算機首當其沖就會施展第一道魔法:DNS解析。
做這一步的目的是:為了找到我們輸入的域名的對應(yīng)IP地址,如https://www.baidu.com是域名,他對應(yīng)的ip地址可能是36.152.44.95。
注意:我們在互聯(lián)網(wǎng)上的資源最終都是以ip地址的形式來進行定位的,我們?nèi)粘]斎氲挠蛎皇菫榱朔奖愦蠹矣洃洝.吘瓜啾扔?6.152.44.95這一串數(shù)字的ip地址,我們更容易記得www.baidu.com這種域名形式。那么,我們的DNS是如何查找到我們輸入域名的對應(yīng)IP呢?我們還是以我們在瀏覽器輸入www.baidu.com為例,它的流程是這樣的:
加速DNS解析:CDN
通過上面的DNS解析過程我們可以看到,DNS解析是一個復(fù)雜的過程,用戶想要請求到域名對應(yīng)的IP地址需要經(jīng)過一層又一層的環(huán)節(jié),所以這個過程是很漫長的。還有一個問題是:我們的一個域名www.baidu.com一般都會存在多個ip對應(yīng),一個ip對應(yīng)一臺服務(wù)器,那么用戶請求的時候應(yīng)該分散到各個服務(wù)器上(應(yīng)該根據(jù)服務(wù)器的遠近和服務(wù)器的狀況進行請求,而不是大家都只請求同一臺服務(wù)器)。
為了解決這些問題,一個名為CDN(Content Delivery Network:內(nèi)容分發(fā)網(wǎng)絡(luò))的解決方案出現(xiàn)了,簡單來講CDN就是一種加速DNS尋址過程的一種手段,CDN的主要由CDN節(jié)點調(diào)度和CDN節(jié)點更新兩部分組成。
CDN節(jié)點調(diào)度
我們之前說到,一個理想的方式是:可以讓用戶訪問到最合適自己的服務(wù)器(服務(wù)器距離近且健康)。CDN的節(jié)點調(diào)度系統(tǒng)就可以幫我們分配節(jié)點完成這樣的需求:CDN調(diào)度系統(tǒng)會把最合適的CDN節(jié)點分配給我們,分配的方式主要靠以下兩種手段:
- 優(yōu)點:只需一次請求,無需轉(zhuǎn)發(fā)二次請求
- 缺點:準確性無法保障,用戶的ldns位置可能與實際位置不符(比如:北京聯(lián)通用戶使用深圳電信的LDNS)
- 適用場景:小文件傳輸(尋址開銷小)
- 優(yōu)點:準確性相比于dns要高
- 缺點:由于通過302轉(zhuǎn)發(fā),所以會請求兩次
- 適用場景:大文件傳輸(尋址開銷大,但是可以找到更高效的節(jié)點)
通過這些CDN調(diào)度優(yōu)化,我們就可以尋找到最適合自己的CDN節(jié)點,優(yōu)化頁面的傳輸過程
CDN節(jié)點更新
之前我們有說:CDN調(diào)度系統(tǒng)是把最合適的CDN節(jié)點分配給我們,那么CDN節(jié)點里面的內(nèi)容是從何而來呢?當新內(nèi)容更新的時候CDN節(jié)點里的內(nèi)容如何更新?這就要說到我們的第二個點:CDN節(jié)點更新
CDN節(jié)點更新的方式主要有兩種:
優(yōu)化手段
除了CDN這種優(yōu)化手段,我們在每個網(wǎng)頁上面也有對應(yīng)的DNS優(yōu)化手段,由于DNS本身是一個比較漫長的過程,所以我們的主要優(yōu)化目標是減少DNS的請求數(shù)量和提前進行DNS的查詢和鏈接。
減少DNS的請求數(shù)量
由于每個域名都需要進行DNS解析的過程,所以減少域名的請求,那就可以減少DNS解析的次數(shù),這樣就可以完成對應(yīng)的DNS優(yōu)化了。
聰明的小朋友可能會疑惑,這么說的話我們只需要把所有資源都放在同一域名下不是最優(yōu)方案了嗎?那為什么我看好多網(wǎng)站的資源還要分好多域名呢?
其實這是因為我們的域名并發(fā)請求是有數(shù)量限制的,比如說:如果瀏覽器在同一域名下請求資源,一次最多請求5個資源。那么如果我們要總共請求15個資源,就只能分三批先請求5個,再請求5個,最后再請求5個。關(guān)于瀏覽器具體一次能請求多少并發(fā)資源,經(jīng)測試:Chrome瀏覽器的最大并發(fā)數(shù)為6個。想要了解其他瀏覽器的并發(fā)數(shù),可以看這里。
提前進行DNS解析
提前進行DNS解析有兩種手段:
<link rel="preconnect" href="//example.com">
<link rel="preconnect" href="//cdn.example.com" crossorigin>
總結(jié)
以上是生活随笔為你收集整理的DNS无法解析IP_计算机网络-DNS的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 增量更新同步_OneDrive增量更新功
- 下一篇: sql decimal函数例子_leet