nftables 不限制网桥和 ip6 系列中速率限制规则中的 ipv6 流量

nftables 不限制网桥和 ip6 系列中速率限制规则中的 ipv6 流量

我有一个无线路由器其中wlan0接口(无线电接口)是桥接的使用以太网接口eth0(连接到充当 DHCP 的另一台服务器)

/ # brctl show br0
bridge name     bridge id               STP enabled     interfaces
br0             8000.bce67c4d8fb0       no              eth0
                                                        
                                                        
                                                        wlan0

Linux内核版本:4.4.60 nftables版本:v0.9.6

我试图在 ip6 系列中设置一条规则来限制 ipv6 流量的速率。这是我的规则:

/ # nft list chain ip6 ngadre_rate_limiting ngadre_counter
table ip6 ngadre_rate_limiting {
        chain ngadre_counter {
                type filter hook prerouting priority raw; policy accept;
                limit rate 625 kbytes/second counter packets 1945 bytes 609744 accept
                counter packets 0 bytes 0 drop
        }
}

当我运行sudo ping6 2006:db8:0:f101::10 -i 0.1规则时,计数器会增加。但是当我运行时iperf3 -V -c 2006:db8:0:f101::10 -p5678 -i1 -tinf,规则是命中计数器不会增加,并且流量不受速率限制。

我应用了以下规则维基百科:

nft add rule filter input limit rate 10 mbytes/second accept

我是否遗漏了 ip6 规则中的某些内容?

更新 1:我尝试过limit rate 2/second并快速尝试ping6 -i 0.1,这里的规则是命中和丢弃计数器递增,而且 ping6 的速率限制为每秒 2 个数据包。这意味着与icmpv6似乎没有任何问题limit rate,但是当我尝试时iperf3,这个规则甚至不命中和掉落计数器也不递增。

答案1

在我的组织的一些内部帮助之后,在其他地方添加了某些在数据包上进行标记的规则,我无法在开放论坛上分享这些规则。基于此,数据包跳过了速率限制规则。我通过设置适当的标记解决了这个问题。

相关内容