有人让 nft ct 子命令工作吗?

有人让 nft ct 子命令工作吗?

我正在尝试从 iptables 转换到 nftables,但ct子命令(timeoutssetmarksstatus、等l3protoexpectations但错误消息中提到了期望)在具有 nft rpm 版本 1 之前的 Fedora 37 上未被识别。
list 子命令也不会解析.egnft 'list ct timeouts'不会解析也不会statusl3proto.
注意单引号子命令 AFTERnft很重要。使用ct expectations也不行。

注意:手册页有零个示例,而 redhat 和 wiki 只有几个。整件事违反了 Unix 一贯的“做正确的一件事”的哲学。

答案1

它似乎阻止了 iptables -m contrack 的任何实际使用。 --ctstate 已建立,相关...

我正在使用nftables- iptables 的兼容版本,又名iptables-nft(您运行iptables命令,但它创建nftables规则)。如果我运行:

iptables -A example -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

那么生成的 nftables 规则集是:

table ip filter {
        chain example {
                ct state related,established counter packets 0 bytes 0 accept
        }
}

一般来说,使用包是将规则iptables-nft迁移到语法的好方法。iptablesnftables


如果您愿意,可以从命令行执行此操作:

# nft add chain ip filter example
# nft add rule ip filter example ct state related,established counter accept

我们可以通过运行以下命令来查看这些规则:

# nft list chain ip filter example
table ip filter {
        chain example {
                ct state established,related counter packets 0 bytes 0 accept
        }
}

相关内容