我知道使用外部库和模块(如scapy)是可能的。但是如果没有外部模块呢?不以root身份运行脚本呢?没有外部依赖呢? 我已经做了很多搜索,但没有找到太多帮助。我想能够创建自己的数据包,但不想以root身份运行或安装额外的依赖。 有什么建议吗?
许多操作系统(Linux)不允许使用原始套接字,除非您的有效用户ID为0(也称为root)。这不是库问题。一些操作系统(非服务器Windows XP SP2之后的版本)根本不允许创建原始套接字。 您可以通过在系统上运行man 7 raw来了解更多关于原始套接字的信息。请注意,所有套接字选项都可以使用Python套接字模块传递。