【问题标题】:only accept certain ip/mac/ethtype packets in a socket仅接受套接字中的某些 ip/mac/ethtype 数据包
【发布时间】:2014-05-20 12:00:26
【问题描述】:

我是网络编程的新手,也是 python 的初学者。

我想在 Python 中设置一个套接字来只接受某些包。 我可以使用以下值:

目的地址和端口 源 MAC 地址 ethtype(自己的)

如何为我的套接字类设置一个过滤器,只为我接受数据包(在目标地址,端口) 和/或正确的 ethtype,和/或由具有已知 MAC 地址的设备发送?

任何帮助将不胜感激,我尝试通过 Google 查找,但点击量令人难以置信,到目前为止我还没有找到解决我问题的答案。

谢谢, 亚瑟

【问题讨论】:

    标签: python sockets networking filtering packet


    【解决方案1】:

    我建议您使用scapy。它是制作自定义数据包和做很多其他事情的好工具。

    您可以在 scapy 的 sniff() 中添加 filters 以捕获您想要的数据包。您还可以将 scapy 与您自己的 python 程序一起使用。 此外,您会在互联网上找到大量关于如何使用 scapy 的教程。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-26
      相关资源
      最近更新 更多