加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

windows – 使用Winsock的原始以太网帧

发布时间:2021-01-11 17:06:31 所属栏目:Linux 来源:网络整理
导读:我正在将一个通信库从Linux移植到Windows.我知道我的方法在很大程度上是什么.该库使用所有原始以太网级别帧进行所有通信. 我移植的库使用PF_PACKET族和struct sockaddr_ll.浏览MSDN winsock站点后,我还没有找到一个等效的系列/结构.我的方法应该在这里?

我正在将一个通信库从Linux移植到Windows.我知道我的方法在很大程度上是什么.该库使用所有原始以太网级别帧进行所有通信.

我移植的库使用PF_PACKET族和struct sockaddr_ll.浏览MSDN winsock站点后,我还没有找到一个等效的系列/结构.我的方法应该在这里?

我有一些想法,但我不确定它们是不是好主意
我可以使用PF_UNSPEC,未指定.
我可以传递PF_PACKET表示的数字(这是一个无符号的短)
我也可以在Windows中创建自己的sockadddr_ll结构.

这些想法对我来说都不好看,它们看起来就像是不太可能有效的黑客.

如果有人有任何建议,我将不胜感激.

最佳答案 我假设您指的是Raw Sockets(您必须编写网络层,传输层和应用程序层信息).新的Windows版本(XP SP2及更高版本)对具有许多限制的原始套接字的支持非常有限.

More info(向下滚动到“原始套接字限制”)

我相信,解决方案是使用WinPcap,它允许您在这些系统上使用send raw packets.

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读