網路知識掃盲 DNS

2022-09-09 09:21:08 字數 2123 閱讀 3209

一、dns 是什麼?

dns是 domain name system 的縮寫,也就是網域名稱解析系統,它的作用非常簡單,就是根據網域名稱查出對應的 ip位址。

你可以把它想象成一本巨大的**本,比如當你要訪問網域名稱www.163.com,首先要通過dns查出它的ip位址是112.48.162.8。

二、網域名稱的層級

由於後面我會講到 dns 的解析過程,因此需要你對網域名稱的層級有一些了解

三、dns 解析過程

咱們以訪問 www.163.com 這個網域名稱為例,來看一看當你訪問 www.163.com 時,會發生哪些事:

先查詢本地電腦中的 dns 快取(自己的電腦上),有則返回,沒有則進入下一步

檢視本地 hosts 檔案有沒有相應的對映記錄,有則返回,沒有則進入下一步

向本地 dns 伺服器(一般都是你的網路接入伺服器商提供,比如中國電信,中國移動)傳送請求進行查詢,本地dns伺服器收到請求後,會先查下自己的快取記錄,如果查到了直接返回就結束了,如果沒有查到,本地dns伺服器就會向dns的根網域名稱伺服器發起查詢請求:請問老大, www.163.com 的ip是啥?

本地 dns 伺服器接收到回信後,照著老大哥給的****(ip1),馬上給 .com 這個頂級網域名稱伺服器發起請求:請問 .com 大大,www.163.com 的ip 是啥?

本地 dns 伺服器接收到回信後,按照前輩的指引(ip2),又向 .163.com 這個權威網域名稱伺服器發起請求:請問 163.com 大大,請問 www.163.com 的ip是啥?

163.com 權威網域名稱伺服器接收到請求後,確認了是自己管理的網域名稱,馬上查了下自己的小本本,把 www.163.com 的ip告訴了 本地dns伺服器。

本地dns伺服器接收到回信後,非常地開心,這下總算拿到了www.163.com的ip了,馬上把這個訊息告訴了要求查詢的客戶(就是你的電腦)。由於這個過程比較漫長,本地dns伺服器為了節省時間,也為了盡量不去打擾各位老大哥,就把這個查詢結果偷偷地記在了自己的小本本上,方便下次有人來查詢時,可以快速回應。

總體來說還是挺好理解的,

總結起來就是三句話:

四、dns的快取時間

上面的幾個步驟裡,可以看到有兩個地方會快取 dns 的查詢記錄,有了快取,在一定程度上會提高查詢效率,但同時在準確率上會有所損失。

因此我們在配置 dns 解析的時候,會有乙個 ttl 引數(time to live),意思就是這個快取可以存活多長時間,過了這個時間,本地 dns 就會刪除這條記錄,刪除了快取後,你再訪問,就要重新走一遍上面的流程,獲取最新的位址。

五、dns 的記錄型別

當我們在阿里雲買了乙個網域名稱後,可以配置我們主機網域名稱解析規則,也就是 記錄

阿里雲 網域名稱雲解析常見的 dns 記錄型別如下

六、dns 報文結構

後面我將使用 wireshark 抓取 dns 的資料報,但是在開始之前 ,得先了解一下 dns 的報文結構

這個略過,不想看

八、dns 劫持 與 http 劫持

但如果此時 dns 解析出現了一些問題,當你想要訪問 www.baidu.com 時,卻返回給你 www.google.com 的ip,這就是我們常說的 dns 劫持。

與之容易混淆的有 http 劫持。

那什麼是 http 劫持呢?

你一定見過當你在訪問 某個**時,右下角也突然彈出了乙個扎眼的廣告彈窗。這就是 http 劫持。

借助別人文章裡的例子,它們倆的區別就好比是

dns劫持是你想去機場的時候,把你給丟到火車站。

http劫持是你去機場途中,有人給你塞小廣告。

Web網路安全知識掃盲

總結 web網路安全基礎知識掃盲 1.什麼是shell webshell shell就是乙個控制操作計算機的乙個命令列介面 webshell顧名思義就是通過網頁形式控制操作計算機的乙個命令列網頁介面 後門 正向就是黑客主動連線受害者 反向就是受害者主動連線黑客 2.什麼是cookie session...

CISCO知識掃盲

cisco知識掃盲 一.vlan簡介 1.什麼是vlan vlan的優勢 1 廣播控制 2 頻寬利用 3 安全性 4 延遲.2.vlan的種類 1 靜態vlan 基於埠劃分靜態vlan 2 動態vlan 基於mac位址劃分動態vlan 3.trunk中繼鏈結 1 作用 實現跨交換機之間的vlan通訊...

知識掃盲0226

一 profile維持 profile是針對每個帳戶的資料儲存,比如乙個電子商務 的使用者購物車資料.使用者配置檔案 是profile這個詞的直接翻譯,其實沒有檔案的意思,預設儲存在資料庫中,不用自己管理檔案。profile是httpcontext類的乙個屬性,是profilebase類,繼承自se...