DHCP协议分析
一、概述
Dynamic Host Configuration Protocol,动态主机配置协议,主机通过DHCP获取ip地址,网关地址、DNS地址等信息
1. 报文类型
2. 地址池
- 接口地址池:会给连接在该接口下的本网段主机分配ip地址
- 全局地址池:给所有主机分配ip地址
- 接口地址池优先级高于全局地址池
3. 工作原理
-
主机发送广播报文找DHCP服务器
-
服务器可能有多个,当服务器A和B收到之后都会进行回复,如果主机的请求报文中携带广播标识,那么服务器A和B都以广播的形式进行回复。回复的数据包中包含ip地址、网关地址、DNS地址等信息
-
主机收到之后会进行确认,可以分为两种:
- 确认使用A作为自己的DHCP服务器
- 告诉服务器B不使用它的ip地址
-
服务器A收到主机的确认信息之后则说明主机会使用服务器A作为它的DHCP服务器,所以服务器A会回复ACK进行确认
4. 租期更新
当主机可以使用ip地址时会启动三个定时器
- ip租期到达50%时,DHCP客户端会请求更新ip地址租期
- 当服务器返回ACK时,则主机将会更新自己的租期
- 若服务器没有相应则:
- 当租期到达87.5%时,还没有收到服务器的相应,则会重新绑定ip,即重新广播发送request请求
IP地址释放:
- 如果IP租期到达前都没有收到服务器相应,客户端则停止使用此ip地址
- 客户端也可以主动向DHCP服务器发送DHCP RELEASE报文,释放该ip地址
二、基本配置
1. 实验拓扑
2. 详细配置
AR2全局地址池的配置:
- 首先配置接口的ip地址
- 启动dhcp服务:dhcp enable
- 配置地址池:ip pool [地址池名]
- 配置地址池可以分配的网段:network [ip地址] mask [掩码]
- 配置网关:gateway-list [网关地址]
- 租用期(默认为1天):lease day [数字]
- 在接口下使能dhcp服务:dhcp select global
AR2接口地址池的配置:
- 使能dhcp服务:dhcp enable
- 进入接口
- 在接口下使能dhcp服务:dhcp select interface
- 配置dns地址:dhcp server dns-list [dns服务器的地址]
- 将dns服务器的地址从可分配的地址中除去:dhcp server excluded-ip-address [ip地址]
- 设置租用期:dhcp server lease day [数字]
AR1的配置:
- 将0接口设置为中继线路模式
- 指明DHCP服务器的ip地址
注意:在所有DHCP配置结束后要给路由器配置路由信息,保证他们之间可以正常通信
三、数据包分析
在AR1的G0/0/0接口捕获数据包
-
Discover报文
-
OFFER报文
-
Request报文
-
ACK
-
Release报文
- 其他可以关注我的个人博客!不将就