firewall4:OpenWrt 基于 nftables 的防火墙与区域
从 22.03 起,OpenWrt 默认的防火墙是 firewall4(fw4)。它生成 nftables 规则而不是 iptables,/etc/config/firewall 里仍沿用旧版 fw3 的 UCI 写法。
以区域为单位,而不是规则列表
Section titled “以区域为单位,而不是规则列表”- 接口被归入区域,通常是
lan和wan,策略和转发都在区域之间设置。 - 默认配置下,LAN 和 WAN 是两个区域,LAN 的流量转发到 WAN;从 WAN 进入内网的连接,除非你加规则,否则不会被转发。
- 新增的接口,比如访客网络或 WireGuard 隧道,通常要单独建一个区域,或者加入现有区域。
在你的路由器上看一眼
Section titled “在你的路由器上看一眼”uci show firewall | grep '=zone'fw4 printfw4 print 会打印 fw4 将要加载的表、链和规则结构,但不会应用。修改配置后用 fw4 reload 生效。
- 基于
iptables -A …命令的教程不适用于 fw4,请改用 UCI 写规则。 - 新接口放错区域,是隧道或访客网络“能连上但没网”的常见原因。