iptables 实现集群内网服务器访问公网

搭建好集群后,服务器都是配置的内网,因此集群内服务器是无法进行联网安装软件、同步时间、更新系统等,需要用iptables转发实现内网服务器上公网。

准备一台可以访问公网的服务器,假设公网IP:1.2.3.4,内网IP:10.0.0.1

内网其中一台服务器IP:10.0.0.2

配置步骤如下:

公网服务器设置iptables规则

# iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j SNAT --to-source 1.2.3.4

公网服务器上打开ip转发

首先查看是否已经打开ip转发

# sysctl -a |grep 'net.ipv4.ip_forward'

如果值为1,则说明已经打开,否则需要修改配置文件 /etc/sysctl.conf

# vim /etc/sysctl.conf

修改为

net.ipv4.ip_forward = 1

然后运行

# sysctl -p

内网服务器配置网络

修改内网服务器网关为10.0.0.1,重启网络,查看是否可以正常上网