nftables wiki 解释了优先级这里。显然,优先级是一个数值,如 -10、0 或 10。Red Hat nftables 文档也做了同样的事情。
在接下来几页的示例中,优先级仍然是数字。但在其他地方,比如这里,数字优先级变得明显毫无意义filter
,如下例所示:
% nft list ruleset
table inet filter {
chain input {
type filter hook input priority filter; policy accept;
我或多或少理解数字优先级用于配置规则,而上面的例子是 的结果nft list ruleset
。但为什么这个输出不显示配置数字值,而是毫无意义的(?)filter
?那么它的价值是什么filter
?
答案1
幸运的是,我想我基本上可以回答我自己的问题。这输出文本修饰符-y
页面有一个有点奇怪的选项Print chain priority numerically.
,显然默认情况下没有。
这样我们就有了:
# nft -y list ruleset
table inet filter {
chain input {
type filter hook input priority 0; policy drop;
输出(如上所示)现在是数字。根据中提供的信息,该值priority 0
似乎是定义为 type 的链的默认值filter
基础链优先级。
此外,它看起来像priority
必须是这个词filter
,或者可能是另一个预定义的词(但我找不到对这里允许的内容的引用) - 或者然后是一个数值。但另一个单词 liketest
会出错。