什么是NAT?
NAT(Network address translation)即网络地址转换,作为一种过渡解决手段,可以用来减少对全球合法IP地址的需求。简单的说,NAT就是在内部专用网络中使用内部地址,而当内部节点要与外界网络发生联系时,就在边缘路由器或者防火墙处,将内部地址转换成公网地址,从而使得在外网(Internet)上使用一个和数个合法IP地址正常传输数据。其中,这里的外网和内网是相对来讲的,下面假设能够访问互联网的网络为外网。
什么是DHCP
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。
实验环境
vSphere Client远程esxi
首先新建一个虚拟交换机
注意选择创建交换机的时候,不要选中网卡,把默认选中的网卡前的对勾删掉,之所以这么做,是因为我们要把这个网络的请求都转发到VM Network上去,而不要让它自己走物理网卡出去。
点击下一步给交换机随便起个名字,一路下一步即可
然后新建一个双网卡的虚拟机,我用的是最小化安装centos7(步骤在这里就不说了 详情见本人博客)
然后打开虚拟机设置
把网卡2连接到我们刚才新建的虚拟交换机上
这里记录一下网卡2的mac地址,接下来会用到
然后开机
本人服务器是连接校园网的,所以开机后写了一个脚本连上了校园网后才安装了一些软件,如果不联网会yum不到,自行配置联网
输入yum -y update更新yum源,确保我们yum到的软件都是最新的
然后输入yum -y install net-tools安装一些基本命令
接下来输入ifconfig找到刚才记录的mac地址,把这个网卡ip设置成内网ip,另一个设置成外网ip
配置如下,外网ip及网关根据实际情况配置,内网ip可参照互联网协议设置(我这里ens160为外网网卡)
私有地址的范围分别是:
A类地址范围:10.0.0.0—10.255.255.255;
B类地址范围:172.16.0.0---172.31.255.555;
C类地址范围:192.168.0.0---192.168.255.255。
vi /etc/sysconfig/network-scripts/ifcfg-ens160
TYPE=Ethernet
BOOTPROTO=static
IPADDR=172.18.74.180
NAME=ens160
DEVICE=ens160
ONBOOT=yes
GATEWAY=172.18.74.253
NETMASK=255.255.255.0
DNS1=114.114.114.114
DNS2=8.8.8.8
vi /etc/sysconfig/network-scripts/ifcfg-ens192
TYPE=Ethernet
BOOTPROTO=static
IPADDR=192.168.255.1
NAME=ens192
DEVICE=ens192
ONBOOT=yes
NETMASK=255.255.255.0
DNS=114.114.114.114
注意不要写网关
重启网卡
service restart network
防火墙配置
关闭防火墙
setenforce 0
systemctl stop firewalld
systemctl disable firewalld
配置防火墙,让发送至内网网卡(ens192)的数据全部通过
iptables -A FORWARD -i ens192 -j ACCEPT
修改数据报头信息
iptables -t nat -A POSTROUTING -s 192.168.255.0/24 -o ens160 -j MASQUERADE
开启Linux路由功能
echo 1 > /proc/sys/net/ipv4/ip_forward
cat /proc/sys/net/ipv4/ip_forward
安装配置DHCP服务
安装DHCP服务
yum install -y epel*
yum install -y dhcp
复制DHCP配置文件
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
编辑并修改dhcpd.conf配置文件
vi /etc/dhcp/dhcpd.conf
画红线处是修改的地方,后面的代码删除即可
解释:
subnet后跟子网网段
netmask后面是子网掩码
range是地址池范围
option routers是分发默认网关
默认租期时间(秒)
default-lease-time 600;
最大租期时间(秒)
max-lease-time 7200;
DNS服务器地址(多个地址用","隔开)
option domain-name-servers 223.5.5.5, 114.114.114.114;
为所分配的域分配域名(名字随便起)
option domain-name "vmnet.com";
启动DHCP服务
systemctl restart dhcpd
systemctl enable dhcpd
查看启动状态
systemctl status dhcpd
netstat -uap | grep dhcpd
搞定!
。。。从前车马很慢,书信很远,一生只够爱一个人!
原文地址:http://blog.51cto.com/13670314/2164451