centos7 通过snat进行上网

需求:

我有两台华为云的服务器,一台绑定了弹性公网IP,另外一台没有,打算一个做NGINX代理服务器,有网的那台,另外一个安装docker进行安装MySQL,但是安装docker使用yum进行安装方便的多,然而并不能上网,所以需求就是

----- 内网服务器通过代理进行上网---------

说一下环境:

  • 华为云(其实不重要)
  • centos7 操作系统
  • 两台服务器,一个能上网,一个不能IP如下
    服务器A: 192.168.0.248 (可以上网,有弹性公网IP)
    服务器B:192.168.0.17 (无法上网)

操作:

1、 分别centos7上的3台主机上关闭firewad和清空iptables的nat
[root@centos7 ~]# systemctl stop firewalld
[root@centos7 ~]# iptables  -F

2、代理(服务器A)上打开内核转发
 [root@centos7 ~]# echo 1  >/proc/sys/net/ipv4/ip_forward
 [root@centos7 ~]# sysctl -p /etc/sysctl.conf  #使其生效
3、  在服务器A上做SNAT源地址转换规则
[root@centos7 ~]#  iptables -t nat -A POSTROUTING  -s 192.168.0.0/24 -j SNAT

4、在内网的机器(服务器B)上删除原网关,添加内网的网关
 [root@centos7 ~]# route delete default gw 192.168.0.1
 [root@centos7 ~]# route add default gw 192.168.0.248 

5、服务器B重启后失效,需要重新执行第④步

其他文章

Linux端口映射配置(一个公网IP直接进入到两个不同的云服务器)

你可能感兴趣的:(centos7 通过snat进行上网)