C# 乱嗅

C# 乱嗅,c#,network-programming,windows-7-x64,promiscuous-mode,C#,Network Programming,Windows 7 X64,Promiscuous Mode,因此,我想编写这个小型C#应用程序,它能够使用混杂模式嗅探数据包(特别是DNS数据包)。另外,我希望避免使用WinPcap,因为我不想强迫用户安装任何附加软件 问题是,我完全不知道如何使用代码将NIC切换到混杂模式,或者如何在windows中测试NIC是否实际打开 此外,我还尝试使用Wireshark嗅探数据包,但即使选中了“混杂模式”复选框,我仍然看不到我的手机(使用Windows phone 7.8)发送/接收的数据包,这些数据包必须是我连接到同一网络的(是的,我首先关闭了移动互联网,以确定

因此,我想编写这个小型C#应用程序,它能够使用混杂模式嗅探数据包(特别是DNS数据包)。另外,我希望避免使用WinPcap,因为我不想强迫用户安装任何附加软件

问题是,我完全不知道如何使用代码将NIC切换到混杂模式,或者如何在windows中测试NIC是否实际打开

此外,我还尝试使用Wireshark嗅探数据包,但即使选中了“混杂模式”复选框,我仍然看不到我的手机(使用Windows phone 7.8)发送/接收的数据包,这些数据包必须是我连接到同一网络的(是的,我首先关闭了移动互联网,以确定它使用的是我的WiFi)


那么,如何打开混杂模式,以及如何在系统中检查它是否实际打开?

如果您的嗅探器位于同一无线网络上,这可能会起作用,但我认为只有在您的无线适配器支持“监视”模式的情况下才能起作用。否则,如果您的嗅探器机器通过以太网连接到同一网络,我认为您不一定会看到来自windows phone的数据包,除非它们是广播/多播数据包(不由路由器处理,即DHCP,而不是广播到网络中的其他节点,即您的嗅探器机器)