nftables 数据包过滤器 1.0.1 发布

nftables 1.0.1 版本已发布,这是一个统一了 IPv4、IPv6、ARP 和网络桥接数据包过滤接口的数据包过滤框架(旨在替代 iptables、ip6table、a​​rptables 和 ebtables)。nftables 1.0.1 所需的更改已合并到内核中。 Linux 5.16-rc1。

nftables 软件包包含在用户空间运行的数据包过滤组件,而内核级工作由内核的一部分 nf_tables 子系统提供。 Linux 自 3.13 版本以来,内核级别仅提供了一个通用的、与协议无关的接口,提供从数据包中提取数据、执行数据操作和流量控制的基本功能。

过滤规则本身和协议特定的处理程序在用户空间被编译成字节码,之后该字节码通过 Netlink 接口加载到内核中,并在内核中以特殊方式执行。 虚拟机这与伯克利数据包过滤器(BPF)类似。这种方法可以显著减少内核级过滤代码的大小,并将所有规则解析和协议逻辑移至用户空间。

主要创新:

  • 减少加载大型集合和地图列表时的内存消耗。
  • 场景和地图列表的重新加载速度已加快。
  • 大型规则集中选定表和链的输出已加速。例如,“nft list Ruleset”命令显示一组100万行规则的执行时间为3.049秒,而当仅输出nat和filter表时(“nft list table nat”、“nft list table filter”) ”)减少到 1.969 和 0.697 秒。
  • 当处理具有大型集合和映射列表的规则时,使用“--terse”选项执行查询的速度得到了加快。
  • 可以过滤来自“egress”链的流量,该链的处理级别与 netdev 链中的 egress 处理程序(egress hook)相同,即在驱动程序从内核网络堆栈接收数据包的阶段。表 netdev 过滤器 { 链出口 { 类型过滤器钩子出口设备 = { eth0, eth1 } 优先级 0;元优先级设置 ip Saddr 映射 { 192.168.10.2 : abcd:2, 192.168.10.3 : abcd:3 } } }
  • 允许在给定偏移处匹配和修改包头中的字节和数据包的内容。 # nft 添加规则 xy @ih,32,32 0x14000000 计数器 # nft 添加规则 xy @ih,32,32 设置 0x14000000 计数器

来源: opennet.ru

为具有 DDoS 保护、VPS VDS 服务器的站点购买可靠的主机 🔥 购买具备 DDoS 防护的可靠网站托管服务,包括 VPS 和 VDS 服务器 | ProHoster