DNS解析時發現域名和IP不一致,訪問了該域名會如何(大廠真題)

這是一道互聯網大廠的面試真題,主要考察的就是DNS域名解析的過程是什麼樣的。以此為背景進而考察安全相關問題。綜合性還是很強滴。本文將從案例出發開始一步一步深入。

一、DNS運行原理

1、為什麼要DNS

DNS的作用在於域名解析。每個網站通常都會有一個域名和至少一個IP地址。比如說百度的域名,112.80.248.74就是百度的IP地址。

我們想要訪問百度的時候只需要輸入域名就可以,當然IP也可以,為什麼不使用IP登錄呢?看上面的數字就知道,一串複雜的數字難以記憶。我們每天要登錄大量的網站可能都需要一個小本子去記錄,訪問哪個查哪個,效率低下。因此只需要記住域名即可。

DNS解析時發現域名和IP不一致,訪問了該域名會如何(大廠真題)

但是問題來了,互聯網是通過IP地址進行數據的傳輸的,因此就需要一種手段來把我們的域名映射為IP地址,這就是DNS的作用。

2、DNS工作原理

既然DNS要把域名映射為IP地址,實現步驟是什麼樣呢?彆著急,我們先來了解一下域名服務器的概念。

DNS解析時發現域名和IP不一致,訪問了該域名會如何(大廠真題)

從上面這張圖可以看到,域名的管理是分層次的。最高級是根,也叫做根服務器。從上往下功能逐漸細化。DNS就是和這些服務器進行打交道。

有了上面的這些概念,現在我們再來認識一下DNS的工作原理就容易多了。DNS域名解析的過程有兩種,我們分別來看一下:

(1)遞歸查詢

意思是每次當前服務器查不到時,都由當前的域名服務器代勞查詢。

DNS解析時發現域名和IP不一致,訪問了該域名會如何(大廠真題)

(2)迭代查詢

意思是每次當前服務器查不到時,都由自己親自再去下屬服務器查詢。

DNS解析時發現域名和IP不一致,訪問了該域名會如何(大廠真題)

上面兩張圖解釋的比較清晰。太多的文字並不能很好地解決問題。

OK,知道了DNS如何進行域名解析之後,回到我們今天文章的問題。

二、DNS解析域名與IP不一致,訪問了該域名會發生什麼

我們的問題是基於DNS工作失敗之後出現的狀況。因此我們答案就是域名解析出現了故障會發生什麼。

(1)域名和IP不一致,域名解析成了其他的的IP地址,但是這個IP地址正確。訪問該域名就會訪問其他的網站。

如何去做呢?知乎上有一個阿里巴巴的回答:

從技術上來講是可以解析到任意IP地址的,這時候針對這個地址發起HTTP訪問,HTTP頭中的host字段會是你的域名(而非該IP對應站點的域名),如果對方的網站HTTP服務器沒有做對應的防護就可以訪問,如果方的網站HTTP服務器有防護則無法訪問。

(2)域名和IP不一致,域名解析成了其他的的IP地址,但是這個IP地址錯誤,訪問該域名就會失敗。

還有一種情況:訪問站點對應的IP地址沒有問題,然而訪問他的域名就會出現錯誤。

OK,今天的文章先到這。如有問題還請批評指正。


分享到:


相關文章: