设为首页收藏本站language→→ 语言切换

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 2635|回复: 7
收起左侧

[分享] DHCP工作流程

[复制链接]
 成长值: 62350
发表于 2017-11-3 14:58:53 | 显示全部楼层 |阅读模式


思科知识点汇总贴
http://bbs.hh010.com/thread-529979-1-1.html
(出处: 鸿鹄论坛)


DHCP
工作流程
DHCP
服务的工作流程是这样的:
1. Discover
发现阶段(广播)
DHCP Clinet寻找DHCP Server的阶段。DHCP Clinet以广播方式(因为DHCP ServerIP地址对于客户机来说是未知的)发送DHCP discover发现信息来寻找DHCP Server,即向地址255.255.255.255发送特定的广播信息(源IP地址为0.0.0.0)。网络上每一台安装了TCP/IP协议的主机都会接收到这种广播信息,但只有DHCP Server才会做出响应(如图1)。
1.jpg
2.Offer提供阶段(广播)
DHCP Server提供IP地址的阶段。此广播域中接收到DHCP discover发现信息的DHCP Server都会做出响应,它们从尚未出租的IP地址中挑选一个分配给DHCP Clinet,向DHCP Clinet发送一个包含出租的IP地址和其他参数的DHCP offer提供信息。此时的DHCP Clinet还未分配到IP地址,所以DHCP offer信息依然用广播的方式发送(如图2)。
2.jpg
3.Request选择阶段(广播)
DHCP Clinet选择某台DHCP Server提供的IP地址的阶段。如果有多台DHCP ServerDHCP Clinet发来DHCP offer提供信息,则DHCP Clinet只接受第一个收到的DHCP offer提供信息,然后它就以广播方式回答一个DHCP request请求信息,该信息中包含向它所选定的DHCP Server请求IP地址的内容。之所以要以广播方式回答,是为了通知所有的DHCP Server,他将选择某台DHCP Server所提供的IP地址(如图3)。
3.jpg
4.Ack确认阶段(广播)
DHCP Server确认所提供的IP地址的阶段。当DHCP Server收到DHCP Clinet回答的DHCP request请求信息之后,它便向DHCP Clinet发送一个包含它所提供的IP地址和其他参数的DHCP ack确认信息,告诉DHCP Clinet可以使用它所提供的IP地址。然后DHCP Clinet便将其TCP/IP协议与网卡绑定,另外,除DHCP Clinet选中的DHCP Server外,其他的DHCP Server都将收回曾提供的IP地址。
5.
重新登录(单播)
以后DHCP Clinet每次重新登录网络时,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。当DHCP Server收到这一信息后,它会尝试让DHCP Clinet继续使用原来的IP地址,并回答一个DHCP ack确认信息。如果此IP地址已无法再分配给原来的DHCP Clinet使用时(比如此IP地址已分配给其它DHCP Clinet使用),则DHCP ServerDHCP Clinet答一个DHCP nack否认信息。当原来的DHCP Clinet收到此DHCP nack否认信息后,它就必须重新发送DHCP discover发现信息来请求新的IP地址。
6.
更新租约
DHCP ServerDHCP Clinet出租的IP地址一般都有一个租借期限,期满后DHCP Server便会收回出租的IP地址。如果DHCP Clinet要延长其IP租约,则必须更新其IP租约。
DHCP Clinet启动和IP租约期限过50%时,DHCP Clinet都会主动向DHCP Server发送DHCP request来更新其IP租约。使用单播发送。
若步骤中更新租约失败。DHCP Clinet将在IP租约期限过87.5%时,再次发出DHCP request消息。不过这次的目标是广播域中所有的DHCP Server,所以使用的是广播发送。

二、Cisco设备的DHCP配置(路由器、三层交换机)
1.DHCP Client
router(config-if)# ip add dhcp     #配置此接口下通过DHCP来获取IP信息
2.DHCP Server
router(config)#service dhcp     #开启DHCP服务(Cisco设备缺省已经开启DHCP服务)
router(config)#ip dhcp excluded-address 10.1.1.1 10.1.1.252     #将这些范围的地址排除在可分配地址池之外
router(config)#ip dhcp pool pool_name     #创建一次可供分配的DHCP地址池,并取名
router(dhcp-config)#network A.B.C.D /mask     #指定这个地址池的IP地址范围,格式为network /mask
router(dhcp-config)#default-router A.B.C.D     #指定网络中的默认网关地址
router(dhcp-config)#dns-server A.B.C.D     #指定一个DNS服务器地址
router(dhcp-config)#netbios-name-server A.B.C.D     #通常为企业网络中的一台WINS服务器
3.IP广播转发
IP广播转发特性不仅能够支持DHCP,并且能够转发任何的UDP广播数据。
DHCP中继代理
R1_Client_f0/0 <----------------> (f0/0)_R2<_(f0/1) ------------------> f0/1_R3_Server
R1:
R1(config)#int f0/0
R1(config-if)# ip add dhcp
R1(config-if)# no sh
R2:
R2(config)#int f0/0
R2(config-if)#ip 192.168.1.1 255.255.255.0
R2(config-if)# ip helper-address 10.1.1.2
#
DHCP ServerDHCP Clinet不在同一个广播域中,因为三层设备默认是不转发广播数据包的,所以我们可以通过配置本广播域路由设备的中继功能使得此路由设备能够将DCHP的广播包转成单播包后再发送给远端的DHCP Server。如果存在多台DHCP服务器,那么就重复使用ip helper-address命令来指定服务器的位置。需要注意的是,这个命令应该在接收到DHCP广播包的接口下进行该配置。
R2(config-if)# no sh
R2(config)# int f0/1
R2(config-if)# ip add 10.1.1.1 255.255.255.0
R2(config-if)# no sh
R2(config)#no ip forward-protocol udp netbios-ns
#
配置路由器禁止转发NetBIOS名称服务器的UDP广播。在默认情况下使用命令ip helper-address后,将不仅能够转发DHCPUDP数据包,而且还能够转发TFTP/69DNS/53、时间/37NetBIOS/137/138、名称服务器/42等服务的UDP数据包,如果我们不希望转发这些广播包就需要配置此命令来禁止这种行为。
R3:
R3(config)# int f0/1
R3(config-if)# ip add 10.1.1.2 255.255.255.0
R3(config-if)# no sh
R3(config)# ip dhcp excluded-address 192.168.1.1 192.168.1.20
R3(config)#ip dhcp pool YSH
R3(dhcp-config)# network 192.168.1.0 /24
R3(config)#ip route 192.168.1.0 255.255.255.0 10.1.1.1          #需要注意的是DHCP_Server设备需要有到达接收DHCP广播包的接口的路由。
4.检查
router#show ip dhcp bingding     #查看DHCP Server分配出去的IP地址及租期等
router#show ip dhcp server statistics     #查看DHCP Server报文统计信息
router#debug ip dhcp server events     #查看DHCP Server事件信息

发表于 2017-11-3 22:58:04 | 显示全部楼层
感谢楼主分享!
板凳 2017-11-3 22:58:04 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2018-6-29 16:34:00 | 显示全部楼层
感谢楼主分享!
7# 2018-6-29 16:34:00 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2020-7-25 18:49:52 | 显示全部楼层
感谢小乔分享
8# 2020-7-25 18:49:52 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2024-11-24 21:14 , Processed in 0.334601 second(s), 13 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

快速回复 返回顶部 返回列表