使用场景:有多台内网服务器,其中只有一台能够访问外网,但其他内网服务器也希望访问外网

假设内网网段为:192.168.1.0/24
可访问外网的内网服务器的内网IP为:192.168.1.1
可访问外网的内网服务器的内网网络接口为:enoXXXXXXX

在可以访问外网的服务器上做如下配置:
1) 开启ip_forward转发

# 在/etc/sysctl.conf中添加
net.ipv4.ip_forward=1
# 然后让其生效
sysctl -p

2) 转发内网段的流量
执行如下firewalld命令:

firewall-cmd --permanent --direct --passthrough ipv4 -t nat -I POSTROUTING -o enoXXXXXXX -j MASQUERADE -s 192.168.1.0/24
firewall-cmd --reload

之后,在需要访问外网的内网服务器上添加到192.168.1.1的网关即可访问外网了:

route add default gw 192.168.1.1 dev enoXXXXXXX 

如果希望永久有效,可将网关加到网络的配置文件里。

文档更新时间: 2020-01-10 03:19   作者:月影鹏鹏