DHCP是什么?
-
Dynamic Host configuration protocol:动态主机配置协议;向主机动态分配IP地址以及其他相关信息
-
采用C/S模式,服务器集中管理,客户端向服务器提出配置申请,服务器根据策略返回响应配置信息
-
DHCP采用UDP封装,服务器侦听的端口号67,客户端侦听端口号68
-
特点: 有即插即用,统一管理,使用效率高(IP地址租期管理),可跨网段实现(dhcp中继)的特点
-
组成: 一般由DHCP服务器,DHCP客户端,DHCP中继组成
DHCP 的工作流程,DHCP 服务器和 DHCP 客户端在同一个广播域的场景
-
(先回答四个报文交互,再回答冲突检测,分开答)
-
有四个阶段,分别为发现阶段,提供阶段,选择阶段和确认阶段
-
发现阶段:客户端寻找服务端阶段;广播方式发送DISCOVER报文
-
提供阶段:服务器提供IP地址阶段;DHCP 服务器收到消息后,会从地址池中取出一个IP 地址,然后先发送一个ARP 解析进行地址的冲突检测,如果没有回应,则以广播形式(有些操作系统则是以单播回应)回应一个Offer报文给客户端,该 Offer 报文携带服务器要为该客户端分配的IP 地址
-
选择阶段:DHCP客户端选择IP地址阶段;如果有多台DHCP服务器向该客户端发offer报文,客户端只接受第一个收到的offer包,然后广播发送REQUEST报文,该报文包含DHCP服务器在offer报文中分配的IP地址
-
确认阶段:DHCP服务器确认IP地址阶段;DHCP 服务器收到REQUEST报文后,最后广播回应(有些操作系统则是以单播回应)一个 ACK报文,确认分配该地址,并将该IP地址从 DHCP 地址池中移除;如果否则返回NAK,表明该地址不能分配
-
-
IP地址拒绝及释放
-
客户端收到ACK报文后会发送免费ARP报文再次进行地址的冲突检测,目的地址为DHCP服务器指定分配的IP地址;
-
如果该地址没有被使用,客户端会使用该地址配置完毕
-
如果探测到被分配使用,客户端发送Decline报文,表明拒绝该地址,重新开始DHCP
-
-
当客户端选择放弃IP地址或租期时,向服务器发送DHCP Release报文
-
-
DHCP 服务器是如何区分不同的 DHCP 客户端
-
客户端向服务端发送请求时,会在数据报的CHADDR字段中填入自己的硬件地址(MAC地址),DHCP 服务器接收到请求后,会记录下该请求对应的 MAC 地址,并在后续为该客户端分配 IP 地址等网络配置信息时,将这些配置与该 MAC 地址绑定。当该客户端再次请求网络配置更新或续租时,DHCP 服务器就可以通过 MAC 地址识别出是哪个客户端。
-
CHADDR 是 Client Hardware Address,即客户端的 MAC 地址
-
-
如果 DHCP 服务器上有多个地址池,是如何判断将哪个地址池的地址分配给客户端?
-
根据接收到 Discover 报文接口的 IP 地址来判断,会从与接收接口IP 地址同一个网段的地址池分配地址
-
-
主机已经拿到了地址,重新拔插后还是原来的地址吗?
-
主要取决于租约状态
-
租期内:重新连接后主机会发送 DHCP Request 报文,请求继续使用原来的 IP 地址。由于在租期内,DHCP 服务器会回应 DHCP ACK 报文,确认主机可以继续使用该 IP 地址
-
租期临近但未超期: 主机会向为其提供 IP 地址的 DHCP 服务器单播 DHCP Request 报文进行续租请求。如果此时服务器正常工作且该 IP 地址未被其他设备占用,服务器会回应 DHCP ACK 报文,批准续租
-
租期超期:若租约期限已过,主机没有成功续租(比如 DHCP 服务器故障等原因),那么在重新拔插网络连接线后,主机需要重新开始 DHCP 流程此时就不一定是原来的 IP 地址了;
-
DHCP Request 为什么还得是广播
-
当网络中存在多个 DHCP 服务器的情况下,通过发送广播报文可以告知网络中的 DHCP 服务器,该客户机使用哪个服务器提供的IP 地址。
-
除了通过 DHCP Request 表明要使用该地址之外,DHCP Request 还有什么作用
-
可以使用 DHCP Request 来执行续租
-
DHCP 服务器如何判断使用广播还是单播回复给客户端
-
主要根据 DHCP Discover 报文中的 bootp flags 字段。
-
如果 DHCP Discover 报文中 bootp fags =1 则服务器通过广播来和客户端交互。如果 bootp flags=0 则服务器通过单播来和客户端交互。
DHCP中继的作用
-
DHCP中继功能:客户端通过DHCP中继与其他子网中DHCP服务器通信获取IP地址
-
优点:优点:多个客户端使用一个DHCP服务器,方便集中管理,节省成本
DHCP 中继的工作原理,DHCP 服务器和 DHCP 客户端不在同一个广播域的场景
-
DHCP 服务器需要跨广播域分配IP地址时,需要在客户端的网关路由器上配置 DHCP 中继,开启中继后工作流程如下工作流程:
-
客户端发送Discover报文:客户端广播发送DHCP Discover报文,会被中继路由器收到(因为不知道服务器的具体地址,所以广播发送)
-
中继路由器转换并发送报文:中继路由器接收到客户端的 DHCP Discover 广播报文后,会将其转换成单播形式,单播发送给DHCP服务器。(在转换后的单播报文中,数据包的源地址是中继路由器去往 DHCP 服务器的出接口 IP 地址,数据包的目标地址则是 DHCP 服务器的 IP 地址)
其中DHCP Discover 包中的 Relay agent IP address(中继代理 IP 地址,也就是 giaddr)字段会被填充为中继路由器收到 DHCP Discover 报文的接口 IP 地址。(它用于告诉 DHCP 服务器客户端是在哪个子网发出的请求,以便 DHCP 服务器判断应该从哪个 DHCP 地址池中
-

最低0.47元/天 解锁文章
2278

被折叠的 条评论
为什么被折叠?



