CentOS7 配置NAT服务 4000 器以及端口映射
2017-06-13 14:47
483 查看
最近有一台Esxi服务器需要做托管,只有一个公网ip,但是所有虚拟机又都需要访问公网,我在Esxi里没有找到类似Vmware workstation 的NAT网络模式,所以我想使用一台虚拟机做NAT服务器。我的虚拟机系统有Win2008 和 CentOS7,考虑到稳定性我选择了在Linux上实现。 以下是我在笔记本上用Vmware WorkStation 做的模拟实验:
先介绍一下实验环境
物理机:Windows 10 + Vmware WorkStation 12
虚拟机1:windows 7 ,虚拟单网卡 NAT
虚拟机2:CentOS7 最小化安装,双虚拟网卡 NAT
由于两台虚拟机的网卡都配置为 NAT 模式,可以认为他们都在同一个交换机下,可以互相访问。
开始配置CentOS7
1、 准备工作(更新系统、安装网络工具)
2、配置IP地址
我的两块网卡分别为 eno16777736 和 eno33554984,我打算将eno16777736 作为外网访问,故IP保持默认DHCP自动分配,这边分配到的IP为
3、启用IP转发
修改 /etc/sysctl.conf 文件,添加如下行
使用
4、修改接口区域
默认情况下两块网卡的zone为public,现在需要将eno16777736 设置为 external,将 eno33554984 设置为 internal。
其中
5、设置IP地址伪装
6、设置NAT规则
7、设置生效
8、验证
在win7虚拟机中配置ip为
ping 百度测试网络是否连通
至此,NAT服务器配置完成。
开始配置端口映射
因为我需要从外网访问到内网的win虚拟机,所以需要端口映射,以远程桌面访问为例,windows的远程桌面端口为tcp 3389,所以只需要将外网的端口映射到内网3389即可,命令如下:
查看设置,我这里设置了两个端口
验证端口映射:
在物理机上使用 mstsc 工具,连接CentOS 的外网IP ,即一开始提到的
好了,实验完毕。因为我所有的虚拟机都是静态ip,所以没有安装DHCP服务。
参考连接:
http://blog.redbranch.net/2015/07/30/centos-7-as-nat-gateway-for-private-network/
https://havee.me/linux/2015-01/using-firewalls-on-centos-7.html
http://xylbk.blog.51cto.com/10543671/1757535
先介绍一下实验环境
物理机:Windows 10 + Vmware WorkStation 12
虚拟机1:windows 7 ,虚拟单网卡 NAT
虚拟机2:CentOS7 最小化安装,双虚拟网卡 NAT
由于两台虚拟机的网卡都配置为 NAT 模式,可以认为他们都在同一个交换机下,可以互相访问。
开始配置CentOS7
1、 准备工作(更新系统、安装网络工具)
yum -y update
yum -y install net-tools.x86_64
2、配置IP地址
[root@test ~]# ifconfig eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.32.130 netmask 255.255.255.0 broadcast 192.168.32.255 inet6 fe80::20c:29ff:fe4c:4213 prefixlen 64 scopeid 0x20<link> ether 00:0c:29:4c:42:13 txqueuelen 1000 (Ethernet) RX packets 6525 bytes 2334108 (2.2 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 4816 bytes 2671369 (2.5 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 eno33554984: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.10.1 netmask 255.255.255.0 broadcast 192.168.10.255 inet6 fe80::20c:29ff:fe4c:421d prefixlen 64 scopeid 0x20<link> ether 00:0c:29:4c:42:1d txqueuelen 1000 (Ethernet) RX packets 5656 bytes 1625792 (1.5 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 3596 bytes 3461007 (3.3 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
我的两块网卡分别为 eno16777736 和 eno33554984,我打算将eno16777736 作为外网访问,故IP保持默认DHCP自动分配,这边分配到的IP为
192.168.32.130。eno33554984 作为内网访问,ip设置静态
192.168.10.1,ip具体设置方法不再累述。
3、启用IP转发
修改 /etc/sysctl.conf 文件,添加如下行
net.ipv4.ip_forward = 1
使用
sysctl -p命令生效
4、修改接口区域
默认情况下两块网卡的zone为public,现在需要将eno16777736 设置为 external,将 eno33554984 设置为 internal。
firewall-cmd --zone=external --change-interface=eno16777736 --permanent firewall-cmd --zone=internal --change-interface=eno33554984 --permanent
其中
--permanent表示永久生效。
5、设置IP地址伪装
firewall-cmd --zone=external --add-masquerade --permanent
6、设置NAT规则
firewall-cmd --permanent --direct --passthrough ipv4 -t nat -I POSTROUTING -o eno16777736 -j MASQUERADE -s 192.168.10.0/24
7、设置生效
firewall-cmd --reload
8、验证
在win7虚拟机中配置ip为
192.168.10.10,网关
192.168.10.1,如图
ping 百度测试网络是否连通
至此,NAT服务器配置完成。
开始配置端口映射
因为我需要从外网访问到内网的win虚拟机,所以需要端口映射,以远程桌面访问为例,windows的远程桌面端口为tcp 3389,所以只需要将外网的端口映射到内网3389即可,命令如下:
firewall-cmd --zone=external --add-forward-port=port=3389:proto=tcp:toport=3389:toaddr=192.168.10.10 --permanent firewall-cmd --reload
查看设置,我这里设置了两个端口
[root@test ~]# firewall-cmd --zone=external --list-forward-ports port=3389:proto=tcp:toport=3389:toaddr=192.168.10.10 port=5000:proto=udp:toport=5000:toaddr=192.168.10.10
验证端口映射:
在物理机上使用 mstsc 工具,连接CentOS 的外网IP ,即一开始提到的
192.168.32.130
好了,实验完毕。因为我所有的虚拟机都是静态ip,所以没有安装DHCP服务。
参考连接:
http://blog.redbranch.net/2015/07/30/centos-7-as-nat-gateway-for-private-network/
https://havee.me/linux/2015-01/using-firewalls-on-centos-7.html
http://xylbk.blog.51cto.com/10543671/1757535
相关文章推荐
- 配置动态NAT、端口PNAT、NAT服务分发
- 思科 配置NAT PNAT 端口映射
- NAT网络地址转换大型服务配置以及详细讲解
- virtualbox NAT网络模式详解以及NAT模式下端口映射
- linux主机下的Vmware Workstation配置NAT设置 端口映射-Ubuntu为例
- Nginx配置端口转发 映射 以及连接超时问题
- Windows 2003配置NAT端口映射
- NAT网络地址转换大型服务配置以及详细讲解
- cisco路由器带端口映射的NAT配置实例
- NAT网络地址转换大型服务配置以及详细讲解
- 华为路由器的端口映射NAT配置
- NATApp内网映射工具使用方法以及Tomcat自建本地web服务
- Linux Vmware Nat端口映射配置
- 【有图有真相】静态NAT、动态NAT、PAT、端口映射的详细配置过程
- NAT网络地址转换大型服务配置以及详细讲解 推荐
- cisco2600配置NAT及端口映射
- Virtualbox NAT模式下配置端口映射
- vmware player 配置NAT模式下虚拟机的端口映射
- cisco路由器带端口映射的NAT配置实例
- 利用脚本自动配置iptables的NAT端口映射