Linux 如何实现在netfilter之前,尽量靠近底层的地方实现数据包过滤?

FlashBaby518 2017-02-23 04:13:48
netfilter主要是在网络层的包匹配过滤。我最近搞的东西,需要实现进入网络层之前的包匹配过滤。通过查资料看到ebtables不知道可不可以?也在努力看内核源码,netif_receive_skb()诸如此类。或是修改网卡驱动吗?
最后期望实现的效果是:网络层之前的包标记过滤,能够对匹配到的数据包进行丢弃或转发操作。
...全文
598 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
FlashBaby518 2017-03-15
  • 打赏
  • 举报
回复
引用 2 楼 qprevf 的回复:
- -我记得是netfilter可以再tcp/IP之前就能过滤了呀, 他在匹配路由前就可以做一次过滤来判断是否转发丢弃, 你再好好看看
netfilter好像有个网桥模式,貌似和IP层互相关联,NF_BR...诸如这样的模式吧。只会一些普通的netfilter应用。这个网桥模式是不是能在桥接之前起作用呢?
qprevf 2017-02-24
  • 打赏
  • 举报
回复
- -我记得是netfilter可以再tcp/IP之前就能过滤了呀, 他在匹配路由前就可以做一次过滤来判断是否转发丢弃, 你再好好看看
twintiger 2017-02-24
  • 打赏
  • 举报
回复
不知道你要处理什么样的包?mac层有个dev_add_pack可以做你这样的事情,相当于截取某种协议的包。你自己google用法吧,应该讲的还是比较详细的。
FlashBaby518 2017-02-23
  • 打赏
  • 举报
回复
顶!沉得好快。。。

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧