DNS報文格式

2021-08-03 08:46:08 字數 1276 閱讀 8210

dns協議執行在應用層,tcp/ip需要使用ip位址,不能使用網域名稱,因此應用層需要將網域名稱轉換成ip位址。

dns使用tcp或者udp,一般使用udp,port都是53.

dns協議存在諸多rfc文件,每個rfc文件介紹其乙個側面,比如rfc 1035介紹的是網域名稱的實現和規範,rfc 1886則描述dns協議對ipv6的擴充套件支援。

1.網域名稱介紹

/ - 根網域名稱

頂級網域名稱:

- arpa,用於位址到名字轉換的特殊域。

- 7個3字元網域名稱:com, gov, mil, int, net, org, edu,其中com是商業組織,edu是教育機構,gov是美國部門,int是國際組織,mil是美**事網點,net是網路,org是其它組織。其中gov和mil僅用於美國。

- 2字元的國家域或稱為地理域

2.報文格式

標識:用於匹配query和response

標誌:

qr: 0 - query,1 - response

opcode : 0:標準查詢,1:反向查詢,2:伺服器狀態請求

aa:授權回答(authoritative anser),表示該名字伺服器是授權於該域的;

tc:使用udp時,總長度大於512bytes時截斷;

rd:query中設定,表示期望遞迴查詢(recursion desired),即名字伺服器會聯絡其它名字伺服器。如果該bit為0,當名字伺服器沒有授權回答時,就返回乙個能解答該查詢的其它名字伺服器列表,叫做迭代查詢;

ra:可用遞迴,表示名字伺服器支援遞迴查詢。

rcode:0 - 沒有差錯,3 - 名字差錯。名字差錯只能從乙個授權名字伺服器上面返回,表示查詢中指定的網域名稱不存在。

3.主要型別和類

型別:1  

- a  

- ip位址;

2  - ns  

- 名字伺服器;

12- ptr  

- 指標記錄,用於反向查詢,指標查詢請求獲得乙個ip位址對應的網域名稱。 類:

1 - in,internet位址

4.資源記錄(rr)格式

生存時間的單位為秒

長度為位元組

DNS報文格式

dns報文格式 借個圖貼過來 說明一下 並不是所有dns報文都有以上各個部分的。圖中標示的 12位元組 為dns首部,這部分肯定都會有,首部下面的是正文部分,其中查詢問題部分也都會有。除此之外,回答 授權和額外資訊部分是只出現在dns應答報文中的,而這三部分又都採用資源記錄 recource rec...

mysql報文格式 Mysql 報文格式

mysql client和server端之間的的資料根據不同的協議規則的進行組織傳送。每包資料在傳送的時候都要新增上協議頭。mysql原始碼採用5.7.10版本 協議頭 每個協議頭共4個位元組 包資料長度 前三個位元組表示資料部分的長度 不包括協議頭 三位元組能表示的最大長度是16m 1 2 24 ...

mysql報文格式 Mysql 報文格式

mysql client和server端之間的的資料根據不同的協議規則的進行組織傳送。每包資料在傳送的時候都要新增上協議頭。mysql原始碼採用5.7.10版本 協議頭 每個協議頭共4個位元組 包資料長度 前三個位元組表示資料部分的長度 不包括協議頭 三位元組能表示的最大長度是16m 1 2 24 ...