DNS是什麼?如何判斷DNS是否有故障?如何選擇最快的外部DNS​?

2019-08-10     IT小技術

----關注IT小技術,IT小哥和你一起學習IT小技術!


一、DNS是什麼?

DNS(Domain Name System,域名系統),在網際網路上域名和IP位址相互映射,能夠讓用戶更方便的訪問網際網路,當用戶想訪問某個網站的時候,可以直接通過域名去訪問,而不需要記住伺服器的IP位址。

如果我們訪問百度,我們會直接在瀏覽器中,可以輸入百度的域名www.baidu.com,可以直接訪問到百度網頁。




如果知道了百度網站的IP位址,也可以通過使用IP位址去訪問百度網站。


那如何知道百度網站的IP位址呢?有兩種方法可以查看IP位址:


第一種方法:ping命令,去解析DNS的IP位址

這時可以通過ping www.baidu.com,這時來自 180.97.33.107就是百度網站中,其中的一個伺服器的IP位址。





第二種方法:用nslookup去進行DNS解析IP位址。

1:進入系統後,點「開始->運行->輸入CMD」後回車進入DOS模式。

2:輸入nslookup命令後回車,將進入DNS解析查詢介面。

3:命令行窗口中會顯示出當前系統所使用的DNS伺服器地址,例如IT哥的DNS伺服器IP為218.2.135.1。

4:然在符號後面輸入>www.baidu.com,通過218.2.135.1DNS去解析www.baidu.com出來的IP位址是,在非權威應答中的,Addresses:180.97.33.108,180.97.33.107。



也可以在瀏覽器直接輸入此180.97.33.107或者 180.97.33.108來訪問百度網站,輸入完地址後會,按回車鍵,網頁會直接跳轉到百度網站。



我們還可以通過NSlookup來判斷,本地計算機的DNS是否可以正常工作。假如不能正常工作,那麼DNS解析應該是不能夠正常進行解析的,會收到多個DNS request timed out,timeout was 2 seconds的提示信息,這說明本地計算機確實出現了DNS解析故障。

通過Nslookup命令來判斷DNS是否正常是一個非常好的辦法。



二、如果不使用外部DNS伺服器,使用區域網內部DNS,那該如何去配置?

這時候要看本地計算機使用的DNS地址是多少?,並且查詢他的運行情況。

第一步:通過「開始->運行->輸入CMD」後回車進入命令行模式。

第二步:輸入ipconfig/all命令來查詢網絡參數。

第三步:在ipconfig /all顯示信息中能夠看到一個地方寫著DNS SERVERS,這個就是本地的DNS伺服器地址。

例如IT小哥的是218.2.135.1和114.114.114.114。從這個地址可以看出是個外網地址,如果使用外網DNS出現解析錯誤時,可以更換一個其他的DNS伺服器地址即可解決問題。



第四步:如果在DNS伺服器處顯示的是個人公司的內部網絡地址,那說明該公司的DNS解析工作是交給公司內部的DNS伺服器來完成的,這時需檢查這個DNS伺服器,在DNS伺服器上進行nslookup操作看是否可以正常析。解決DNS伺服器上的DNS服務故障,一般來說問題也能夠解決。

這時我們配置了一個內部的DNS是192.168.10.1



通過nslookup去解析百度域名。

可以看本地DNS是192.168.10.1。解析出來百度的兩個公網IP位址是220.181.38.251和220.181.38.148。同時,我們訪問百度也可以通過這兩個公網IP位址去訪問百度網站。



如果在區域網內的每台電腦都一個IP位址,每個IP位址對應著自己的主機名,主機就是由一串字符組成。有了主機名,就不需要我們死記硬背每台電腦的IP位址了。



只要記住有意義的主機名即可。一個IP位址對應到一個有意義的名字,就這對應的功能即是DNS來實現的。

三、清除DNS緩存信息法:

有的時候DNS出錯,無法解析,我們也可以釋放DNS緩存,重新刷新DNS。

1:通過「開始->運行->輸入CMD」進入命令行模式。

2:在命令行模式中我們可以看到在ipconfig /?中有一個名為/flushdns的參數,這個就是清除DNS緩存信息的命令。

3:執行ipconfig /flushdns命令,當出現「successfully flushed the dns resolver cache」的提示時就說明當前計算機的緩存信息已經被成功清除。

第四步:接下來我們再訪問域名時,就會到DNS伺服器上獲取最新解析地址,再也不會出現因為以前的緩存造成解析錯誤故障了。


四、修改HOSTS(主機)文件法:

1:通過「開始->搜索」,然後查找名叫hosts的文件。

2:當然對於已經知道他的路徑的人可以直接進入c:\\windows\\system32\\drivers\\etc目錄中找到HOSTS文件。

3:雙擊HOSTS文件,然後選擇用「記事本」程序將其打開。

4:之後我們就會看到HOSTS文件的所有內容了,默認情況下只有一行內容「127.0.0.1 localhost」。(其他前面帶有#的行都不是真正的內容,只是幫助信息而已)

5:將你希望進行DNS解析的條目添加到HOSTS文件中。具體格式是先寫該域名對應的IP位址,然後空格接域名信息。

6:設置完畢後我們訪問網址時就會自動根據是在內網還是外網來解析了。

通過主機名,最終得到該主機名對應的IP位址的過程叫做域名解析(或主機名解析)





五、如何選擇最快外部的DNS?

IT小哥是在南京,使用的南京電信網,使用南京電信的DNS是218.2.135.1,ping100個包,發現平均是速度27ms。



ping 三網聯合的DNS IP 114.114.114.114 ping了100個包,平均速度是29ms



ping阿里的域名地址 223.5.5.5發現訪問的速度是37ms



ping google的域名地址 8.8.8.8發現訪問速度是58ms,ping了100個包,而且還有8個丟包。



經過上述的外部域名的對比,IT小哥選擇南京電信的DNS 218.2.135.1,對於使用域名訪問外部網站的解析會更快。

文章來源: https://twgreatdaily.com/zh-hk/NU7deGwBvvf6VcSZO6OX.html