【转载】TCP数据包实例解析
程序员文章站
2022-07-09 21:27:13
...
1、一个完整的TCP数据包
11:43:26.893811 IP 10.135.1.108.39936 > 10.135.38.95.8090: P 1:247(246) ack 1 win 12 <nop,nop,timestamp 3216248128 3584896032>
0x0000: 4500 012a cfdf 4000 3d06 3016 0a87 016c E..*..@.=.0....l
0x0010: 0a87 265f9c00 1f9a a70c c2e3 d9e2 fee9 ..&_............
0x0020: 8018 000c 9e30 0000 0101 080a bfb4 0d40 .....0.........@
0x0030: d5ad 2c20504f 5354 202f 6d71 7173 6572 ..,.POST./mqqser
0x0040: ……
0x0050: ……
0x0060: ……
0x0070: ……
0x0080: ……
0x0090: ……
0x00a0: ……
0x00b0: ……
0x00c0: ……
0x00d0: ……
0x00e0: ……
0x00f0: ……
0x0100: ……
0x0110: ……
0x0120: 7468 3a20 3631 0d0a 0d0a th:.61....
2、数据包概要信息
11:43:26.893811 IP 10.135.1.108.39936 > 10.135.38.95.8090: P 1:247(246) ack 1 win 12 <nop,nop,timestamp 3216248128 3584896032>
从IP、TCP首部提取出来的信息:
源IP端口、目的IP端口、PUSH标志、起始字节序号(数据长度)、ack标志、窗口大小12、<TCP选项中的NOP、TCP选项中的NOP、TCP选项中的时间戳、TCP选项中的回送时间戳>
3、IP首部
0x0000: 4500 012a cfdf 4000 3d06 3016 0a87 016c
0x0010: 0a87 265f
4500 012a
4:版本号
5:首部长度,5*4字节=20字节
00:服务类型
012a:IP数据包总长度0x12a=298字节=IP首部长度20字节+TCP首部长度32字节+数据净荷246字节
cfdf 4000
cfdf:包唯一标识,0xcfdf=53215
4000:0x4000=010 0 0000 0000 0000:
010:0+不要分片+没有后续分片
0 0000 0000 0000:片偏移0
3d06 3016
3d:生存时间,0x3d=61
06:协议,0x06=6,TCP协议
3016:首部校验和
0a87 016c 0a87 265f
0a87 016c:源IP=10.135.1.108
0a87 265f:目的IP=10.135.38.95
4、TCP首部
0x0010: 9c00 1f9a a70c c2e3 d9e2 fee9
0x0020: 8018 000c 9e30 0000 0101 080a bfb4 0d40
0x0030: d5ad 2c20
9c00 1f9a
9c00:源端口39936
1f9a:目的端口8090
a70c c2e3 d9e2 fee9
a70c c2e3:32位序号 2802631395
d9e2 fee9:32位确认序号 3655532265
8018 000c
8018=1000 0000 0001 1000
1000:首部长度8,8*4字节=32字节
0000 00:保留六位
01 1000:标志位,ACK+PSH
000c:窗口大小,0xc=12字节
9e30 0000
9e30:16位校验和
0000:16位紧急指针
0101 080a bfb4 0d40 d5ad 2c20:12字节选项
0101:01=无操作nop,01=无操作nop
080a bfb4 0d40 d5ad 2c20:时间戳选项,总长度为0a=12字节
bfb4 0d40:时间戳=3216248128
d5ad 2c20:回送时间戳3584896032
5、数据
0x0030: 504f 5354 202f 6d71 7173 6572
……
0x0120: 7468 3a20 3631 0d0a 0d0a
长度为246字节(0x12a-0x34=246)
本文转载于:http://blog.csdn.net/fzzmouse/article/details/9203741
11:43:26.893811 IP 10.135.1.108.39936 > 10.135.38.95.8090: P 1:247(246) ack 1 win 12 <nop,nop,timestamp 3216248128 3584896032>
0x0000: 4500 012a cfdf 4000 3d06 3016 0a87 016c E..*..@.=.0....l
0x0010: 0a87 265f9c00 1f9a a70c c2e3 d9e2 fee9 ..&_............
0x0020: 8018 000c 9e30 0000 0101 080a bfb4 0d40 .....0.........@
0x0030: d5ad 2c20504f 5354 202f 6d71 7173 6572 ..,.POST./mqqser
0x0040: ……
0x0050: ……
0x0060: ……
0x0070: ……
0x0080: ……
0x0090: ……
0x00a0: ……
0x00b0: ……
0x00c0: ……
0x00d0: ……
0x00e0: ……
0x00f0: ……
0x0100: ……
0x0110: ……
0x0120: 7468 3a20 3631 0d0a 0d0a th:.61....
2、数据包概要信息
11:43:26.893811 IP 10.135.1.108.39936 > 10.135.38.95.8090: P 1:247(246) ack 1 win 12 <nop,nop,timestamp 3216248128 3584896032>
从IP、TCP首部提取出来的信息:
源IP端口、目的IP端口、PUSH标志、起始字节序号(数据长度)、ack标志、窗口大小12、<TCP选项中的NOP、TCP选项中的NOP、TCP选项中的时间戳、TCP选项中的回送时间戳>
3、IP首部
0x0000: 4500 012a cfdf 4000 3d06 3016 0a87 016c
0x0010: 0a87 265f
4500 012a
4:版本号
5:首部长度,5*4字节=20字节
00:服务类型
012a:IP数据包总长度0x12a=298字节=IP首部长度20字节+TCP首部长度32字节+数据净荷246字节
cfdf 4000
cfdf:包唯一标识,0xcfdf=53215
4000:0x4000=010 0 0000 0000 0000:
010:0+不要分片+没有后续分片
0 0000 0000 0000:片偏移0
3d06 3016
3d:生存时间,0x3d=61
06:协议,0x06=6,TCP协议
3016:首部校验和
0a87 016c 0a87 265f
0a87 016c:源IP=10.135.1.108
0a87 265f:目的IP=10.135.38.95
4、TCP首部
0x0010: 9c00 1f9a a70c c2e3 d9e2 fee9
0x0020: 8018 000c 9e30 0000 0101 080a bfb4 0d40
0x0030: d5ad 2c20
9c00 1f9a
9c00:源端口39936
1f9a:目的端口8090
a70c c2e3 d9e2 fee9
a70c c2e3:32位序号 2802631395
d9e2 fee9:32位确认序号 3655532265
8018 000c
8018=1000 0000 0001 1000
1000:首部长度8,8*4字节=32字节
0000 00:保留六位
01 1000:标志位,ACK+PSH
000c:窗口大小,0xc=12字节
9e30 0000
9e30:16位校验和
0000:16位紧急指针
0101 080a bfb4 0d40 d5ad 2c20:12字节选项
0101:01=无操作nop,01=无操作nop
080a bfb4 0d40 d5ad 2c20:时间戳选项,总长度为0a=12字节
bfb4 0d40:时间戳=3216248128
d5ad 2c20:回送时间戳3584896032
5、数据
0x0030: 504f 5354 202f 6d71 7173 6572
……
0x0120: 7468 3a20 3631 0d0a 0d0a
长度为246字节(0x12a-0x34=246)
本文转载于:http://blog.csdn.net/fzzmouse/article/details/9203741