LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 851|回复: 4

关于libpcap的问题

[复制链接]
发表于 2005-7-30 17:27:20 | 显示全部楼层 |阅读模式
用libpcap抓包后,是自动转发此包还是不转发。
比如在网关处截了包,是不是要转发,不然包会丢失
如果是自动转发,那么怎么可以使包不转发
还有就是如果要不是自动转发包
怎么转发包
望高手指点
发表于 2005-7-30 20:25:46 | 显示全部楼层
感觉自己的语文水平确实太差了,一点也看不懂楼主在说什么?!!
回复 支持 反对

使用道具 举报

发表于 2005-8-1 20:13:43 | 显示全部楼层
libpcap主要采用包过滤机制,在数据链路层上抓包后,不会自动转发,由过滤机制决定转发内容。请参见
http://www.ttian.net/website/2005/0708/75.html
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-8-1 21:12:50 | 显示全部楼层
谢谢拉
回复 支持 反对

使用道具 举报

发表于 2005-8-2 10:43:40 | 显示全部楼层
Post by Herro_tales
用libpcap抓包后,是自动转发此包还是不转发。
比如在网关处截了包,是不是要转发,不然包会丢失
如果是自动转发,那么怎么可以使包不转发
还有就是如果要不是自动转发包
怎么转发包
望高手指点

驱动程序收到来自数据链路层的包后,不是立即送往操作系统的协议栈处理,而是复制一份给LIBPCAP,何来转发之说?
由系统协议栈处理的包可能把包重发回网络中(如果管理员把机器设置为网关,路由之类的话),而LIBPCAP那份包则由LIBPCAP处理,你想把它重发回网络也行,想把它做何种处理也行,随你高兴,但是有一点,你把它重发回网络,那么网络上可能有相同的两个包(一个协议栈处理的包,一个LIBPCAP发出的包),这个需要考虑

我感觉你想做一个包过滤类似IPTABLES的东西,如果是这样,不如直接就用内核里的FILTER更好。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表