Npcap:Nmap项目里一个为Windows而生的嗅探库 Npcap: Nmap Project's packet sniffing library for Windows

Introduction介绍

This Manual describes the programming interface and the source code of Npcap. It provides detailed descriptions of the functions and structures exported to programmers, along with complete documentation of the Npcap internals. Several tutorials and examples are provided as well. 本手册描述了Npcap的程序接口和源码。本手册详细说明了 “Npcap提供给程序员的功能和结构”,随着内部文档的完成,指导和例子也日渐完善。

What is Npcap? 了解Npcap

Npcap is an architecture for packet capture and network analysis for Windows operating systems, consisting of a software library and a network driver.

Npcap是一个包捕获(抓包)和网络分析的架构,由软件LIB库和网络驱动组成。

Most networking applications access the network through widely-used operating system primitives such as sockets. It is easy to access data on the network with this approach since the operating system copes with the low level details (protocol handling, packet reassembly, etc.) and provides a familiar interface that is similar to the one used to read and write files.

虽然很多网络应用程序可以通过广泛使用的API或操作系统原生接口如sockets 来完成网络通讯。让操作系统去处理低级协议(协议头、包重组 等等)并提供一个与读写文件相似的接口(译注 IO流封装),然后通过这种途径来获取网络数据,非常方便,

Sometimes, however, the “easy way” is not up to the task, since some applications require direct access to packets on the network. That is, they need access to the “raw” data on the network without the interposition of protocol processing by the operating system.

但有时候,这种方便却不能令人满意,例如你的程序要求直接操作网络包时,而操作系统提供的接口却不能满足需求。因此,我们需要一种方法,一种不经操作系统加入处理而直接获得“原始”网络数据的方法。

The purpose of Npcap is to give this kind of access to Windows applications. It provides facilities to:

在Windows平台上,Npcap提供了这些能力:

原文

  • capture raw packets, both the ones destined to the machine where it‘s running and the ones exchanged by other hosts (on shared media)
  • filter the packets according to user-specified rules before dispatching them to the application
  • transmit raw packets to the network
  • gather statistical information on the network traffic

译文

  • 捕获原始数据包,包括发往其运行的计算机的数据包和由其他主机交换的数据包(在共享媒体上)
  • 在将数据包分派给应用程序之前,根据用户指定的规则过滤数据包
  • 将原始数据包传输到网络
  • 收集有关网络流量的统计信息

This set of capabilities is obtained by means of a device driver, which is installed inside the networking portion of the Windows kernel, plus a couple of DLLs.

这组功能是通过设备驱动程序获得的,该驱动程序安装在Windows内核的网络部分内,并几个DLL。

All of these features are exported through a powerful programming interface, easily usable by applications. The main goal of this manual is to document this interface, with the help of several examples.

所有这些功能都通过功能强大的编程接口导出,可供应用程序轻松使用。本手册的主要目标是在几个示例的帮助下记录此界面。

Npcap:Nmap项目里一个为Windows而生的嗅探库 Npcap: Nmap Project's packet sniffing library for Windows

原文地址:https://www.cnblogs.com/yucloud/p/npcap_wiki_home.html

时间: 2024-10-08 21:57:48

Npcap:Nmap项目里一个为Windows而生的嗅探库 Npcap: Nmap Project's packet sniffing library for Windows的相关文章

cordova 打包的项目里加入微信支付功能编译问题。

最近在做公司项目,需要在cordova 打包的项目里加入微信支付功能.而不是使用通过新建single application的项目里开发. 使用从微信开放平台下载来的开发包,按照普通的新建single application项目的方式加了在targets下的Link binary with libraries 里加上libsqlite3.0.dylib, libz.dylib ,  SystemConfiguration.framework        CoreGraphics.framewo

ASP.NET MVC项目里创建一个aspx视图

先从控制器里添加视图 视图引擎选"ASPX(C#)",使用布局或模板页不要选. 在Views\EAV目录里,生成的aspx是个单独的页面,没有代码文件,所以代码也要写在这个文件里. @ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" @ Import Namespace="System" @ Import Namespace="

Django中一个项目里怎么使用两个数据库

在django项目中, 一个工程中存在多个APP应用很常见. 有时候希望不同的APP连接不同的数据库,这个时候需要建立多个数据库连接. 1. 修改项目的 settings 配置 在 settings.py 中配置需要连接的多个数据库连接串 2. 设置数据库的路由规则方法 在settings.py中配置DATABASE_ROUTERS 1DATABASE_ROUTERS = ['Prject.database_router.DatabaseAppsRouter'] Project: 建立的djan

替代WinPcap的新型Windows网络数据包截获软件——NPcap

NPcap是致力于采用Microsoft Light-Weight Filter (NDIS 6)技术对当前最流行的WinPcap工具包进行改进的一个项目.NPcap项目是最初2013年由Nmap网络扫描器项目(创始人Gordon Lyon)和北京大学罗杨博士发起,由Google公司赞助的一个开源项目,遵循MIT协议(与WinPcap一致).NPcap基于WinPcap 4.1.3源码基础上开发,支持32位和64位架构,在Windows Vista以上版本的系统中,采用NDIS 6技术的NPca

在项目里交叉使用Swift和OC

Swift and Objective-C in the Same Project 在项目里交叉使用Swift和OC Swift与OC的兼容性使得你可以在项目里使用Swift+OC的方式编写应用程序,称为混合+匹配(mix and match),用这种方式可以一边使用享受新语言的快速特性,一边无缝的接合你已有的OC代码(原文听起来好NB的样子,其实也就那么回事),不管项目最初是用OC编写的还是新建的Swift项目,都可以在这个项目里用OC和Swift混合继续开发 Importing Object

关于发布到tomcat的项目里的图片消失问题

我最近做项目出现了些问题,其中一个就是上传图片到服务器,成功显示出来了.但是到了后面过了段时间发现图片无法显示了,到tomcat的webapps目录里看看,项目前段时间上传的图片不见了.这是因为在此部署项目运行已经覆盖了之前的项目,所以图片不在了.注意,struts2上传文件到服务器是在tomcat里的项目里面的,不是在工作环境的哪个项目,每次把工作环境哪个项目部署到tomcat都会覆盖之前的项目. 我这里记录一下这个问题.

软件项目第一个Sprint评论

团队软件评论: 极速蜗牛:个人认为,内部测试版应该是实现内容而不是UI界面,难道要让那些懂电脑的人们都去玩用户界面吗?UI界面完全可以放到beta版再进行修改,美工.不过这界面做的确实还可以.运行此游戏时,感觉和当时用ppt讲解的时候差别有点大,演示的时候完全没看懂这游戏是怎么玩的,虽然有规则介绍,希望能够把游戏规则介绍得再通俗点. CS小分队:项目设计功能众多,会导致团队工作量大,全而不精.有些没必要的功能可以删去,节省时间和精力.UI界面还有待改进,音效不应该放歌曲(存在版权问题),而是放一

让AutoMapper在你的项目里飞一会儿(转)

出处:http://www.cnblogs.com/WeiGe/p/3835523.html 先说说DTO DTO是个什么东东? DTO(Data Transfer Object)就是数据传输对象,说白了就是一个对象,只不过里边全是数据而已. 为什么要用DTO? 1.DTO更注重数据,对领域对象进行合理封装,从而不会将领域对象的行为过分暴露给表现层 2.DTO是面向UI的需求而设计的,而领域模型是面向业务而设计的.因此DTO更适合于和表现层的交互,通过DTO我们实现了表现层与领域Model之间的

在项目里交叉使用Swift和OC【转】

Swift and Objective-C in the Same Project在项目里交叉使用Swift和OC Swift与OC的兼容性使得你可以在项目里使用Swift+OC的方式编写应用程序,称为混合+匹配(mix and match),用这种方式可以一边使用享受新语言的快速特性,一边无缝的接合你已有的OC代码(原文听起来好NB的样子,其实也就那么回事),不管项目最初是用OC编写的还是新建的Swift项目,都可以在这个项目里用OC和Swift混合继续开发 Importing Objecti