您的位置:首页 > 理论基础 > 计算机网络

TCP/IP 抓包分析

2015-09-23 22:38 1841 查看
TCP + IP 数据包格式:

应用层->TCP层->IP层->网络接口层

TCP层数据包结构:TCP头部+实际数据 (TCP头包括源和目标主机端口号、顺序号、确认号、校验字等)

1.TCP包头内存占用24byte:

源主机端口号 (2bytes)

目标主机端口号 (2bytes)

序号 (4bytes)

确认序号 (4bytes)

数据偏移 (4bits)

保留 (6bits)

URG/ACK/PSH/

RST/SYN/FIN (6bits)

窗口 (2bytes)

校验和 (2bytes)

紧急指针 (2bytes)

选项 (3bytes)

IP层数据包结构 :IP头部+TCP数据信息(IP头包括源和目标主机IP地址、类型、生存期等)

2.IP包头内存占用(20-24bytes):

版本号 (4bits) IPv4-0100
IPv6-0110

IP包头长度 (4bits) 以4字节为单位 总长度=包头长度*4

服务类型 (1byte)

IP包总长 (2bytes)

标识符 (2bytes)

标记 (3bits)

分段序号 (13bits)

生存时间 (1byte)

协议 (1byte)

头部校验 (2bytes)

源主机IP地址 (4bytes)

目标IP地址 (4bytes)

可选项

网络接口层 :帧头+IP数据包+帧尾 (帧头包括源和目标主机MAC地址及类型,帧尾是校验字)

3.内存占用:

源主机MAC地址 (6bytes)

目标主机MAC地址 (6bytes)

类型 (2bytes)

协议名
协议号
基 本 描 述
IP
0
互连网协议
ICMP
1
互连网消息协议
GGP
3
网关——网关协议
TCP
6
传输控制协议
EGP
8
外部网关协议
UDP
17
用户数据报协议
Xns_IDP
22
Xerox NS IDP
rdp
27
可靠数据流协议
rvd
66
MIT远程虚拟磁盘
表1:常见的TCP/IP协议号

端口号
关键字
基 本 描 述
7
Echo
回波
9
Discard
丢弃
11
Users
活动的用户
13
Daytime
日期
15
Netstat
网络状态
20
ftp
Port方式
21
ftp
文件传输协议
23
Telnet
远程登录
25
SMTP
电子邮件
37
Time
时间
43
Nicname
别名查询
69
TFTP
普通文件传送协议
79
Finger
用户信息查询
80
HTTP
超文本传输协议
101
Hostname
NIC主机名服务
110
POP3
邮局协议离线协议标准
表2:专用程序端口号

例一:访问192.168.1.51截下的一下握手包

0000 00
24 81 0d f3 30 4a 42 08 00 00 00 08 00 45 00

0010 00
3c 1c 60 40 00 40 06 99 fc c0 a8 01 dc c0 a8

0020 01
33 0a c5 00 50 07 2d af f0 00 00 00 00 a0 02

0030 16
d0 37 13 00 00 02 04 05 b4 04 02 08 0a ff ff

0040 b3
90 00 00 00 00 01 03 03 01

帧头:

目标主机 Mac: 00
24 81 0d f3 30

源主机Mac: 4a
42 08 00 00 00

处理类型: IP协议(ETHERNET
V2)

IP包(20字节):

版本号 4 IPV为4

IP包头长度 5 IP包头为20字节

IP包总长 60 IP包(包头)+TCP包为60字节

标识符 0x1c60

标记 4000>>13

分段序号 4000&0x1fff

生存时间 0x40

协议 6 上层TCP

头部校验 0x99fc

源主机IP地址 c0
a8 01 dc - 192.168.1.220

目标IP地址 c0
a8 01 33 - 192.168.1.51

TCP包(24):

源主机端口号 0x0ac5

目标主机端口号 0x0050

序号 0x072daff0 发送的第一字节的序号

确认序号 0x00000000

数据偏移 0xa002>>12
= 0xa 数据区偏移40字节同时得到选项长度留 0xa002>>6&0x3f
= 0x0

URG/ACK/PSH/

RST/SYN/FIN 0xa002&0x3f
= 0x2

窗口 0x16d0

校验和 0x3713

紧急指针 0x0000

选项 可变长度 IP总长度-IP包头-20为当前选项和数据的长度

例二:访问192.168.1.51截获的一次HTTP请求包

0000 00
24 81 0d f3 30 4a 42 08 00 00 00 08 00 45 00

0010 01
1e 26 df 40 00 40 06 8e 9b c0 a8 01 dc c0 a8

0020 01
33 0a c7 00 50 06 54 95 42 2b 42 d2 b1 80 18

0030 0b
68 2b 5e 00 00 01 01 08 0a ff ff b3 9a 00 00

0040 00
00 47 45 54 20 2f 69 6e 64 65 78 2e 67 69 66

0050 20
48 54 54 50 2f 31 2e 31 0d 0a 48 6f 73 74 3a

0060 20
31 39 32 2e 31 36 38 2e 31 2e 35 31 0d 0a 41

0070 63
63 65 70 74 3a 20 2a 2f 2a 0d 0a 52 65 66 65

0080 72
65 72 3a 20 68 74 74 70 3a 2f 2f 31 39 32 2e

0090 31
36 38 2e 31 2e 35 31 0d 0a 55 73 65 72 2d 41

00a0 67
65 6e 74 3a 20 4d 6f 7a 69 6c 6c 61 2f 34 2e

00b0 30
20 28 63 6f 6d 70 61 74 69 62 6c 65 3b 20 4d

00c0 53
49 45 20 36 2e 30 3b 20 45 49 53 20 69 50 61

00d0 6e
65 6c 20 32 2e 30 20 3b 20 41 52 4d 39 32 36

00e0 29
0d 0a 41 63 63 65 70 74 2d 45 6e 63 6f 64 69

00f0 6e
67 3a 20 69 64 65 6e 74 69 74 79 0d 0a 43 6f

0100 6e
6e 65 63 74 69 6f 6e 3a 20 63 6c 6f 73 65 0d

0110 0a
50 72 6f 78 79 2d 43 6f 6e 6e 65 63 74 69 6f

0120 6e
3a 20 63 6c 6f 73 65 0d 0a 0d 0a

帧头:

目标主机 Mac: 00
24 81 0d f3 30

源主机Mac: 4a
42 08 00 00 00

处理类型: IP协议(ETHERNET
V2)

IP包(20字节):

版本号 0x45>>4

IP包头长度 0x45&0xf 5*4=20字节

服务类型 0x00

IP包总长 0x011e (IP头+数据)

标识符 0x26df

标记 4000>>13

分段序号 4000&0x1fff

生存时间 0x40

协议 6 上层TCP

头部校验 0x8e9b

源主机IP地址 c0
a8 01 dc - 192.168.1.220

目标IP地址 c0
a8 01 33 - 192.168.1.51

TCP包(24):

源主机端口号 0x0ac7

目标主机端口号 0x0050

序号 0x06549542

确认序号 0x95422b42

数据偏移 0x8018>>12
= 0x8(数据区偏移为32字节)

保留 0x8018>>6&0x3f
= 0x0

URG/ACK/PSH/

RST/SYN/FIN 0x8018&0x3f
= 0x18

窗口 0x0b68

校验和 0x2b5e

紧急指针 0x0000

选向 01
01 08 0a ff ff b3 9a 00 00 00 00(32-20)字节

数据区

47 45 54 20 2f 69 6e 64 65 78 2e 67 69 66

0050 20
48 54 54 50 2f 31 2e 31 0d 0a 48 6f 73 74 3a

0060 20
31 39 32 2e 31 36 38 2e 31 2e 35 31 0d 0a 41

0070 63
63 65 70 74 3a 20 2a 2f 2a 0d 0a 52 65 66 65

0080 72
65 72 3a 20 68 74 74 70 3a 2f 2f 31 39 32 2e

0090 31
36 38 2e 31 2e 35 31 0d 0a 55 73 65 72 2d 41

00a0 67
65 6e 74 3a 20 4d 6f 7a 69 6c 6c 61 2f 34 2e

00b0 30
20 28 63 6f 6d 70 61 74 69 62 6c 65 3b 20 4d

00c0 53
49 45 20 36 2e 30 3b 20 45 49 53 20 69 50 61

00d0 6e
65 6c 20 32 2e 30 20 3b 20 41 52 4d 39 32 36

00e0 29
0d 0a 41 63 63 65 70 74 2d 45 6e 63 6f 64 69

00f0 6e
67 3a 20 69 64 65 6e 74 69 74 79 0d 0a 43 6f

0100 6e
6e 65 63 74 69 6f 6e 3a 20 63 6c 6f 73 65 0d

0110 0a
50 72 6f 78 79 2d 43 6f 6e 6e 65 63 74 69 6f

0120 6e
3a 20 63 6c 6f 73 65 0d 0a 0d 0a

原出处:http://blog.sina.com.cn/ybstudio
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: