PF_PACKET创建失败?难道内核不支持?

发布于 2022-10-15 05:17:24 字数 231 浏览 17 评论 0

sock = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_IP))

在2.6.18的虚拟机里跑没有问题   可以接收到很多的数据包

下载到arm板后创建socket这一步就失败了

做了实验:把PF_PACKET换成AF_INET可以,但是接收不到数据包。。。。。

怎么办啊?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

心在旅行 2022-10-22 05:17:24

斑竹  大侠  神人  都出那里了啊

oО清风挽发oО 2022-10-22 05:17:24

出错信息是什么

思念满溢 2022-10-22 05:17:24

内核需要支持的,可以在内核选项中,选中网络部分相关的设置,我以前帖子里面也有

帥小哥 2022-10-22 05:17:24

也可以加载一个pf_packet.ko这个驱动来解决问题

太傻旳人生 2022-10-22 05:17:24

楼上两位大侠能说的详细点么?

内核选项具体是那一个?

是不是 Device ——Networking——pack socket

这一项?

加驱动又怎么加? 是加入这个文件从新编译么?

給妳壹絲溫柔 2022-10-22 05:17:24

出错信息就是返回值是-1.。。。创建socket失败

毁我热情 2022-10-22 05:17:24

pf_packet.ko这个文件找不到嘛

蘸点软妹酱 2022-10-22 05:17:24

失败后,打印 strerror(errno),看看具体报错信息是什么?定位一下问题?

偷得浮生 2022-10-22 05:17:24

谢谢大家  我在驱动选项里加了PF_PACKET这个选项,重新编译内核后问题解决了。。。。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文