十一、DHCP

青春壹個敷衍的年華 提交于 2020-03-09 15:13:58

在大型企业网络中,会有大量的主机或设备需要获取IP地址等网络参数。如果采用手工配置,工作量大且不好管理,如果有用户擅自修改网络参数,还有可能会造成IP地址冲突等问题。使用动态主机配置协议DHCP(Dynamic Host Configuration Protocol)来分配IP地址等网络参数,可以减少管理员的工作量,避免用户手工配置网络参数时造成的地址冲突。
简单来说就是:DHCP服务器自动分配IP地址,避免地址冲突,减少网络管理员的工作量。

DHCP

应用场景

DHCP服务器能够为大量主机分配IP地址,并能够集中管理。
在这里插入图片描述
一般而言,企业及家庭网络中都会使用DHCP,例如你手机连上wifi的时候就会自动给你分配地址。过程是:

  1. 主机向DHCP服务器请求ip地址
  2. DHCP服务器发送ip地址等相关参数给主机

报文类型

在这里插入图片描述

拓扑如下:
在这里插入图片描述
此时配置了全局地址池,配置如下:
服务器端:

#
dhcp enable							//首先使能DHCP服务器
#
ip pool pool1						//创建地址池并且命名为pool1
 gateway-list 1.1.1.1 				// 设置网关
 network 1.1.1.0 mask 255.255.255.0 		//宣告网段
 lease day 3 hour 0 minute 0 			// 设置续约时间
 dns-list 8.8.8.8 				//设置dns地址
 #
interface GigabitEthernet0/0/0
 ip address 1.1.1.2 255.255.255.0 	//进入接口进行IP配置
 dhcp select global

主机端:
在这里插入图片描述
选择DHCP即可
抓取到的报文:
在这里插入图片描述
如上图所示
逐一分析:

  1. DISCOVER
    在这里插入图片描述
    discover报文中,源地址为本主机的mac地址,因为此时并未获取到ip地址,所以只包含本主机的mac地址。目标地址为广播地址,在本网络范围内查找DHCP服务器。
  2. OFFER
    在这里插入图片描述
    此时DHCP服务器接收到刚刚的广播报文,对客户端进行回复。图中目的地址和源地址已经标出,可与前面的DISCOVER报文进行对比。此时下发的是一个单播报文。
    在这里插入图片描述

在OFFER报文中携带了各种信息。如此时标出的ip地址等等。此时DHCP服务器告诉客户端:你可以使用这个ip地址,我给你这些参数。
3. REQUEST
在这里插入图片描述
此时发送的依旧是个广播包。因为客户端不确定该网络中是否只有一个DHCP服务器,所以进行广播,防止多个DHCP服务器同时与主机端发送确认信息。
4. ACK

在这里插入图片描述
服务器端对主机端确认响应。此时DHCP通过四次握手完成ip地址的分发。
在主机端查看ip:
在这里插入图片描述
此时与报文分发的参数一致。
剩下的NAK没有进行抓包,但是感兴趣的话可以试试,原理一致的。(RELEASE在下面)

工作原理

在这里插入图片描述
工作原理与前面讲的一致,通过四次握手来完成ip地址的分发。

租期更新

在这里插入图片描述
IP租约期限到达50%时,DHCP客户端会请求更新IP地址租约。如此时我的配置是3天。那么每1.5天客户端都会向服务器请求更新租约。防止到期的时候临时更新造成网络的不稳定。

重绑定

在这里插入图片描述
DHCP客户端在租约期限到达87.5%时,还没收到服务器响应,会申请重绑定IP

地址释放

在这里插入图片描述
如果IP租约到期前都没有收到服务器响应,客户端停止使用此IP地址。
如果DHCP客户端不再使用分配的IP地址,也可以主动向DHCP服务器发送DHCP RELEASE报文,释放该IP地址。
在这里插入图片描述
主机端告诉服务器端,不再使用该地址。

服务器端配置

1. DHCP全局地址池配置(与上面是一样的)

#
dhcp enable							//首先使能DHCP服务
#
ip pool pool1						//创建地址池并且命名为pool1
 gateway-list 1.1.1.1 				// 设置网关
 network 1.1.1.0 mask 255.255.255.0 		//宣告网段
 lease day 3 hour 0 minute 0 			// 设置续约时间
 dns-list 8.8.8.8 				//设置dns地址
 #
interface GigabitEthernet0/0/0
 ip address 1.1.1.2 255.255.255.0 	//进入接口进行IP配置
 dhcp select global
  1. 接口池配置
#
dhcp enable					//使能DHCP服务
#
 interface GigabitEthernet0/0/0			//进入接口
 ip address 10.1.1.1 255.255.255.0 		//配置接口ip
 dhcp select interface						//选择DHCP模式为接口模式
 dhcp server excluded-ip-address 10.1.1.2 	//除去ip地址池中不想给客户端分配的地址
 dhcp server lease day 3 hour 0 minute 0 	// 设置租约时间
 dhcp server dns-list 10.1.1.2 				// 设置dns服务器

【注】DHCP使用的是UDP协议(协议号17),端口号为67、68。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!