Centos Linux做路由公网IP分配一个给内网机器

本文档详细介绍了如何通过开启内核转发、设置iptables规则以及调整客户端网关,实现两台服务器间公网IP的共享,以达到节省带宽资源的目的。主要步骤包括在具有公网IP的server1上开启内核转发,设置防火墙规则,并在另一台内网服务器server2上设置网关,确保流量正确转发。
摘要由CSDN通过智能技术生成

环境说明

公司托管2台服务器在机房,其中一台机器有3个公网IP,另外一台新上的在内网,没有公网IP,现在想把公网IP分配一个给内网,如果直接分过去,带宽也得跟着拆分,为了两个机器共享公网带宽,需要把带公网IP的做成路由转发,把其中一个公网IP给新上的那台用。
一方面做个笔记,另一方面如果有相同需求的可以参考下。
下面的数据实在VirtualBox下模拟出来的,真实环境下可以一一对照操作就可以。
server1(做路由的)
内网IP:192.168.56.102
外网IP:172.19.2.209,172.19.2.210

server2
内网IP:192.168.56.101

系统版本CentOS7,防火墙管理工具用的iptables。

开启内核转发功能(server1上操作)

vi /etc/sysctl.conf
# 增加或修改参数如下
net.ipv4.ip_forward = 1
# 保存后,执行下面命令启用参数
sysctl -p

设置防火墙规则(server1上操作)

iptables -F
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

如果想要持久化生效,可以直接编辑iptables规则配置文件:

vi /etc/sysconfig/iptables
# 将 -A FORWARD -j REJECT --reject-with icmp-host-prohibited 修改为下面这样允许转发
-A FORWARD -j ACCEPT

路由规则:

# enp0s8 为外网网卡,这个参数可以省略
iptables -t nat -A POSTROUTING -s 192.168.56.101 -o enp0s8 -j SNAT --to-source 172.19.2.209
iptables -t nat -A PREROUTING -i enp0s8 -d 172.19.2.209 -j DNAT --to-destination 192.168.56.101

将客户端内网IP的网关设置为做路由的那台服务器的内网IP(server2上操作)

# 网卡配置文件大概是这样的,GATEWAY=192.168.56.102
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=7ae9db8d-cd14-43f2-9c16-4dac767e7c11
DEVICE=enp0s3
ONBOOT=yes
IPADDR=192.168.56.101
NETMASK=255.255.255.0
GATEWAY=192.168.56.102 # 关键是这行
DNS1=114.114.114.114
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值