You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

nftables配置IP长度匹配规则触发bash重定向错误如何解决

nftables IP长度匹配规则改写方案

报错原因

你收到的报错并非nftables工具抛出,而是Bash shell的重定向机制导致:未被引号包裹的>会被Bash识别为标准输出重定向符号,默认会尝试将命令执行结果写入名为2000的文件,因此触发了「2000: No such file or directory」的报错。

无尖括号比较运算符改写方案

nftables原生支持纯字母形式的比较关键字,完全可以替代</>这类符号运算符,且不会触发Bash的特殊字符解析,对应关系如下:

  • gt:等价于>,表示大于
  • lt:等价于<,表示小于
  • ge:等价于>=,表示大于等于
  • le:等价于<=,表示小于等于
  • eq:等价于==,表示等于
  • ne:等价于!=,表示不等于

匹配「IP长度大于2000」需求的规则可改写为如下命令,无需使用任何尖括号类比较符:

sudo nft add rule inet my_table my_chain ip length gt 2000 counter accept

可选补充(使用尖括号的解决方法)

如果后续需要使用尖括号类比较符,只需将包含特殊符号的规则部分用单引号包裹,避免Bash解析即可,命令示例:

sudo nft add rule inet my_table my_chain 'ip length > 2000 counter accept'

内容的提问来源于stack exchange,提问作者Eldragon01

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 19:24:02