打开wireshark,并在IE浏览器输入www.163.com,抓到DNS数据包,作如下解析。
一、DNS请求报文(略去前面的Ethernet,IP,UDP头部)
0000 a0 7d 01 00 00 01 00 00 00 00 00 00 03 77 77 77 .}...........www
0010 03 31 36 33 03 63 6f 6d 00 00 01 00 01 .163.com.....
1.先分析下头部(12B),黑色显示部分
ao 7d:标识
01 00:标志字段中,QR置0,表示查询,RD置1,表示期望递归查询
00 01:问题数为1
00 00:资源记录数为0
00 00:授权记录数为0
00 00:额外资源记录数为0
2.查询问题部分
(1) 查询名字段
03 77 77 77 03 31 36 33 03 63 6f 6d 00
03 77 77 77:03表示后面标识符有3个字符,77表示’w’ ,03 77 77 77 合起来:www
03 31 36 33:03表示后面标识符有3个字符,31为’1’,36为’6’,33表示’3’,合起来:163
03 63 6f 6d:03表示后面标识符有3个字符,63为’c’,6f为’o’,6d为’m’,合起来:com
00:结束
(2)查询类型 00 01
00 01:type为A,表示期望获得域名的IP地址
(3)查询类 00 01
00 01:class为IN,表示互联网地址
二、DNS响应报文内容(略去前面的Ethernet,IP,UDP头部)
0000 a0 7d 81 80 00 01 00 04 00 02 00 02 03 77 77 77 .}...........www
0010 03 31 36 33 03 63 6f 6d 00 00 01 00 01 c0 0c 00 .163.com........
0020 05 00 01 00 00 2a 2d 00 19 03 77 77 77 05 63 61 .....*-...www.ca
0030 63 68 65 04 67 73 6c 62 07 6e 65 74 65 61 73 65 che.gslb.netease
0040 c0 14 c0 29 00 01 00 01 00 00 00 27 00 04 79 c3 ...).......'..y.
0050 b2 eb c0 29 00 01 00 01 00 00 00 27 00 04 79 c3 ...).......'..y.
0060 b2 e9 c0 29 00 01 00 01 00 00 00 27 00 04 79 c3 ...).......'..y.
0070 b2 ea c0 33 00 02 00 01 00 00 00 27 00 08 05 67 ...3.......'...g
0080 73 6c 62 32 c0 38 c0 33 00 02 00 01 00 00 00 27 slb2.8.3.......'
0090 00 08 05 67 73 6c 62 31 c0 38 c0 92 00 01 00 01 ...gslb1.8......
00a0 00 00 45 d3 00 04 3d 87 ff 8f c0 7e 00 01 00 01 ..E...=....~....
00b0 00 00 21 7b 00 04 dc b5 1c a8 ..!{......
1.头部(12B)
a0 7d 81 80 00 01 00 04 00 02 00 02
(1)a0 7d:标识
(2)81 80:标志字段中,QR置1,表示响应;RD置1,在响应中返回;RA置1,表示名字服务器支持递归查询。
(3)00 01:问题数为1
(4)00 04:资源记录数为4
(5)00 02:授权记录数为2
(6)00 02:额外资源记录数为2
2.查询问题部分(17B)
03 77 77 77 .}...........www
0010 03 31 36 33 03 63 6f 6d 00 00 01 00 01
(1)03 77 77 77 03 31 36 33 03 63 6f 6d 00:域名为www.163.com
(2)00 01:查询类型为1
(3)00 01:查询类为1
3.回答(37B)
回答1:
c0 0c 00 .163.com........
0020 05 00 01 00 00 2a 2d 00 19 03 77 77 77 05 63 61 .....*-...www.ca
0030 63 68 65 04 67 73 6c 62 07 6e 65 74 65 61 73 65 che.gslb.netease
0040 c0 14
(1)c0 0c:域名,采用压缩方法,表示从DNS报文开始处偏移0x0c即12个字节的内容:03 77 77 77 03 31 36 33 03 63 6f 6d 00 即:www.163.com
(2)00 05:查询类型为CNMAE(5),表示资源数据是另一主机的别名
(3)00 01:查询类为1
(4)00 00 2a 2d:生存时间(TTL)
(5)00 16:资源数据长度,值为25
(6)03 77 77 77 05 63 61 63 68 65 04 67 73 6c 62 07 6e 65 74 65 61 73 65 c0 14
资源数据的前23个字节内容为:www.cache.gslb.netease
后两个字节c0 14:压缩数据 ,表示从DNS报文开始处偏移0x14即20个字节的内容:03 63 6f 6d 即:com
两部分连结起来即为:www.cache.gslb.netease.com
回答2:
c0 29 00 01 00 01 00 00 00 27 00 04 79 c3 ...).......'..y.
0050 b2 eb
(1)c0 29:压缩数据,表示从DNS报文开始处偏移0x29即41个字节的内容:03 77 77 77 05 63 61 63 68 65 04 67 73 6c 62 07 6e 65 74 65 61 73 65 c0 14即域名为:www.cache.gslb.netease.com
(2)00 01:查询类型为1
(3)00 01:查询类为1
(4)00 00 00 27:生存时间(TTL)
(5)00 04:资源数据长度为4
(6)79 c3 b2 eb:IP地址为121.195.178.235
回答3:
c0 29 00 01 00 01 00 00 00 27 00 04 79 c3 ...).......'..y.
0070 b2 e9
(1)c0 29:压缩数据,表示从DNS报文开始处偏移0x29即41个字节的内容:03 77 77 77 05 63 61 63 68 65 04 67 73 6c 62 07 6e 65 74 65 61 73 65 c0 14即域名为:www.cache.gslb.netease.com
(2)00 01:查询类型为1
(3)00 01:查询类为1
(4)00 00 00 27:生存时间(TTL)
(5)00 04:资源数据长度为4
(6)79 c3 b2 e9:IP地址为121.195.178.233
回答4:
c0 29 00 01 00 01 00 00 00 27 00 04 79 c3 ...).......'..y.
0070 b2 ea
(1)c0 29:压缩数据,表示从DNS报文开始处偏移0x29即41个字节的内容:03 77 77 77 05 63 61 63 68 65 04 67 73 6c 62 07 6e 65 74 65 61 73 65 c0 14即域名为:www.cache.gslb.netease.com
(2)00 01:查询类型为1
(3)00 01:查询类为1
(4)00 00 00 27:生存时间(TTL)
(5)00 04:资源数据长度为4
(6)79 c3 b2 ea:IP地址为121.195.178.234
4.授权
授权名字服务器1:
c0 33 00 02 00 01 00 00 00 27 00 08 05 67 ...3.......'...g
0080 73 6c 62 32 c0 38
(1)co 33:压缩数据,表示从DNS报文开始处偏移0x29即41个字节的内容:04 67 73 6c 62 07 6e 65 74 65 61 73 65 c0 14即:gslb.netease.com
(2)00 02:查询类型为NS(2),名字服务器
(3)00 01:查询类为1
(4)00 00 00 27:生存时间(TTL)
(5)00 08:资源数据长度
(6)05 67 73 6c 62 32 c0 38:资源数据
05 67 73 6c 62 32 表示gslb2
co 38 压缩数据即netease.com,连结起来即为:gslb2.netease.com
授权名字服务器2:
c0 33 00 02 00 01 00 00 00 27 slb2.8.3.......'
90 00 08 05 67 73 6c 62 31 c0 38
(1)co 33:压缩数据,表示从DNS报文开始处偏移0x29即41个字节的内容:04 67 73 6c 62 07 6e 65 74 65 61 73 65 c0 14即:gslb.netease.com
(2)00 02:查询类型为NS(2),名字服务器
(3)00 01:查询类为1
(4)00 00 00 27:生存时间(TTL)
(5)00 08:资源数据长度
(6)05 67 73 6c 62 31 c0 38:资源数据
05 67 73 6c 62 31 表示gslb1
co 38 压缩数据即netease.com,连结起来即为:gslb1.netease.com
5.额外记录
c0 92 00 01 00 01 ...gslb1.8......
00a0 00 00 45 d3 00 04 3d 87 ff 8f
(1) c0 92:压缩数据,05 67 73 6c 62 31 c0 38即域名为:gslb1.netease.com
(2) 00 01:查询类型为1
(3) 00 01:查询类为1
(4) 00 00 45 d3:生存时间(TTL)
(5) 00 04:资源数据长度
(6) 3d 87 ff 8f:61.135.255.143
c0 7e 00 01 00 01 ..E...=....~....
00b0 00 00 21 7b 00 04 dc b5 1c a8
(1) c0 7e:压缩数据,05 67 73 6c 62 32 c0 38 即域名为:gslb2.netease.com
(2) 00 01:查询类型为1
(3) 00 01:查询类为1
(4) 00 00 21 7b:生存时间(TTL)
(5) 00 04:资源数据长度
(6) dc b5 1c a8:220.181.28.168