当前位置:  开发笔记 > 编程语言 > 正文

Winsock替代方案(不,不是WinPCAP)

如何解决《Winsock替代方案(不,不是WinPCAP)》经验,为你挑选了1个好方法。

有没有可行的替代Winsock for C++?我需要的原因是因为Winsock的原始套接字行为不正常(不,这是不可修复的,不要浪费你的时间)和WinPCAP只能监控网络流量,而不是实际接收数据包.我需要能够接收完整数据包的东西,包括任何IP,UDP,TCP标头等.这样的东西是否存在,如果没有,为什么不呢?



1> casablanca..:

WinPCAP只能监控网络流量,而不能实际接收数据包

监控网络流量相当于接收数据包.这正是Wireshark所做的工具:读取网卡并重建数据包边界.

我需要能够接收完整数据包的东西,包括任何IP,UDP,TCP标头等.

使用Winsock API非常有可能.看看该WSAIoctl功能,特别是SIO_RCVALL选项 - 启用此选项会将接口上收到的所有数据包传送到您的套接字.这些是从IP头开始的原始IP数据包.


@Chroma:原始数据包本身不对应任何应用程序.它是标题中的端口号,指向正确的程序.因此,您有两个选择:获取所有原始数据包并自行过滤,或让操作系统为您执行此操作并丢失标头.
推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有