0x00 汇总
DHCP在生活当中还是用的很多的,需要好好学习一下。
0x01 DHCP原理
在大型企业网络中,一般会有大量的主机等终端设备。每个终端都需要配置IP地址等网络参数才能接入网络。在小型网络中,终端数量很少,可以手动配置IP地址。但是在大中型网络中,终端数量很多,手动配置IP地址工作量大,而且配置时容易导致IP地址冲突等错误。
DHCP可以为网络终端动态分配IP地址,解决了手工配置IP地址时的各种问题。
DHCP报文
DHCP报文有不少各类,常见的几种如图下
DHCP工作原理
为了获取IP地址等配置信息,DHCP客户端需要和DHCP服务器进行报文交互。
- 首先,DHCP客户端发送DHCP发现报文来发现DHCP服务器。
- DHCP服务器会选取一个未分配的IP地址,向DHCP客户端发送DHCP提供报文。此报文中包含分配给客户端的IP地址和其他配置信息。如果存在多个DHCP服务器,每个DHCP服务器都会响应。
- 如果有多个DHCP服务器向DHCP客户端发送DHCP提供报文,DHCP客户端将会选择收到的第一个DHCP提供报文,然后发送DHCP请求报文,报文中包含请求的IP地址。
- 收到DHCP请求报文后,提供该IP地址的DHCP服务器会向DHCP客户端发送一个DHCP确认报文,包含提供的IP地址和其他配置信息。
- DHCP客户端收到DHCP确认报文后,会发送免费ARP报文,检查网络中是否有其他主机使用分配的IP地址。如果指定时间内没有收到ARP应答,DHCP客户端会使用这个IP地址。如果有主机使用该IP地址,DHCP客户端会向DHCP服务器发送DHCP拒绝报文,通知服务器该IP地址已被占用。然后DHCP客户端会向服务器重新申请一个IP地址。
DHCP租期
IP租约期限到达50%时,DHCP客户端会请求更新IP地址租约。
DHCP客户端在租约期限到达87.5%时,还没收到服务器响应,会申请重绑定IP。
如果IP租约到期前都没有收到服务器响应,客户端停止使用此IP地址。
如果DHCP客户端不再使用分配的IP地址,也可以主动向DHCP服务器发送DHCP RELEASE报文,释放该IP地址。
0x02 DHCP配置
华为设备有两种配置方法可以配置DHCP,一种是在开局配置地址池,另外一种则是可以在接口上配置地址池。
配置思路总结如下:
- 全局开启dhcp功能。
- 配置地址池
地址池当中包括IP地址,掩码,DNS等等相关信息。
如果是基于接口的地址池,则不需要配置IP地址信息,使用接口同网段的信息进行分配。 - 在接口使能dhcp功能。