DHCP的全称为 Dynamic Host Configuration Protocol ,动态主机配置协议。DHCP主要在局域网使用,对IP地址进行集中管理和分配,使网络环境中的主机动态获得IP地址、网关地址、DNS服务器地址等信息,并提升IP地址使用率。 IP地址是每个网络节点的标识,网络中的每一台计算机都需要配置IP地址才能够上网,如果在一些计算机比较固定的场所,例如机房,学习的计算机实验室,这样管理员会手动配置IP地址。如果在办公室,咖啡厅,图书馆,地铁等人口流动大终端不固定的地方,是不可能做到管理员手工配置IP地址的。这样就需要DHCP来分配IP地址和网关、DNS等信息。 DCHP是采用客户端/服务器的通信模式,需要客户端主动向服务器提出请求分配网络配置参数的请求,然后服务器返回客户端分配的IP地址配置信息等。在客户端还没有IP地址的时候,客户端是使用广播请求IP地址等配置信息,DHCP协议采用UDP作为传输协议,客户端发送广播消息到服务器的68端口,服务器响应广播消息给客户端67端口。DHCP客户端从DHCP服务器获取IP地址等信息主要由四个阶段,分别是发现、提供、选择、确认。
在使用时间超过百分之50的时候,DHCP客户端会以单播的方式向DHCP服务器发送Request报文来续租IP地址。如果DHCP客户端成功收到服务器发送的ACK报文,会按照相应的时间延迟租期。如果没有收到ACK报文,客户端还是会使用这个地址,在使用租期超过百分之87.5的时候,客户端会以广播的形式向服务器发送Request报文来续租IP地址,这一次如果客户端成功收到ACK报文,则按相应的时间延长IP地址的租期,如果还是没有收到ACK报文,客户端还是会继续使用这个IP地址,直到使用到百分之100的时候,客户端才会向服务器发送Release报文来释放这个IP地址,并且开始新的IP地址申请。
在实验之前先把VM虚拟机设置成为仅主机模式 规划DHCP服务器地址的范围:192.168.1.204-207 地址池的范围:192.168.101-200 这里我们使用:192.168.1.204
打开服务器管理器==>添加角色
然后一直下一步,到了服务器角色的时候选择安装DHCP服务器
安装完成之后在服务器管理器右上角点击工具可以看到DHCP了,进去之后发现已经运行
新建作用域,右击IPV4选择新建作用域,进去之后选择下一步,可以看到新建作用域名称,给它一个名字
接着下一步,会让我们填写地址池,按照规划好的地址池。填写192.168.1.101-200
接着下一步会让我们填写排除的地址范围,假如在地址池里面有一些IP地址被管理员手动添加了,就不能分配给DHCP地址池了。这里选择不填,因为没有手动配置IP
接下来就是设置IP地址的租期。IP地址的租期时间默认给的是8天。在一些比较固定,人口流动不大的话租期可以给长一点时间,但是如果在比如地图,图书馆,咖啡厅,餐厅一些人口流动大,需要给租期设置时间短一点,不然IP地址会很快分配完。这里我们选择默认下一步
接下来是询问是否要配置网关和DNS,如果客户端需要上网,必须要配置这些,这里选择默认下一步
接下里填写默认网关,这里填写192.168.1.1,然后点击下一步
接下里是要配置DNS,可以的看到192.168.1.204是我之前在本机配置IP的时候添加了DNS的地址,这里也出现了。上面的父域和服务器名称是获取DNS地址的。这里选择不填。然后一直下一步
配置好了之后返回去看,点击IPV4===>作用域===>地址池就可以看到地址池的IP地址分配了
接着需要测试一些DHCP,这里打开另外两条虚拟机,一台windows2012,一台windows2008作为客户端。并且需要修改这两天主机的网络模式为仅主机模式。然后点击虚拟网络编辑器。然后更改配置,选择仅主机模式,把使用本地DHCP服务器将IP地址分配给虚拟机去掉,如果不去掉这个的话是使用虚拟机的DHCP分配IP地址
DHCP服务器的IP地址是192.168.1.204,可供分配的IP地址范围是192.168.1.101-200。 网关是192.168.1.1。进来客户端之后查看网络属性,可以看到已经分配了IP地址:192.168.1.101和DNS地址 192.168.1.204。并且租期是8天!
假如有些特定的电脑需要由固定的IP地址的话,我们就必须要中地址池中排除特定的地址。进入DHCP管理工具,选择作用域,右击地址池选择新建排除范围!新建一个192.168.1.150-160的排除的地址范围,这样DHCP就不会将这些地址分配出去
添加保留地址,假如打印机是使用DHCP来进行地址分配的,如果我们需要每次给它分配的IP地址都是一样的话,我们可以使用保留地址。在作用域中可以找到保留,然后新建保留
进去之后需要填写保留地址的名称,需要保留的IP地址和MAC地址,这里的MAC地址就是打印机的MAC地址。填写好了之后点击添加即可完成
之后在PC机器上打开CMD,输入命令ipconfig /release 释放之前获取的IP地址,然后输入ipconfig /renew重新获取IP地址。重新获取之后已经变成了192.168.1.200
现在有一个场景现在又三个网络,DHCP在网络1中,由于请求DHCP需要广播报文,并且广播报文只能在同一个网络内传播,这样的话只有网络1的主机才能够获取DHCP分配的网络。解决的办法就是在路由器中开启DHCP中继代理功能,将广播报文转换为单播报文发送给DHCP服务器。并且把DHCP发送的单播报文转换为广播报文返回给客户端。 网络地址规划
DHCP:192.168.1.205
网络1:192.168.1.101-200
网络2:192.168.2.101-200
网络3:192.168.3.101-200
192.168.1.2
网关 192.168.2.2
192.168.3.2
我们需要一个安装了三块网卡的服务器作为DHCP中继代理服务器
连接网络1的网卡IP设置:192.168.1.2
连接网络2的网卡IP设置:192.168.2.2
连接网络3的网卡IP设置:192.168.3.2
修改DHCP服务器的地址,由于DHCP服务器处于网络1中,所以它的网关设置为192.168.1.2
这里配置网络1的作用域,配置地址池访问192.168.1.101-200
配置分配给客户端的网关为192.168.1.2,就是DHCP中继代理服务器了
按照之前的地址划分和之前配置DHCP的选项继续配置好其他两个网络的作用域
接下里就开始配置DHCP中继代理服务器了。首先DHCP中继代理服务器需要三张网卡,并且在三个不通的网络中。打开虚拟网络编辑器,然后点击添加 ==> 确定
接着把使用本地DHCP服务器将IP地址分配给主机选项去掉,并且依次把子网修改为192.168.1.0 、 192.168.2.0和192.168.3.0,分别对应三个网卡三个网段。那么现在就开始添加网卡
添加好网卡之后依次修改每张网卡对应的网络,选择自定义:特定虚拟网络,网卡1对应网络1,网卡2对应网络2,网卡3对应网络3。然后它们就分别分配到不同的网络
设置完成之后进入DHCP中继代理服务器,配置三张网卡的地址。分别设置为192.168.1.2、192.168.2.2、192.168.3.2。网关和DNS可以不用设置
接下里在DHCP中继代理服务器里面安装路由和远程访问服务。打开服务器管理器==>添加角色 一路下一步到服务器角色。选择远程访问
接着下一步,到角色服务这里,勾选上路由的功能,他这里会自动也添加DirectACCESS和VPN。接着就安装
安装完成之后,就可以在服务器管理工具里面找到“路由和远程访问”。点击打开它,进去之后右击计算机名可以看到配置并启用路由和远程访问
点击下一步之后选择自定义配置
接着在选择LAN路由
接着启动就可以了!
接着设置中继代理功能,点开IPV4,然后右击常规选择新增路由协议
点击进去之后会有四个选项,这里选择第一个也就是DHCP中继代理
点击完成之后会在IPV4中出现一个DHCP中继代理,右击他点击新增接口
接着会出现接口列表窗口。网络1对应的是0号接口,网络2对应的是1号接口,网络3对应的是2号接口。由于DHCP服务器在网络1里面,所以0号接口需要添加。
然后右击DHCP中继代理,选择属性,这里把DHCP的地址填入进入。这样DHCP中继代理服务器就配置完成了
接下来就可以验证DHCP中继代理了,这里需要修改PC的网卡
PC1的网络适配器修改为自定义vmnet1
PC2的网络适配器修改为自定义vmnet2
PC3的网络适配器修改为自定义vmnet3
DHCP服务器的网络适配器修改为自定义vmnet1
接着开启网络1中PC1的机器,DHCP会给它分配为192.168.1.101
开启网络2中PC2的机器获取了192.168.2.129
开启网络3中PC3的机器获取了192.168.3.101的地址
值得注意的是,由于环境配置的限制,这里是使用windows服务器来配置DHCP中继代理服务器,一般情况下都是会在路由器或者三层交换机里面配置!