wireshark学习记录2
Posted 玛卡巴卡巴巴亚卡
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了wireshark学习记录2相关的知识,希望对你有一定的参考价值。
一、ARP协议
把IP地址解析成MAC地址,运行在数据链路层。
1、ARP请求与响应过程
(1)A查找本地ARP缓存表是否有B的MAC地址
(2)如A本地ARP缓存表没有找到,则把请求帧(A的IP,MAC地址,B的IP地址)广播到本地网络所有主机,所有主机匹配自己的IP地址是否与请求帧的B主机的IP地址相同。不匹配则丢弃。
(3)如匹配,把主机A的IP,MAC地址添加到自己的ARP缓存表中,并回复ARP响应给主机A。
(4)A把主机B的IP,MAC地址保存到ARP缓存表中。
2、本地打开arp缓存表
cmd输入arp -a
二、ARP数据包分析
arp请求数据包的opcode是request,响应数据包的opcode是reply
一般IP地址可以改变,但MAC地址一定不会改变,当IP地址改变时,原有ARP缓存表的数据就不再有效。此时主机会发送广播,强制受到请求的主机更新包含新的IP和MAC地址映射的ARP缓存表。
请求地址和目标地址一致,免费ARP
三、IP协议
1、TTL
2、IP分片
把一个数据流分为更小的片段,是IP在跨越不同类型的网络时,用于可靠传输的一种措施。基于数据链路层的最大传输单元(MTU 默认1500),如果数据包大小大于MTU,则会被分片。
(1)把数据包分成若干个可以用于传输的片段
(2)每个IP头的总长度会被设为片段长度
(3)分片标志在所有数据包中设置成1,最后一个片段设置成0
第一个:
最后一个:
(4)设置分片偏移
分片偏移为0,说明这是数据包的第一个
因为一个片段长度是1500字节,其中有20字节的ip头
(5)发送
四、TCP/UDP协议
1、TCP
TCP是面向连接的,提供面向数据的可靠端到端传输。
1-1023 特定服务 1024-65535临时端口
在视图——name resolution 可以设置解析端口
(1)三次握手
一般wireshark中显示的tcp中的三次握手的seq都是相对值,我们在编辑——首选项——protocol——tcp中把analyze tcp sequence number勾选取消,就可以显示seq的真实值
第二个的确认好比上一个确认号大1
(4)TCP四次握手
(3)TCP重置
当网络受到攻击或者断开时,需要设置RST的TCP数据包,表示连接出现终止
(4)TCP可靠传输
3号数据包是2号数据包的成功确认,也确认了1号数据包中的数据(tcp确认可以累加)
ps:如果数据包出现乱序,接收方可以根据seq,从小到大排序。
如果出现丢包现象,接收方可以通过 前一个seq+len-下一个seq 可以知道丢了哪些包
(5)TCP滑动窗口机制
检测什么时候出现丢包,调整数据传输速率,避免丢包加剧。
发送方只可一次发送指定的数据量,服务器可以通过控制滑动窗口来让客户端减小发送数据包的量。滑动窗口可以设置成0(不再接收数据),当服务器缓冲端数据处理完成,再调整滑动窗口,让客户端恢复发送数据包。
通过偏好设置标记出来的保活数据包,勾选analyze tcp sequence number
(6)TCP重传技术
当发送方发送数据包,接收方没有发送ACK,发送方假设数据包丢失,并在RTO到达最大值之前进行重传。重传一次RTO会翻倍,直至收到数据包或者达到RTO的最大值为止。一般Windows重传5次,Linux重传15次。
2、UDP
UDP无连接,提供面向事物的简单的不可靠传输。提供高速服务。
应用层协议DNS和DHCP需要高度依赖数据包在网络上的传输速度,所以需要依赖UDP。利用自己的错误检查和重传计时来保证数据的正确传输。
通过字符串查找ichunqiu相关字符串,找到对应IP地址,查找ip地址对应的数据包,然后筛选我们想要的数据包信息用来分析
也可以选择对话着色,把我们想要的数据包的相关数据包都用一种颜色标注
然后选择相应编号,导出成新的文件,就可以针对性分析了。
以上是关于wireshark学习记录2的主要内容,如果未能解决你的问题,请参考以下文章