要快速确认Linux服务器当前实际生效的iptables过滤规则,必须用iptables -L -n -v:该命令一次性列出filter表INPUT、FORWARD、OUTPUT链所有规则,含数据包数、字节数等实时统计,-n避免DNS反查确保IP端口数字显示,-v验证规则是否真实生效。

要快速确认Linux服务器当前实际生效的iptables过滤规则,避免因规则未保存、表切换错误或默认策略掩盖导致误判,必须用带参数的组合命令直接读取内核运行时规则。
查看完整规则列表(含流量统计)
运行 iptables -L -n -v:这条命令会一次性列出 filter 表中 INPUT、FORWARD、OUTPUT 三条链的所有规则,同时显示每条规则匹配的数据包数量、字节数、接口和目标动作。
-n 参数强制以数字形式显示 IP 和端口,跳过 DNS 反查,既加快输出速度,又防止因反查失败造成显示延迟或截断;-v 提供真实流量数据,能一眼看出某条规则是否正在起作用——如果某条 ACCEPT 规则的包计数长期为 0,大概率是上层路由或网卡配置问题,而非规则失效。
精准查看入站规则(日常运维首选)
执行 iptables -L INPUT -n -v:绝大多数安全策略聚焦在 INPUT 链,单独查它可避开 FORWARD 和 OUTPUT 的冗余信息干扰,页面更干净,定位更快。
注意:如果系统启用了 IPv6,这条命令不会显示 ip6tables 规则,需另行执行 ip6tables -L INPUT -n -v 查看。
带行号查看以便后续操作
第一步:运行 iptables -L -n --line-numbers。
第二步:观察输出中每条规则前的 num 列数值,例如显示 3 DROP all -- 192.168.1.5 0.0.0.0/0,表示这是 filter 表中第 3 条规则。
第三步:后续如需删除该规则,直接执行 iptables -D INPUT 3 即可精准移除,无需担心误删其他链或位置错乱。
这一步不可跳过——没有行号就无法安全删除或插入规则,强行用 -D 配合匹配条件删除,一旦条件写错或存在多条相似规则,极易删错。
检查 NAT 表等非默认表规则
方法一:查看 NAT 表全部规则 → 运行 iptables -t nat -L -n。
方法二:查看 raw 表规则 → 运行 iptables -t raw -L -n。
方法三:查看 mangle 表规则 → 运行 iptables -t mangle -L -n。
filter 表是默认表,省略 -t filter 即可;但 nat、raw、mangle 等表必须显式指定 -t 参数,否则命令不会报错但返回空结果,容易让人误以为“没规则”。


















