一、网络地址规划表
主机IP |
子网掩码 |
默认网关 |
MAC地址 |
192.168.199.42 |
255.255.255.0 |
192.168.199.1 |
D4-6A-6A-C7-02-4B |
二、连通性测试
三、应用层
分析
1.客户端请求(红色部分)
请求方法:GET
协议及版本:HTTP/1.1
客户机支持数据类型:Mozilla/5.0、AppleWebKit/537.36、Chrome/70.0.3538.102、 Safari/537.36、Edge/18.18362
支持压缩格式:gzip, deflate
通过服务器访问的主机名:www.bilibili.com
请求后状态:Keep-Alive
Cookie:相关Cookie信息
2.服务器响应(蓝色部分)
状态行:HTTP/1.1 301 Moved Permanently即版本号为1.1,响应状态码为301,结果为: 所请求的页面已经转移至新的url
消息报头:反映了响应日期、服务器类型、连接类型、报文长度、连接后状态相关信息
四、传输层
1.TCP连接三次握手
第一个包
① 源端口:64668
② 目的端口:80
③ 序列号(相对序号):0
④ 首部长度:32 bytes
⑤ 标志位 0x002
⑥ ACK:0
⑦ SYN:1
⑧ 接收窗口:65535
⑨ 检验和:0x8954
第二个包
① 源端口:80
② 目的端口:64668
③ 序列号(相对序号):0
④ 首部长度:32 bytes
⑤ 标志位 0x012
⑥ ACK:1
⑦ SYN:1
⑧ 接收窗口:29200
⑨ 检验和:0xde89
第三个包
① 源端口:64668
② 目的端口:80
③ 序列号(相对序号):1
④ 首部长度:32 bytes
⑤ 标志位 0x010
⑥ ACK:1
⑦ SYN:0
⑧ 接收窗口:1024
⑨ 检验和:0x8d6e
过程分析
主机的TCP向服务器发出连接请求报文段,其首部的同步位SYN=1,并选择序列号seq=0,表明传数据时第一个数据字节的序号是0;
服务器的TCP收到连接请求报文段后,发回确认,ACK=1,同时服务器向主机发起连接请求,应使SYN=1;
主机收到此报文后向服务器给出确认,其ACK=1,主机的TCP通知上层应用进程,连接建立。
2.TCP释放四次握手
第一个包
① 源端口:80
② 目的端口:64668
③ 序列号(相对序号):474
④ 首部长度:20 bytes
⑤ 标志位 0x011
⑥ ACK:1
⑦ SYN:0
⑧ FIN:1
⑨ 接收窗口:62
⑩ 检验和:0x8afd
第二个包
① 源端口:64668
② 目的端口:80
③ 序列号(相对序号):1114
④ 首部长度:20 bytes
⑤ 标志位 0x010
⑥ ACK:1
⑦ SYN:0
⑧ FIN:0
⑨ 接收窗口:1022
⑩ 检验和:0x873d
第三个包
① 源端口:64668
② 目的端口:80
③ 序列号(相对序号):1114
④ 首部长度:20 bytes
⑤ 标志位 0x011
⑥ ACK:1
⑦ SYN:0
⑧ FIN:1
⑨ 接收窗口:1022
⑩ 检验和:0x873c
第四个包
① 源端口:80
② 目的端口:64668
③ 序列号(相对序号):475
④ 首部长度:20 bytes
⑤ 标志位 0x010
⑥ ACK:1
⑦ SYN:0
⑧ FIN:0
⑨ 接收窗口:62
⑩ 检验和:0x8afc
过程分析
服务器主动向其TCP发出连接释放报文段,并停止在发送数据,主动关闭TCP连接,服务器把令FIN=1,其seq=1114,等待主机确认;
主机发出确认,ACK=1,该报文段seq=474,服务器到主机的连接释放,若主机发送数据,服务器仍要接受;
应用进程通知TCP释放连接,FIN=1,seq=1114,ACK=1,服务器收到释放报文后,必须发出确认;
在确认报文中,ACK=1,seq=475。
3.UDP分析
UDP报文分UDP报头和UDP数据区两部分。报头由四个16位长(2字节)字段组成,分别说明该报文的源端口、目的端口、报文长度以及校验值。
16位源端口:4014
16位目的端口:8000
UDP长度:71
16位UDP校验和:0x3fb0
五、网路层
1.IP报文分析
IP报文:传输在网络层,它由IP报文头和IP报文用户数据组成,IP报文头的长度一般在20到60个字节之间,而一个IP分组的最大长度则不能超过65535个字节。
版本号字段:4
头部长度:20字节
总长度:40字节
16位标识字段:0x9a76
标志位:0x4000
生存时间:128
协议:TCP(6)
16位头部校验和:0x3199
源IP:192.168.199.42
目的IP:112.25.54.212
2.ARP分析:通过电脑ping同一wifi下的手机,得到如下数据
手机发数据给电脑。手机在局域网内广播ARP查询分组,其中包含电脑的IP地址(即Who has 192.168.42)。电脑接受ARP查询分组,IP地址匹配成功,向手机应答电脑的MAC地址(即192.168.199.42 is at d4:6a:6a:c7:02:4b)。此后手机在其ARP表中缓存电脑的IP-MAC地址对,直至请求超时。综上ARP是“即插即用”协议
3.ICMP分析:通过电脑ping同一wifi下的手机,得到如下数据
Type:占一字节,标识ICMP报文的类型,目前已定义了14种,从类型值来看ICMP报文可以分为两大类。第一类是取值为1~127的差错报文,第2类是取值128以上的信息报文。
Code:0;占一字节,标识对应ICMP报文的代码。它与类型字段一起共同标识了ICMP报文的详细类型。
Checksum:是对包括ICMP报文数据部分在内的整个ICMP数据报的校验和,以检验报文在传输过程中是否出现了差错。其计算方法与在我们介绍IP报头中的校验和计算方法是一样的。
Identifier:两字节,用于标识本ICMP进程,但仅适用于回显请求和应答ICMP报文,对于目标不可达ICMP报文和超时ICMP报文等,该字段的值为0。
Sequence number:序列号。
这是ICMP协议的请求,ICMP请求报文分析如下
类型:ping请求
代码:0
校验和:0x431d
序列号:BE: 1;LE:15882
响应帧:10
这是ICMP协议的响应,ICMP响应报文分析如下
类型:ping响应
代码:0
校验和:0x4b1d
序列号:BE:2622;LE:15882
请求帧:9
六、数据链路层
MAC帧格式
目的MAC地址:d4-ee-07-0c-af-7e
源MAC地址:d4-6a-6a-c7-02-4b
类型:0x0800,即IPv4
MAC地址分析
目的MAC地址:d4-ee-07-0c-af-7e
前6位:d4-ee-07代表网络硬件制造商编号,由IEEE分配;
后6位:0c-af-7e代表该制造商所制造的某个网络产品的系列号
源MAC地址:d4-6a-6a-c7-02-4b
前6位:d4-6a-6a代表网络硬件制造商编号,由IEEE分配;
后6位:c7-02-4b代表该制造商所制造的某个网络产品的系列号