wireshark抓取本地回环数据包

wireshark抓取本地回环数据包

一 The NPF driver isn’t running

这个错误是因为没有开启NPF服务造成的。

NPF即网络数据包过滤器(Netgroup Packet Filter,NPF)是Winpcap的核心部分,它是Winpcap完成困难工作的组件。它处理网络上传输的数据包,并且对用户级提供可捕获(capture)、发送(injection)和分析性能(analysis capabilities)。

它不仅提供了基本的特性(例如抓包),还有更高级的特性(例如可编程的过滤器系统)。前者可以被用来约束一个抓包会话只针对网络通信中的一个子集,后者提供了一个强大而简单的统计网络通信量的机制。

解决办法如下:

(1)确保自己安装了WinPcap(这个在安装Wireshark时会提示你安装的)也可以从官网下载:地址:http://www.winpcap.org/

(2)在命令提示符下输入:net start npf 会提示打开驱动服务成功。如下图所示:

如果想关闭服务就输入:net stop npf 即可。

二 抓取本地回环数据

windows下,在命令行中输入以下语句:

代码如下:

route add 192.168.1.106 mask 255.255.255.255 192.168.1.1metric 1

其中,192.168.1.106是本机ip, 192.168.1.1是路由网关。其他都不变。

注意:建立连接时需要使用本机192.168.1.106的IP,不能使用127.0.0.1,如:

代码如下:

socket.Connect(“192.168.1.106”, 4530);

三 lookback capture support platforms

可查看 https://wiki.wireshark.org/CaptureSetup/Loopback Supported Platforms标题。

四 网络协议中环回接口

网络接口的命名

在linux下网络接口:
eth0: ethernet的简写,一般用于以太网接口
wifi0: wifi是无线局域网,因此wifi0一般只无线网络接口
ath0: Atheros的简写,一般指Atheros芯片所包含的无线网络接口
lo:local的简写,一般指本地环回接口。它是一个虚拟网络接口,虚拟网络接口并不真实地从外界接收和发送数据包,而是在系统内部接收和发送数据包,因此虚拟网络接口不需要驱动程序。

下面是环回接口处理IP数据报的简单过程:

图中需要指出的关键点是:

  1. 传给环回地址(127.0.0.1)的任何数据均作为IP输入.

  2. 传给广播地址或多播地址的数据报复制一份传给环回接口,然后送到以太网上.这是因为广播传送和多播传送的定义包含主机本身.

  3. 任何传给该主机IP地址的数据均送到环回接口.

你可能感兴趣的:(网络)