Scapy - 嗅探数据包的接口
Scapy - the interface of a sniffed packet
我在 Windows 7 和 Python 2.6 上用 scapy 2.2 嗅探。有没有办法识别嗅探数据包的接口?我考虑过使用mac地址来识别它,但是有没有办法用scapy来做呢?
像这样的东西(不起作用)-
packet = sniff(count=1, iface='eth0')[0]
print packet.iface # prints 'eth0'
接口名称 'ethX' 在 Linux 世界上使用,所以对于 Windows 我认为有不同的名称(我没有在 Windows 下测试 Scapy ),为此尝试执行:
>>> ifaces
This will show how Scapy has determined the usable network interfaces on your system (and will most likely not be correct in your case). It's the bases for the Windows-specific 'show_interfaces()' command.
有关嗅探的更多详细信息(Scapy Docs)
我对此毫不怀疑,主要是因为接口(在大多数情况下是 NIC - 除非您谈论的是 VM)不是数据包 属性。想一想:哪个协议使用接口? TCP? HTTP?以太网?
MAC 方法可行,您可以使用 IP 地址执行相同的操作(每个 NIC 可以有自己的 IP,想想具有多个端口的路由器)。
在 windows 机器上,您可以使用 ipconfig 查看您的接口(或 ipconfig /all 以获得更多信息,例如 MAC 地址)。看看这个 link:
http://www.maketecheasier.com/view-network-adapter-details-in-windows/
在scapy中,抓包的interface-name存储在属性sniffed_on中,例如:
packet.sniffed_on
我在 Windows 7 和 Python 2.6 上用 scapy 2.2 嗅探。有没有办法识别嗅探数据包的接口?我考虑过使用mac地址来识别它,但是有没有办法用scapy来做呢?
像这样的东西(不起作用)-
packet = sniff(count=1, iface='eth0')[0]
print packet.iface # prints 'eth0'
接口名称 'ethX' 在 Linux 世界上使用,所以对于 Windows 我认为有不同的名称(我没有在 Windows 下测试 Scapy ),为此尝试执行:
>>> ifaces
This will show how Scapy has determined the usable network interfaces on your system (and will most likely not be correct in your case). It's the bases for the Windows-specific 'show_interfaces()' command.
有关嗅探的更多详细信息(Scapy Docs)
我对此毫不怀疑,主要是因为接口(在大多数情况下是 NIC - 除非您谈论的是 VM)不是数据包 属性。想一想:哪个协议使用接口? TCP? HTTP?以太网?
MAC 方法可行,您可以使用 IP 地址执行相同的操作(每个 NIC 可以有自己的 IP,想想具有多个端口的路由器)。
在 windows 机器上,您可以使用 ipconfig 查看您的接口(或 ipconfig /all 以获得更多信息,例如 MAC 地址)。看看这个 link: http://www.maketecheasier.com/view-network-adapter-details-in-windows/
在scapy中,抓包的interface-name存储在属性sniffed_on中,例如:
packet.sniffed_on