日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Dns数据包内容分析

發布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Dns数据包内容分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
DNS(Domain Name System,域名系統),因特網上作為域名和

IP地址相互映射的一個分布式數據庫,能夠使用戶更方便的訪問互
聯網,而不用去記住能夠被機器直接讀取的IP數串。通過主機名,
最終得到該主機名對應的IP地址的過程叫做域名解析(或主機名解
析)。DNS協議運行在UDP協議之上,使用端口號53。在RFC文檔
中RFC 2181對DNS有規范說明,RFC 2136對DNS的動態更新進行
說明,RFC 2308對DNS查詢的反向緩存進行說明。

一、 域名的命名規則

1、 只能包含的字符
26個英文字母
“0,1,2,3,4,5,6,7,8,9”十個數字
“-”(英文中的連詞號)
2、 字符組合規則
在域名中,不區分英文字母的大小寫
對于一個域名的長度是有一定限制的

域名例子:www.baidu.com
gd.122.gov.cn
www.chinaedu.edu.cn
www.zephyrproject.org

二、 域名請求數據包分析

如下圖為抓取的一個dns請求包:

Dns請求包的內容如下:
2f 1f 01 00 00 01 00 00 00 00 00 00 03 64 77 6e
03 72 6f 6f 02 62 6f 00 00 01 00 01

各個字段內容如下:
Transaction ID: 0x2f1f(2byte)
Flags: 0x0100 (2byte)
Questions: 1 (2byte)
Answer RRs: 0 (2byte)
Authority RRs: 0(2byte)
Additional RRs: 0(2byte)
Queries
Name: dwn.roo.bo (對應03 64 77 6e 03 72 6f 6f 02 62 6f 00)
Type: A (Host Address) (1) (2byte)
Class: IN (0x0001) (2byte)

Dns信息中大部分項的長度都是確定的,唯一就是Queries中Name
的長度是不定的,
Name的編碼如下:Name: dwn.roo.bo (對應03 64 77 6e 03 72
6f 6f 02 62 6f 00)
其中”.”作為分割符,如上面:dwn(對應03 64 77 6e)表示這
一段長度為3,后面就是3個字符碼,后面的各段都是一樣方式,只
是在最后放置00表示結束。

三、 Dns應答數據包分析

如下圖為應答數據包

Dns應答包的內容如下:
2f 1f 81 80 00 01 00 02 00 00 00 00 03 64 77 6e
03 72 6f 6f 02 62 6f 00 00 01 00 01 03 64 77 6e
03 72 6f 6f 02 42 4f 00 00 05 00 01 00 00 01 ef
00 1c 03 64 77 6e 03 72 6f 6f 02 62 6f 01 77 09
61 6c 69 6b 75 6e 6c 75 6e 03 6e 65 74 00 c0 32
00 01 00 01 00 00 01 ef 00 04 70 5a 20 cc

各個字段內容如下:
Domain Name System (response)
Transaction ID: 0x2f1f(2byte)
Flags: 0x8180 (2byte)
Questions: 1(2byte)
Answer RRs: 2(2byte)
Authority RRs: 0(2byte)
Additional RRs: 0(2byte)
Queries
Name: dwn.roo.bo (對應03 64 77 6e 03 72 6f 6f 02 62 6f 00)
Type: A (Host Address) (1)(2byte)
Class: IN (0x0001)(2byte)
Answers
Name: dwn.roo.BO (對應03 64 77 6e 03 72 6f 6f 02 42 4f 00)
Type: CNAME (5) (2byte)
Class: IN (0x0001)(2byte)
Time to live: 495(4byte)
Data length: 28(2byte)
CNAME: dwn.roo.bo.w.alikunlun.net (對應03 64 77 6e 03 72 6f 6f 02 62 6f 01 77 09 61 6c 69 6b 75 6e 6c 75 6e 03 6e 65 74 00)
Name: dwn.roo.bo.w.alikunlun.net (2byte)
Type: A (Host Address) (1) (2byte)
Class: IN (0x0001)(2byte)
Time to live: 495(4byte)
Data length: 4(2byte)
Address: 112.90.32.204(4byte)

上面數據包中各個字段對應關系都是比較明確的。
其中Answers中Name: dwn.roo.BO最后一個段變成大寫了,與
Queries中小寫不同,所以該name需要使用(03 64 77 6e 03 72
6f 6f 02 42 4f 00)表示,若相同,就可以采用指針方式指示,只
需要2byte就夠了。
而Answers中Name: dwn.roo.bo.w.alikunlun.net與CNAME:
dwn.roo.bo.w.alikunlun.net名稱完全相同,可以用指針方式(c0
32)表示Name: dwn.roo.bo.w.alikunlun.net。(c0 32)這兩個
byte中,最高兩bit為11,表示指正方式(非指正方式,最高兩bit
為00),剩下的14bit表示Name所在的位置為從DNS信息開頭的偏
移位置,這里就表示Name在DNS開始偏移0x32的長度位置,如下
面紅色標示的內容即從DNS 0x32位置開始。
2f 1f 81 80 00 01 00 02 00 00 00 00 03 64 77 6e
03 72 6f 6f 02 62 6f 00 00 01 00 01 03 64 77 6e
03 72 6f 6f 02 42 4f 00 00 05 00 01 00 00 01 ef
00 1c
下面就是從0x32位置開始的內容Name。
03 64 77 6e 03 72 6f 6f 02 62 6f 01 77 09
61 6c 69 6b 75 6e 6c 75 6e 03 6e 65 74 00

總結

以上是生活随笔為你收集整理的Dns数据包内容分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。