在 Ubuntu 系统中,iptables 是一个用于配置内核防火墙(netfilter)规则的命令行工具。以下是一些查看 iptables 规则的技巧:
sudo iptables -L -n -v
参数说明:
-L:列出规则-n:以数字形式显示地址和端口,而不是尝试解析主机名和服务名-v:显示详细信息,如数据包和字节计数sudo iptables -L INPUT -n -v
将 INPUT 替换为你想要查看的链名称,例如 OUTPUT、FORWARD 等。
sudo iptables -t nat -L -n -v
将 nat 替换为你想要查看的表名称,例如 filter、mangle 等。iptables 默认有三个表:filter(默认)、nat 和 mangle。
sudo iptables -L --line-numbers -n -v
这将显示规则的行号,方便你参考和修改规则。
sudo iptables -L INPUT -n -v --packet-counters
将 INPUT 替换为你想要查看的链名称。这将显示每个规则匹配的数据包和字节计数。
iptables 规则的变化:sudo iptables -L INPUT -n -v --packet-counters --line-numbers | grep ':0 '
这将显示与特定规则匹配的数据包和字节计数,但仅显示计数为0的规则。你可以使用 watch 命令持续监控这些规则的变化:
watch -n 1 "sudo iptables -L INPUT -n -v --packet-counters --line-numbers | grep ':0 '"
将 -n 1 替换为你想要监控的时间间隔(以秒为单位)。