封装nfqueue netlink接口的快速python库。

fnfqueue的Python项目详细描述


fnfqueue

Build StatusPython VersionsPyPI - License

快速netfilter nfqueue python和c接口。从

  • 避免内存分配
  • 批处理读取(使用recv_mmsg

它也不使用libnetfilter queue的类回调接口,并提供更类似python的迭代器接口。此外,它不假设任何内容,因此不会自动对数据包设置判决(不像debian中的python nfqueue在您从回调返回后接受所有内容……)

它可以从python中处理本地主机的ping -f(如果月亮在正确的位置,甚至iperf)。

重点是一个类似python的接口。

损坏数据包的简短示例:

iptables -A OUTPUT <filter here> -j NFQUEUE --queue-num 1
importfnfqueuequeue=1conn=fnfqueue.Connection()try:q=conn.bind(queue)q.set_mode(0xffff,fnfqueue.COPY_PACKET)exceptPermissionError:print("Access denied; Do I have root rights or the needed capabilities?")sys.exit(-1)whileTrue:try:forpacketinconn:packet.payload=packet.payload# modify the packet herepacket.mangle()exceptfnfqueue.BufferOverflowException:print("buffer error")passconn.close()# this can be called concurrently to cancel the above for loop

帮助以python文档的形式提供。

不需要C库。建筑需要CFFI。内核和libc必须足够新才能支持nfqueuerecvmmsg(linux 2.6.33,glibc 2.12-更新的内核提供更好的性能)。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java GWT对话框从不显示帮助   java在简单的MapReduce作业中带来了极大的开销   javacom。mysql。jdbc。例外情况。jdbc4。MySQLIntegrityConstraintViolationException:列不能为null/onetoone映射   如何通过TCP/IP与Java和Labview进行通信,并发送浮点数据缓冲区?   java Apache camel与spring事件基本示例   java如何使我的秒表应用程序在完全关闭后仍能运行?   java Nutch爬网错误输入路径不存在   java是Mapreduce中按值传递还是按引用传递的键?   正则表达式替换java中的特定字符   Java DOM XML解析   java Eclipse未显示服务器的项目   使用Arraylist进行快速排序的排序Java实现疑难解答   java Split text包含字符串列表中的数字   检查Java中的两个lambda是否执行相同的代码?   java为什么dispatchTouchEvent避免在屏幕上单击?