WinPcap是一款专业的网络封包抓取工具。网络封包抓取软件中的佼佼者WinPcap。普通的联网应用程序仅需要基本的操作系统元素(例如套接字)来访问网络上的数据。在这种情况下,低级详细信息(例如数据包重组和协议处理)由OS管理,这使应用程序可以轻松读取正在进行的流量。 WinPcap为软件(例如网络和协议分析仪,网络监视器/扫描仪,流量记录器/生成器,用户级网桥和路由器,网络入侵检测系统或其他软件)设置了直接数据包访问的Windows标准。原始网络数据。
安装方式:
1.双击WinPcap安装程序以进入以下向导界面,然后单击[下一步]。
2.阅读许可协议,单击[我同意]按钮同意并输入下一个安装。
3.准备安装,单击[安装]按钮开始安装。
4.弹出成功安装WinPcap的提示,单击[安装]。
常见问题:
问1:如何检查我的系统上是否安装了WinPcap?如何删除?
答:WinPcap 2.1或更高版本:转到控制面板,然后打开“添加或删除程序”小程序。如果您的系统中存在WinPcap,将显示一个名为“ WinPcap”的条目。双击以卸载WinPcap。
WinPcap 2.02或更早版本:转到控制面板,然后打开“网络”小程序。如果您的系统中存在WinPcap,将列出一个名为“ Packet Capture Driver”的条目(在Windows NT中,您必须选择“服务”选项卡)。选择它,然后按“删除”以卸载WinPcap。
要绝对确定已安装WinPcap,请检查系统文件夹:您应该找到名为packet的软件包。 *和wpcap.dll文件。请检查文件日期:这些日期应与WinPcap发行日期兼容。我们已经收到有关特洛伊木马或其他恶意软件的报告,它们会静默安装WinPcap驱动程序NPF.sys。如果被它们感染,则可能会在Windows \ System32 \ Drivers中看到驱动程序文件,但“添加或删除程序”小程序中没有条目,也没有dll。
重要说明:有时,当从Windows 9x中控制面板的网络小程序中卸载WinPcap 2.02或更早版本时,将不会删除Windows \ Packet.dll文件。您必须手动删除此文件,否则2.1版本将无法正常工作,并可能导致系统崩溃。
问题2:安装后,无法在控制面板的网络适配器属性下看到WinPcap。有问题吗
答:否,如果您使用的是最新版本的WinPcap。正如Q-1所说,最新版本显示在“添加/删除程序”下,而不是在网络属性下。
问题3:如何检查WinPcap当前是否在Win2K / XP / 2k3计算机上运行?
答:单击开始按钮,然后运行。输入msinfo32。将显示“系统信息”面板。选择软件环境,然后选择系统驱动程序。条目NPF应该出现在这里。如果您之前启动过WinPcap应用程序,则该状态应处于运行状态。请记住,WinPcap应该已经运行了至少一次才能出现在此列表中。
问题4:基于XXX WinPcap的应用程序无法在我的系统上正常运行。是WinPcap问题吗?
答尝试使用Windump。特别是,“ windump -D”报告有效适配器的列表,并显示WinPcap是否可以正确检测到您的硬件。如果WinDump可以工作,则问题出在XXX程序中,而不是WinPcap,因此请与XXX的作者联系以寻求帮助。
问题5:我可以在PPP连接上使用WinPcap吗?
答:Windows NT4。是否可以在此操作系统上捕获PPP / VPN连接。
Windows 2000 / XP(x86)/ 2003(x86)。这些系统在NDIS绑定过程中有局限性,导致协议驱动程序无法在WAN适配器上正常工作。 WinPcap 3.1和更高版本提供了有限的支持,以使用Microsoft NetMon驱动程序上的包装在拨号适配器上进行捕获。
笔记:
您可以使用“通用拨号”或“通用NdisWan”适配器(即使没有可用的拨号连接也总是列出)来捕获控制数据包(LCP和NCP)。控制帧被捕获为由以太网封装的PPP帧。
操作系统将PPP协议转换为伪以太网。您将看到以太网帧而不是PPP帧。
不支持传输。
过滤和统计信息收集是在用户级别进行的。
Windows XP(x64)/ 2003(x64)。是否可以在这些操作系统上捕获PPP / VPN连接。
Windows Vista和更高版本。是否可以在这些操作系统上捕获PPP / VPN连接。
问题6:我可以在VPN连接上使用WinPcap吗?
答案:如果是
如果您使用标准的Windows VPN,则可以使用Q5中所述的限制。操作系统将Windows VPN视为拨号连接,因此第5季度中描述的所有内容均适用于此。第三方VPN实施:由于NDIS中间驱动程序的结构不整洁,因此未检测到其中的一些。
问题7:在Windows NT / 2000 / XP上运行基于WinPcap的程序时,我需要成为管理员吗?
答:是/否。 WinPcap的安全模型非常差,我们计划在将来进行开发。当前,如果自上次重启以来首次执行基于WinPcap的应用程序,则您必须是管理员。首次执行时,驱动程序将动态安装在系统中,从那时起,每个用户都可以使用WinPcap嗅探数据包。
问题8:我可以将WinPcap与Borland开发工具一起使用吗?
答:首先,请注意,我们仅支持Microsoft Visual C ++,因此我们无法为其他编译器提供帮助。
如果要在C ++ Builder(版本5.0)下使用“使用WinPcap”,则必须使用COFF2OMF.EXE程序,该程序可在BORLAND目录中找到。该程序可以将Packet.lib和wpcap.lib(在Visual C ++标准中为COFF)转换为OMF标准,它是C ++ Builder之一。有关更多信息,请在C ++ Builder的帮助下键入COFF2OMF。
语法(在DOS控制台中):
COFF2OMF input.lib output.lib
在这种情况下,Input.lib = wpcap.lib或packet.lib
问题9:我可以在Visual Basic中使用WinPcap吗?
答:我们不支持Visual Basic,并且由于对此内容的了解不足,因此无法提供有关此主题的帮助。 BeeSync开发了一个ActiveX控件,该控件将WinPcap数据包捕获功能与Visual Basic或任何其他支持Microsoft ActiveX技术的编程环境集成在一起。您可以在http://www.beesync.com/products.html上找到它。
问题10:WinPcap可以与个人防火墙一起使用吗?
答:我们有几份报告指出,如果个人防火墙和WinPcap安装在同一台计算机上,则WinPcap将无法正常工作。典型的问题是无法从适配器捕获全部或部分流量,但是某些用户还报告了发送端的异常行为(例如,某些数据包消失了)。
在大多数情况下,问题是由防火墙和操作系统的网络堆栈之间的非标准交互作用引起的,因此,在我们这方面没有太多要做。推荐的解决方案是卸载防火墙。
注意:卸载而不是禁用,因为即使禁用了某些防火墙(例如ZoneAlarm),它们仍然具有奇怪的行为。
问题11:在Windows上以混杂模式捕获时,我可以看到除发送到本机或从本机发送的数据包以外的其他数据包。但是,它不同于发送到本机或从本机发送的数据包。这些数据包带有“短帧”指示。我应该怎么做才能使我看到这些数据包的全部内容?
答:至少在某些情况下,这似乎是由于要捕获的网络接口上运行的PGPnet导致的。在此界面上将其关闭。
问题12:WinPcap可以与Java一起使用吗?
答:我们不直接支持Java。但是,您可以在http://netresearch.ics.uci.edu/kfujii/jpcap/doc/index.html和http://jnetpcap.com/上找到Java包装器。
问题13:WinPcap是否支持回送设备?
答:否。仅支持物理接口。这是Windows的限制,而不是WinPcap的限制。
问题14:我可以在哪个操作系统上运行WinPcap?
答:WinPcap可以在所有主要的Win32操作系统上运行:Windows 95、98,ME,NT4、2000,XP,2003,Vista,2008,Windows 7、2008R2
总体情况如下:
Windows 95、98,ME:从WinPcap 4.0 beta3开始,不再支持Windows 95/98 / ME。源代码包仍然包括这些操作系统的代码库,但是安装可执行文件将拒绝安装。支持此类操作系统的最新版本是WinPcap 3.1(稳定版)和WinPcap 4.0 beta2(不稳定版),但是WinPcap团队不再支持它们,因此,如果遇到任何问题,可以自己解决。
Windows XP / 2003:需要WinPcap 2.3或更高版本。
Windows XP / 2003(x64):需要WinPcap 3.2 alpha1或更高版本。在64位平台上不支持从拨号/ VPN适配器捕获。
Vista / 2008(x86):WinPcap 3.1应该可以运行,但是功能受到限制。不支持PPP,并且未列出IPv6地址。强烈建议升级到WinPcap 4.0或更高版本,以在Windows Vista上获得更好的支持。有关Vista支持的更多详细信息,请参阅常见问题Q-28。
Vista / 2008(x64):需要WinPcap 4.0或更高版本。
Windows 7 / 2008R2:需要WinPcap 4.1或更高版本。
问题15:为什么WinPcap无法在我的多处理器(SMP)计算机上运行?
答:从3.0版开始,已包括对SMP计算机的支持。请更新您的WinPcap安装。
问题16:WinPcap支持哪些网络适配器?
答:WinPcap设备驱动程序主要是为以太网(10/100/1000)适配器开发的。在开发过程中,添加了对其他MAC的支持,但是以太网仍然是测试最多的一种。总体情况是:
Windows 95/98 / ME:数据包驱动程序可以在以太网上正常工作。它也可以在PPP WAN链路上工作,但是有一些限制(例如,它不能捕获LCP和NCP数据包)。它应该支持FDDI,ARCNET,ATM和令牌环,但是由于我们没有硬件,因此没有对其进行测试。
Windows NT4 / 2000 / XP / 2003 / Vista / 2008 / Win7 / 2008R2:数据包驱动程序可以在以太网上正常工作。至于拨号适配器和VPN连接,请阅读Q5和Q6。与Win9x一样,它支持FDDI,ARCNET,ATM和令牌环,但尚未经过我们的测试。
无线适配器:这些适配器可能有问题,因为Windows内核不正确地支持它们。其中一些未检测到,而某些不支持混杂模式。在最佳情况下,WinPcap可以看到以太网仿真,而不是实际的传输数据包:这意味着在捕获之前,802.11帧已转换为伪以太网帧,并且未收到任何控制帧。为了实现真正的无线捕获,CACE Technologies提供了AirPcap适配器
专门用于嗅探802.11流量,包括控制帧,管理帧和电源信息。当前,AirPcap是使用WinPcap捕获原始802.11流量的唯一解决方案。可以在AirPcap产品页面上找到更多详细信息。
问题17:我可以使用WinPcap丢弃传入的数据包吗? WinPcap可以用来建立防火墙吗?
答:不能。WinPcap是作为协议实现的,因此它可以捕获数据包,但不能在数据包到达应用程序之前将其丢弃。 WinPcap的过滤功能仅适用于嗅探到的数据包。为了在TCP / IP堆栈之前拦截数据包,必须创建一个中间驱动程序。
问题18:WinPcap可以在系统启动时自动启动吗?
答:您可以将NPF服务的启动设置更改为“自动”或“系统”。一种方法是将注册表项HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ NPF \从0x3(SERVICE_DEMAND_START)开始更改为0x2(SERVICE_AUTO_START)或0x1(SERVICE_SYSTEM_START)。仅在Windows NT中有效
软件功能:
WinPcap被公认为Windows环境中用于链接层网络访问的行业标准工具。它允许应用程序绕过协议栈来捕获和传输网络数据包,包括内核级数据包过滤,网络统计引擎以及对远程数据数据包捕获的支持。
WinPcap包括用于扩展操作系统以提供低级网络访问的驱动程序,以及用于轻松访问低级网络层的库。该库还包含Windows的著名libpcap Unix API。
凭借其一系列功能,WinPcap已成为许多开源和商业网络工具的数据包捕获和过滤引擎,包括协议分析器,网络监视器,网络入侵检测系统,嗅探器,流量生成器和网络测试器。其中一些网络工具(例如Wireshark,Nmap,Snort和ntop)在网络社区中广为人知并使用。
数据包捕获和网络分析软件与一组DLL一起作为Windows内核网络组件中的设备驱动程序部署在系统上。这些DLL为上述类型的应用程序汇集了易于使用的编程接口。
提供的动态库生成了一组与系统无关的函数。这些功能用于获取可用网络适配器的列表,检索有关特定适配器的详细信息,通过NIC(网络接口卡)嗅探正在进行的数据包,以及发送并保存数据包。它还可以为一组特定的获取数据包创建数据包过滤器。
通过使用WinPcap,诸如Wireshark,Nmap,Snort,nTop或Free HTTP Sniffer之类的程序可以正常工作。这类软件具有捕获可用网络适配器和共享媒体上其他计算机交换的原始数据包的功能。他们还可以应用用户定义的规则来过滤数据包,将原始数据包分发到网络或收集有关现有流量的统计信息。
与流量整形器,QoS(服务质量)调度程序或个人防火墙不同,WinPcap的主要目标是简单地嗅探通过网络线路的数据包。因此,它无法阻止或管理同一系统上其他应用程序生成的流量。
作为基于数据包嗅探的高级网络监视和分析工具的一项重要要求,WinPcap对于花费大量时间使用此软件类别的用户是必不可少的。
软件特色:
高性能:
WinPcap实现了数据包捕获文献中描述的所有经典优化(例如,内核级过滤和缓冲,上下文切换缓解,部分数据包复制),以及一些原始优化,例如JIT过滤器编译和内核级统计处理。由于这些原因,WinPcap优于其他类似方法。
人气:
WinPcap被许多工具(包括协议分析器,网络监视器,网络入侵检测系统,嗅探器,流量生成器,网络测试仪等)用作网络接口,供免费和商业使用,其中包括Ethereal,Nmap,Snort, WinDump,ntop在在线社区中众所周知。 WinPcap每天被下载数千次。
经测试可靠:
多年来,许多用户为在各种平台上测试WinPcap并发现最小的错误做出了贡献。 WinPcap开发人员是经验丰富的Windows驱动程序编写者,他们的软件开发方法强调坚如磐石的稳定性。切记:越野车司机意味着蓝屏。
易于最终用户使用:
WinPcap作为单个小的可执行文件分发,可以在每个受支持的操作系统上运行。启动可执行文件,然后Windows便可以捕获并发送原始网络流量。再简单不过了。
程序员易于使用。每个版本的WinPcap都带有一个开发人员软件包,其中包括文档,库以及包括从您自己的新应用程序立即启动所需的文件。开发人员软件包包含一组示例程序,可以立即使用Visual Studio和Cygnus对其进行编译,并且可以作为一个很好的起点。
多平台:
WinPcap可以主动维护
n Windows NT,Windows 2000,Windows XP和Windows Server2003。WinPcap也可以在Windows 95,Windows 98和Windows ME上运行,但是不再维护这些操作系统。 Windows Vista具有初步支持,但是某些功能已被禁用。
便携式:
WinPcap与libpcap完全兼容。这意味着您可以使用它将现有的Unix或Linux工具移植到Windows。这也意味着您的Windows应用程序将轻松移植到Unix。
有据可查:
WinPcap手册以易于遵循的超链接记录API和内部文档。本文档包括一个教程,以指导您逐步了解WinPcap的所有功能