ChinaUnix.net
相关文章推荐:

PFring 写的bPF 过滤程序

1。 从网上看到一些包过滤的代码,是通过tcpdump -dd 转换过来的,这个算一个方法。 2。 但是如果我想直接使用bpf的代码行不行呢? struct bpf_insn insns[] = { bpf_STMT(bpf_LD+bpf_H+bpf_ABS, 12), bpf_JUMP(bpf_JMP+bpf_JEQ+bpf_K, ETHERTYPE_IP, 0, 8), bpf_STMT(bpf_LD+bpf_W+bpf_ABS, 26), bpf_JUMP(bpf_JMP+bpf_JEQ+bpf_K, 0x8003700f, 0, 2), bpf_STMT(bpf_LD+bpf_W+bpf_A...

by rockcanon - Linux环境编程 - 2009-06-26 11:16:53 阅读(2680) 回复(3)

相关讨论

为什么bpf要用虚拟机来实现过滤呢?相比netfilter,二者各自有什么优缺点?谢谢.

by cjhacker - Linux环境编程 - 2009-01-23 15:36:02 阅读(2397) 回复(0)
by m4a1 - 其他UNIX - 2003-07-17 15:34:05 阅读(1020) 回复(0)

问题是这样的,我想用libpcap抓取数据包做入侵检测,想过滤那些不关注的数据包

by ck416787107 - C/C++ - 2011-04-19 23:37:44 阅读(3222) 回复(1)

这个问题似乎问的有点奇怪~ 但是确实没搞明白 大多数介绍说的是PF_PACKET的套接字和bpf都是一种过滤器,但有的文献说的是可以把代码加进去,只是就那么一两句话,也不知道怎么用 希望知道的给解释下,尽量详细一点,或者给点资料什么的~ 不是很清楚的也可以来一起讨论下~ =============解决后,结果如下================ 答案是,可以在linux packet filter中应用bpf过滤规则~ 推荐一篇文章(英文):http://www.linuxjournal...

by zuii - C/C++ - 2014-04-28 08:31:53 阅读(5727) 回复(7)

求教一些pfring的问题: 1、能否对一个网络接口多次使用pfring_open,即一个网卡对应多个ring_handle? 2、函数pfring_set_cluster,不知道这个函数具体用途是什么,cluster是什么意思? 我最终想实现的效果是这样,应用开若干个线程(个数任意),捕获任意个网络接口的数据包(比如服务器有三个网络接口eth0、eth1、eth2,我可以指定捕获eth0,或者捕获eth1+eth2的,或者eth0+eth1+eth2的),我还可以指定环数,且分到每个环的数据...

by winway1988 - C/C++ - 2013-05-03 16:46:11 阅读(2395) 回复(1)

今天看libpcap代码,文章说bpf(bsd packet filter)不错,自己了个sniff,不过pcap那一套毕竟要copy数据包,就算是mmap pcap也要copy一次,而netfilter不用copy数据包... 我想能不能把bpf搞到netfilter呢??如果是应用层的话可以实用setsockopt来做 if ( (sock=socket(PF_PACKET, SOCK_RAW, htons(ETH_P_IP)))<0) { perror("socket"); exit(1); } /* Attach the filter to the socket */ i...

by ubuntuer - 内核源码 - 2012-06-04 16:25:51 阅读(2633) 回复(5)

bpf过滤机制在libpcap中,是自己实现的算法还是libpcap引用别的库?

by VIP_fuck - C/C++ - 2009-12-08 11:02:06 阅读(1025) 回复(0)

最近在使用零拷贝与应用层协议栈结合技术的研究,但是对pfring中的libzero API使用有一些疑惑。libzero中cluster组件对零拷贝及内存管理进行了优化。 在使用pfring_alloc_pkt_buf分配一个包缓存handle, pfring_recv_pkt_buff进行接收数据,pfring_send_pkt_buff进行发送数据。对于接收数据pfring 有自带的例程可以参考,但是对于发送例程中只是简单的接收后不做处理直接发送,不操作handle。 这里我需要发送自己的buf数据,但是不...

by linux小盒子 - 内核源码 - 2013-06-21 14:51:16 阅读(1986) 回复(1)

我现在正在研究libpcap1.2.1,但是有个问题比较困惑,是在所有的linux上都能使用bpf机制吗? 但是在编译源文件的时候,并没有编译pcap-bpf.c这个文件,有阅读过源代码的高手给点指点吗?

by rogge321 - C/C++ - 2012-06-05 15:29:40 阅读(1190) 回复(0)

为了做到尽可能的灵活,这个过滤程序可以根据使用者的定义来运行!这个程序是由一种名为bpf的伪机器码成的。bpf看上去很象带着一对寄存器和保存值的汇编语言,完成数学运算和条件分支程序过滤程序检查每个包,BP进程操作的内存空间包含着报文数据!过滤的结果是一个整数,指出有多少字节的报文需要送到应用层。这是一个更进一步的优点,因为我们一般只对报文的前面几个字节感兴趣,这样可以避免复制过量的数据以节省进程时间...

by ubuntuer - Linux文档专区 - 2010-01-11 14:15:21 阅读(1603) 回复(0)