DHCP----动态主机配置协议
基于UDP进行封装,端口号67/68(68号端口属于客户端,而67号端口属于服务器)
报文类型
-
DHCP discover:客户端在网络中寻找DHCP服务,使用的是广播报文
-
DHCP offer:服务端回复客户端的discover报文(该报文中写嗲了网络参数)
-
DHCP request:客户端请去获取offer报文
-
DHCP ack:对request报文的确认
-
DHCP nak:对request报文的拒绝
-
DHCP release:客户端发送给服务端,邀请释放IP地址
-
DHCP inform:当客户端获取到IP地址后,使用该报文获取其他网络参数(现在不使用)
-
DHCP decline:当客户端检测到IP冲突时,告知给服务器使用
工作过程
-
首先,PC会广播发送DHCP discover报文,Server在接收到 这个广播之后,先回选择一个未分配的IP地址,
-
然后(单薄或广播)发送一个DHCP offer不报文,该报文携带了网络参数给PC
-
华为体系中,所有的网络设备均使用单播,linux使用广播,windows俩者均可
-
-
若网络中存在多个DHCP服务器,又因为discover报文是广播发送,故所有的DHCP服务器均会回复offer报文给PC端。此时,PC仅对接收到第一个offer报文进行回复,其余均丢弃
-
PC再一次使用广播发送request报文向server请求offer报文中携带的网络参数
-
request报文中有俩重意义:1 向选择的服务端请求网络参数;2 告诉其他服务器,已经有选择了
-
-
服务器接收到request报文后,若目的为本地,则发送ack报文回复;若目的不为本地,则丢弃报文
-
当存在两台PC同时请求地址,结果服务器给出的一个地址是同一个,这也就会导致后一个发送requset的保温PC无法获取地址
-
-
PC接收到ack报文后,可以使用该IP地址,但是同时PC会发送三次免费APP来检测网络中是否有其他主机使用该IP
-
如果网络中存在该IP地址,则PC向server发送DHCP decline报文来通知服务器该IP冲突,并重新发送一个DHCP discover重新申请IP地址
-
如果网络中不存在该IP地址,则直接使用该IP内容
-
-
如果PC需要释放IP地址,则发送DHCP release报文给服务端
DHCP租期
PC在申请到IP地址后,会启动下述三种计时器
-
租期更新计时器
-
华为体系中,DHCP服务器下发给PC的IP地址可用默认时长为24小时
-
当租期到达50%时,pc会单薄发送给DHCP request报文给服务器要求续租,如果服务器回复ack报文后,则租期时间刷心4小时,若服务器回复nak报文,则PC立马放弃正在使用的IP地址,重新申请,若服务器无回复,则继续使用当前IP地址,且租期时间无变化
-
-
租期绑定计时器
-
在网络中,可能会因为某些原因导致服务端没有收到或者无法回复request报文,在这种情况下,当租期重绑定计时器超时时,PC会重新广播发送DHCP discover报文,在网络上重新寻找DHCP服务器
-
如果收到回复,则刷新各类计时器,使用新的IP地址
-
如果收到了拒绝,则PC立刻停止使用现有IP地址,然后重新申请IP地址
-
-
-
租期失效计时器
-
如果PC在租约到期前都没有收到服务器响应,则PC立即停止使用IP地址,然后向服务器发送DHCP release报文
-
PC主动放弃使用分配的IP地址,此时IP会将计时器设置为超时,并删除本地的IP地址,向服务器发送DHCP release报文,主动释放IP地址
-
DHCP配置
全局配置
[DHCP server]interface gigabitEthernet 0/0/0 [DHCP servergigabitEthernet 0/0/0]ip address 192.168.1.1 24 1. 启动DHCP协议 2. [DHCP server]dhcp enable 3. 配置全局地址 [DHCP server]ip pool name----创建池塘 [DHCP server]network 192.168.1.0 mask 24---配置可分配的IP地址网段 [DHCP server]getaway-list 192.168.1.1----配置网关信息 [DHCP server]dns-list 8.8.8.8 114.114.114.114----配置dns 4. 接口调用地址 [DHCP server]interface gigabitEthernet 0/0/0 [DHCP servergigabitEthernet 0/0/0]dhcp select golbal
接口地址池配置
[DHCP server]dhcp enable
[DHCP server]interface gigabitEthernet 0/0/0
[DHCP servergigabitEthernet 0/0/0]dhcp select interface----激活接口地址池
[DHCP servergigabitEthernet 0/0/0]dhcp server dns-list 1.2.3.4----配置接口地址池中的dns