有没有可行的替代Winsock for C++的方法?我需要的原因是因为Winsock的原始套接字运行不正常(不,这是不可修复的,不要浪费你的时间询问),WinPCAP只能监控网络流量,而不是实际接收数据包。我需要一些东西,可以接收包括任何IP,UDP,TCP报头等完整的数据包。这样的东西存在吗,如果不存在,为什么不存在?
发布于 2010-08-16 10:30:28
WinPCAP只能监视网络流量,而不能实际接收数据包
监控网络流量相当于接收数据包。这正是Wireshark之类的工具所做的:读取您的网卡并重建数据包边界。
我需要一些东西,可以接收完整的数据包,包括任何IP,UDP,
报头等。
使用Winsock API很有可能做到这一点。看看WSAIoctl函数,特别是SIO_RCVALL选项-启用此选项将把接口上收到的所有数据包发送到您的套接字。并且这些是以IP报头开始的原始IP分组。
发布于 2010-08-16 10:15:50
你可以看看Boost.Asio。C++跨平台IO库。支持UDP、TCP和ICMP。
https://stackoverflow.com/questions/3490155
复制相似问题