pcap和tcp/ip协议

  • Post author:
  • Post category:其他






抓包工具有wireshark,tcpdump等,原理是在链路层,也就是经过驱动处理得到二进制数据后,旁路通信通道,进行监测,都是基于pcap工具包,pcap工具其实也是一种socket程序,具体过程:





找网络设备





建立接口连接





获取数据并存储





获得的数据是要根据网络协议具体分析的,网络协议是一种通信规则,游戏有了规则,大家才能一起玩,不然只能各玩各的





首先是数据的格式:



写信需要信封,邮票,邮局,一套系统才能完成通信,网络数据通信需要什么呢,网络类型,MAC地址,IP地址,端口号等,当然这只是基础,还有协议类型需要的各个定义好的值,例如ip版本,存货时间,服务类型,传输层需要的窗口大小,端口号等等。



数据虽然也有分层的烙印,但仅是数据构成形式,没有涉及到路由等真正的网络通信。

分层:

链路层data link layer


可以说是数据连接层,数据成帧,检测错误(与tcp不同,在第2层,靠外,只好检测丢弃),加物理地址

网络层network layer


路由寻址,路由经过最大个数,

传输层transport layer


对数据可靠不可靠的控制,对数据传输过程中两边实力的沟通




通信就像是做买卖,买卖有大小,数据传输要有大小吧,那么01信号到高低电平,有没什么限制?

最小数据限制:

最早网络,单路线,A和B通信,A的数据发出去未到B,B也要发,但是未检测到线路上已经有数据,就会冲突,

那么A在发完数据前要能接收到冲突信号,限制了A发送数据的时间有个最小值,数据就有个最短值,46+18=64

18是帧14长度加4校验

最大数据限制,长时间一个应用占据着网络其他应用的响应不能玩,容易出错,重发麻烦



数据分析

各种头的内容中有很多表示大小,类型的字段,逐个进行拆解分析

定义结构体,挨个赋值即可,帧头一般是14+4,arp内容一般是28需要+18空,ip一般是20,tcp一般是20字节



版权声明:本文为ctylihuai原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。