在Rocky Linux 9中通过firewalld配置多网段路由,需结合IP转发、NAT规则及防火墙策略:
-
启用IP转发 编辑
/etc/sysctl.conf
,设置net.ipv4.ip_forward=1
后执行sysctl -p
生效。 -
Zone分配与接口绑定 为不同网段接口划分独立zone(如internal/external),通过
firewall-cmd --zone=XXX --change-interface=ethX --permanent
绑定。 -
动态伪装(MASQUERADE) 对外部zone启用伪装:
firewall-cmd --zone=external --add-masquerade --permanent
-
定义路由策略 通过rich规则允许跨zone转发:
firewall-cmd --zone=internal --add-rich-rule='rule family=ipv4 source=192.168.1.0/24 forward-port port=0-65535 protocol=tcp to-addr=10.0.0.0/24' --permanent
-
静态路由补充 通过
ip route add
或nmcli
设置持久化静态路由,与防火墙策略协同工作。
验证后执行firewall-cmd --reload
。生产环境建议配合NetworkManager进行持久化配置,并通过tcpdump和firewall-cmd --list-all-zones进行策略验证。