网络抓包技术备忘 – Wireshark/Fiddler/Libpcap/Npcap/WinPcap/SharpPcap

  • Post author:
  • Post category:其他


本文链接:

网络抓包技术备忘-俊哥V-CSDN博客



1.常用工具


浏览器自带

,如谷歌浏览器的开发人员工具。


Fiddler

:主要是捕获HTTP、HTTPS数据包。


Wireshark

:网络协议分析工具,内置支持数百种协议。安全考虑,只能查看数据包,而不能修改包的内容或发送数据包。(开源 C)



2.原理



Fiddler:

做为代理,让所有http/https的请求和响应都流经Fiddler。是要预先配置的。




备注:

Fiddler启动时,会自动设置浏览器的代理为127.0.0.1:8888,在关闭时取消设置。


也支持反向代理的运用模式,参考:


Use Fiddler as a Reverse Proxy | Fiddler Classic (telerik.com)




Wireshark:

捕获机器上某一块网卡的网络包。使用WinPcap/npcap作为接口,获取网卡数据包。


所以,Wireshark主要是实现的各种应用层协议的解析,以及其提供的丰富界面功能。


3.基础库


Windows平台

WinPcap(于2013年停更)

Npcap:是对 WinPcap 的改进,有更好的抓包性能、稳定性更好。

参考:npcap vs. winpcap


Unix/Linux平台

Libpcap

是一组函数库,为应用程序提供访问网络底层的能力。支持:

数据包捕获:捕获流经网卡的原始数据包

数据包发送:将原始数据包发送到网络

规则过滤:提供规则过滤功能,能根据用户指定的规则筛选数据包

流量采集与统计


.net


core



开源项目



(



C#)






SharpPcap



:网络数据包捕获类库





跨平台



Packet.Net



:解析


/


构造网络数据包的类库,


协议


支持:


ethernet, ipv4/ipv6,


tcp


,


udp




4.知识 – OSI七层模型


Open System Interconnect Reference Model, 开放式系统互联通信参考模型

  • 概念模型,由国际标准化组织于20世纪80年代初提出

  • 不同厂家的网络产品,遵循OSI标准,只要物理上连接起来,它们之间都可以互相通信





(上图左侧是借图,出处找不到了 – -;)

简单理解就是:

备注:

1、关于几个层的简要理解

物理层 – 将数据最终编码为用0、1标识的比特流,然后传输(通过光纤、铜缆等)

局域网 – 用网卡MAC地址标识接入的设备,依靠广播方式寻址。混杂模式

跨网络 – IP寻址,路由器 – 根据IP地址转发数据包,从一个网络转发到另一个网络。

传输层 – 定义传输数据的协议端口号,以及流控和差错校验。分段:按照网络能处理的最大尺寸将数据强制分割。

2、传输层协议(如:tcp)职责是传输数据 ;而应用层协议(如:http,tns)是根据应用程序的需要定制的格式,以满足逻辑处理和数据处理的需要。

本文链接:

网络抓包技术备忘-俊哥V-CSDN博客



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