gpt4 book ai didi

bpf - 是否有任何允许配置防火墙的 bpfilter 工具?

转载 作者:行者123 更新时间:2023-12-05 01:16:06 25 4
gpt4 key购买 nike

我想了解 bpfilter。我不能使用 netfilter(太慢)、nftables(没有我的功能集)。

内核说:

CONFIG_BPFILTER:│ │ 这构建了旨在 │ │ 通过 BPF 提供 netfilter 兼容功能的实验性 bpfilter 框架

有没有:

  • 允许使用 BPF 而不是 netfilter 配置防火墙规则的工具?
  • 可以轻松进入主题的文档?
  • 手册?....

到目前为止,我只追踪了一篇 LWN 帖子,解释了 bpffilter 有多酷,但出于管理目的,它毫无用处。

https://lwn.net/Articles/747551/

它是不是太新太粗略以至于根本不在乎?

最佳答案

截至 2019 年初,bpfilter 仍在开发中,尚未可用。基本骨架在这里和may even be activated in 4.18+ kernels , 但是 does not do much现在因为它不完整。将 iptables 规则转换为 BPF 字节码所需的代码,虽然是沿 the original RFC 提交的, 目前还没有进入内核。

一旦准备就绪,就不需要任何特定的工具。 Bpfilter 可能会通过 modprobe bpfilter 之类的东西启用,然后整个想法是透明地替换后端,同时保持前端不变:所以 iptables 应该是处理规则所需的唯一工具,无需任何特定选项。此外,bpftool 允许检查内核中加载的 eBPF 程序(包括 bpfilter 翻译的 iptables 规则)。

如果您愿意,可以在以下 video 中进行检查(免责声明:由我的公司提供),它展示了我们如何将 bpfilter 与经典的 iptables 规则一起使用(我们已经使用 RFC 中的代码修补了内核;并且在最终版本中不需要在控制台中执行 bpfilter.ko) .

即使不使用 bpfilter,您仍然可以将 BPF 程序附加到 XDP Hook (在驱动程序级别),以获得比 netfilter 提供的更好的性能。但是,您必须将规则完全重写为 C 程序,使用 clang 将它们编译成 eBPF,然后使用例如加载它们。 ip 工具(来自 iproute2)。我不知道这是否符合您的“功能集”。根据您的需求有多强烈,另一个激进的选择可能是将您的数据包处理移动到用户空间并使用 DPDK 框架重新实现您的设置。

关于bpf - 是否有任何允许配置防火墙的 bpfilter 工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54357292/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com