我一直在使用winpcap通过有线连接发送原始数据包一段时间了。我正在构建自己的协议(没有什么特别的,只是得到它的挂起),但现在我想将它扩展到无线连接。 winpcap允许我通过无线适配器发送原始数据包吗?
我在Windows XP和Windows 7上使用VC ++。在我的Windows 7机器上它似乎工作,但在我的xp机器上,winpcap甚至无法打开我的适配器来发送/接收数据包。我试图在我的xp机器上启动wireshark,看看从我的其他机器发送的数据包是否到达,但是我仍然无法打开无线适配器。然后重新启动到ubuntu并再次尝试。这次wireshark工作了,但数据包没有出现。
关于winpcap在无线传输方面的局限性,我应该知道些什么吗?如果存在限制,是否可以让我通过无线网络在Windows上发送原始数据包?
答案 0 :(得分:1)
如果“raw”表示“原始802.11数据包”,那么 libpcap 可能允许它,但 WinPcap ,而不是那么多。见my answer to another question。如果您可以在Linux,* BSD或OS X上将适配器置于监控模式,则可能能够发送原始802.11数据包。然而,在Windows上,一旦你将它置于监控模式,它不仅将进入监控模式需要花费大量的工作(可能包括新的内核模式代码!)可能无法发送任何数据包。
如果“raw”只是意味着“原始IP数据包”,那么原始IP套接字应该可以正常工作 - 或者不能正常工作 - 就像以太网一样。