admin管理员组

文章数量:1642330

firewall-cmd NAT转发,使局域网内电脑可以上网

环境:拓扑图如下图,haproxy电脑可以上外网,其余6台机不可以上外网。操作之前默认为已经分别按如下图所示完成了IP的配置。

1 haproxy机器配置:

#1启用IP转发
cat /proc/sys/net/ipv4/ip_forward
0
echo "1" > /proc/sys/net/ipv4/ip_forward
cat /proc/sys/net/ipv4/ip_forward
1
#2修改网卡的zone
#firewall-cmd --permanent --zone=external --change-interface=eth1
#firewall-cmd --permanent --zone=internal --change-interface=eth0
#3设置IP地址伪装
firewall-cmd --zone=public --add-masquerade --permanent
#4设置NAT规则
firewall-cmd --permanent --direct --passthrough ipv4 -t nat POSTROUTING -o eth1 -j MASQUERADE -s 10.1.1.0/24
#重载firewalld使配置生效
firewall-cmd --reload

#5添加到backend1~3的路由
route add -net 1.1.1.0 netmask 255.255.255.0 gw 10.1.1.1

2 varnish1机器配置:

route add default gw 10.1.1.4  #此时varnish1可以上网,以下操作是为了二次NAT,提供backend-web1~3上网的
#1启用IP转发
cat /proc/sys/net/ipv4/ip_forward
0
echo "1" > /proc/sys/net/ipv4/ip_forward
cat /proc/sys/net/ipv4/ip_forward
1
#2修改网卡的zone
#firewall-cmd --permanent --zone=external --change-interface=eth1
#firewall-cmd --permanent --zone=internal --change-interface=eth0
#3设置IP地址伪装
firewall-cmd --zone=public --add-masquerade --permanent
#4设置NAT规则
firewall-cmd --permanent --direct --passthrough ipv4 -t nat POSTROUTING -o eth1 -j MASQUERADE -s 1.1.1.0/24
#重载firewalld使配置生效
firewall-cmd --reload

3 varnish2, varnish3机器配置:

route add default gw 10.1.1.4  #在varnish2,3上分别进行这个操作,此时varnish2,3可以上外网

4 backend-web1~3机器配置:

route add default gw 1.1.1.4  #在backend-web1,2,3上分别进行这个操作,此时backend-web1,2,3可以上外网

1.4 #在backend-web1,2,3上分别进行这个操作,此时backend-web1,2,3可以上外网


本文标签: 网内电脑Firewallcmdnat