iptables如何使用通配符
作者:EasyWind
时间:2026-06-30
浏览:0
iptables中IP地址通配符可用192.168.0.*或CIDR,端口通配符用冒号或连字符范围,协议通配符用all。规则按顺序匹配,通用规则后置、具体规则前置,以优化过滤效率。
在配置 iptables 规则时,经常需要批量匹配 IP 地址、端口或协议。很多人会问:能不能像文件通配符那样用 `*` 号直接搞定?答案是肯定的,只是写法上有些小讲究。下面就把几种常见的通配符用法拆开讲清楚。

IP 地址通配符
最常用的有两种方式:
- 点分十进制 + 星号:比如
192.168.0.*表示 192.168.0.x 整个网段。注意这里的星号不具备正则通配能力,只是 iptables 对内建模式的一种约定用法。 - CIDR 表示法:更标准也推荐的做法是写
192.168.0.0/24,一眼就能看出子网掩码,不容易出错。
端口号通配符
端口号本身没有“星号”打法,但可以通过范围来实现类似效果:
- 冒号范围:比如
80:100表示从 80 到 100 的所有端口。 - 连字符范围:写法类似
80-100,效果与冒号相同。 - 星号+端口:比如
*:80并不是标准的 iptables 语法,实际不要这样用。要匹配任意源 IP 访问 80 端口,直接写--dport 80即可,不用指定源地址。
协议通配符
协议字段可以用 all 表示所有协议,例如 -p all。也可以直接用 -p tcp 或 -p udp 指定具体协议。其实多数情况下,规则里都会显式指定协议,因为你不写 tcp/udp 的话,端口匹配会失效。
看完理论,直接上几个常见场景的规则示例,感受一下实际怎么配:
允许所有来源 IP 访问本机的 80 端口(HTTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT允许来自 192.168.0.0/24 网段的 IP 访问本机的 22 端口(SSH)
iptables -A INPUT -p tcp -s 192.168.0.0/24 --dport 22 -j ACCEPT允许任意来源 IP 访问本机的任意端口(仅限新连接)
iptables -A INPUT -m state --state NEW -j ACCEPT阻止来自特定 IP 范围的访问,例如 192.168.0.0/24 网段
iptables -A INPUT -s 192.168.0.0/24 -j DROP
最后提醒一句:iptables 规则是按顺序从上到下匹配的,遇到匹配的规则就停止后续处理。所以通用规则放后面,具体规则放前面,这是最基本的规矩,否则可能出现意料之外的放行或拦截。
作者最新文章
淘宝闪购“等灯不计时”机制解析:政策、技术与多方协同
2026-09-08 18:00
一加自研电竞三芯P4/G3/T3确认:一加16首发,支持185FPS及9000mAh电池
2026-09-08 16:52
抖音拍摄剪辑教程:从竖屏运镜到卡点成片
2026-09-03 06:05
Excel筛选大于指定数值:操作步骤与结果验证
2026-09-03 06:03
PDF添加文字水印:位置、透明度与字号设置指南
2026-09-03 06:01
上一篇:
如何用cpustat监控系统启动过程
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多


































