centos 7 双网卡共享上网

centos 7 双网卡共享上网

多网口服务器配置nat转发,实现内网共享上网。

centos 7 为私网提共nat网关服务

前言,公司的一个项目需要,只有三台服务器和一个上一家中标单位提供的公网IP,除此之外没有其余的硬件。公司的应用部署需求是,一台应用两台数据库,可能还有后期数据库从项目本身内网设备中取数据的需求。在没有网络设备的情况下,想到一个办法,因为服务器都是四网卡,可以从把一台服务器配置双网卡,一网卡配置公司IP,一网卡配置私网IP。私网IP连另外两台服务器接一个小的四口交换机连内网。

操作步骤

配置其中一台一个网口作为内网网关,另一网口作为出口接入,nat转发内网流量。

服务器一

双网卡配置,em1配置公网,em2配置内网地址,即内网网关。

IP配置

  • em1:218.108.88.88 项目公网地址
  • em2:10.10.100.10 项目私网网段

配置IP转发

1
2
3
4
vim /etc/sysctl.conf
# 追加一行内容
# Controls IP packet forwarding
net.ipv4.ip_forward = 1

启用转发配置

1
sysctl -w net.ipv4.ip_forward=1

防火墙域控制

1
2
firewall-cmd --zone=external --add-interface=em0 --permanent
firewall-cmd --zone=internal --add-interface=em1 --permanent

分别把公网的网卡添加到external域,私网网卡添加到internal域。

更新防火墙配置

1
firewall-cmd --complete-reload

添加IP伪装

1
firewall-cmd --zone=external --add-masquerade --permanent

启用公网IP伪装。

启用NAT规则

1
firewall-cmd --permanent --direct --passthrough ipv4 -t nat -I POSTROUTING -o em0 -j MASQUERADE -s 10.10.100.0/24

启用私网段IP NAT转发。

放通服务器上必要的端口

1
2
firewall-cmd --permanent --zone=internal --add-service=tftp
firewall-cmd --permanent --zone=internal --add-service=ssh

如tftp,ssh等。

更新防火墙配置

1
firewall-cmd --complete-reload

至此nat配置结束。

服务器二配置

配置服务器网串口IP为私网IP,如10.10.10.9。

TYPE=Ethernet
PROXY_METHOD=none
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=em1
UUID=09560695-2f1b-4052-854d-3d0840c00d6a
DEVICE=em1
ONBOOT=yes
IPADDR=10.10.100.9
NETMASK=255.255.255.0
GATEWAY=10.10.100.10
DNS1=223.5.5.5.5
DNS2=114.114.114.114
PREFIX=24
ZONE=internal

服务器三配置

参考服务器二,配置网关指向服务器一的私网IP。至此,三台服务器均可上网,服务器配置公司业务。


centos 7 双网卡共享上网
https://ywmy.xyz/2019/03/27/centos-7-双网卡共享上网/
作者
ian
发布于
2019年3月27日
许可协议