首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

DHCP

简介
DHCP(Dynamic Host Configuration Protocol动态主机配置协议)是为客户端动态分配IP地址的方法,服务器能够从预先设置的IP地址池里自动给主机分配IP地址。它不仅能够保证IP地址不重复分配,也能及时回收IP地址以提高IP地址的利用率。DHCP具有可伸缩性,相对容易管理。DHCP包括3种不同的地址分配机制:
手动分配:管理员为客户端指定预分配的IP地址,DHCP只将该IP地址传送给设备。
自动分配:DHCP从可用地址池中选择静态IP地址,自动将它永久性地分配给设备,不存在租期问题。
动态分配:DHCP自动动态地从地址池中分配或出租IP地址,使用期限为服务器选择的租借期限,或者直到客户
  端告知DHCP服务器其不再需要该地址为止。
DHCP的工作过程:
①发现阶段:即DHCP客户端寻找DHCP服务器的阶段。DHCP客户端以广播方式(因为DHCP服务器的IP地址对于客户
  端来说是未知的)发送DHCPDISCOVER信息来寻找DHCP服务器。网络上每一台安装了TCP/IP协议的主机都会接收
  到这种广播信息,但只有DHCP服务器才会做出响应。
②提供阶段:DHCP服务器提供IP地址的阶段。在网络中,接收到DHCPDISCOVER信息的DHCP服务器都会做出响
应,它从尚未分配的IP地址中挑选一个分配给DHCP客户端,向DHCP客户端发送一个包含分配的IP地址和其它设
  置的DHCPOFFER信息。
③选择阶段:DHCP客户端选择某台DHCP服务器提供的IP地址的阶段。如果有多台DHCP服务器向DHCP客户端发送
DHCPOFFER信息,则DHCP客户端只接受第一个收到的DHCPOFFER信息,然后它以广播方式回答一个DHCPREQUEST
信息,该信息中包含它所选定的DHCP服务器请求IP地址的内容,之所以要以广播方式回答,是为了通知所有的
  DHCP服务器,它将选择某台DHCP服务器所提供的IP地址。
④确认阶段:即DHCP服务器确认所提供的IP地址的阶段。当DHCP服务器收到DHCP客户端回答的DHCPREQUEST信息
之后,他便向DHCP客户端发送一个包含它所提供的IP地址和其它设置的DHCPACK信息,告诉DHCP客户端可以使
用它所提供的IP地址,然后DHCP客户端便将其TCP/IP协议与网卡绑定。另外,除DHCP客户端选中的服务器外,
  其它的DHCP服务器都将收回曾提供的IP地址。
⑤重新登录:以后DHCP客户端每次重新登录网络时,就不需要再发送DHCPDISCOVER信息了,而是直接发送包含
  前一次所分配的IP地址的DHCPREQUEST信息。当DHCP服务器收到这一信息后,它将尝试让DHCP客户端继续使用
  原来的IP地址,并回答一个DHCPACK信息。如果此IP地址已无法再分配原来的DHCP客户端使用时(比如IP地址已
分配给其它DHCP客户端使用),则DHCP服务器给DHCP客户端回答一个DHCPNACK信息。当原来的DHCP客户端收到
  此DHCPNACK信息后,它将必须重新发送DHCPDISCOVER信息来请求新的IP地址。
⑥更新租约:DHCP服务器向DHCP客户端出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租
的IP地址。如果DHCP客户端要延长其IP租约,则必须更新其IP租约。DHCP客户端启动时间为租约期限的50%
时,DHCP客户端都会自动向DHCP服务器发送更新其IP租约的信息。如果DHCP服务器应答,则租用延期;如果
DHCP服务器始终没有应答,在有效租借期的87.5%,客户应该与任何一个其它的DHCP服务器通信,并请求更新
它的配置信息。如果客户端不能和所有的DHCP服务器取得联系,租借时间到后,它必须放弃当前的IP地址并重
  新发送一个DHCPDISCOVER信息开始上述的IP地址获得过程。当然,客户端可以主动向服务器发出DHCPRELEASE
  信息,将当前的IP地址释放。
DHCP数据包的格式

OP 代码:1表示是Client的请求,2表示是Server的应答。
HTYPE硬件类型:网络中使用的硬件类型,如:1表示以太网、15表示帧中继、20表示串行线路等。
HLEN 硬件地址长度:指硬件地址的长度。
HOPS 跳数:当前的DHCP数据包经过的DHCPRELAY(中继)的数目,每经过一个DHCP中继,此字段就会加1,此字
  段的作用是限制DHCP数据包不要经过太多的DHCP延时。
TRANSACTION ID事物ID:由客户端产生的32位标识符,用来将请求与从DHCP服务器收到的回复进行匹配。
SECONDS秒数:从客户端开始尝试获取或更新租用以来经过的秒数。当有多个客户端请求未得到处理时,繁忙
  的DHCP服务器使用此数值来排定回复的优先顺序。
FLAGS 标志:只使用16位中的左边的最高位,代表广播标志。
ciaddr客户端IP地址:当且仅当客户端有一个有效地IP地址且处于绑定状态时,客户端才将自己的IP地址放
  在这个字段中,否则客户端设置此字段为0。
yiaddr 你的IP地址:服务器分配给客户端的IP地址。
siaddr 服务器IP地址:用于bootstrap过程中的IP地址。
giaddr网关IP地址:当涉及DHCP中继代理时,路由DHCP消息的IP地址。网关地址可以帮助位于不同子网或网
  络的客户端与服务器之间传输DHCP请求和DHCP回复。
chaddr 客户端硬件地址:客户端的物理层地址。
sname服务器名称:发送DHCPOFFER或DHCPACK消息的服务器可以选择性地将其名称放在此字段中。
file启动文件名:客户端选择性地在DHCPDISCOVER消息中使用它来请求特定类型的启动文件。服务器在DHCP中
  使用它来完整指定启动文件目录和文件名。
OptionsDHCP选项:容纳DHCP选项,包括基本DHCP运作所需的几个参数。此字段的长度不定,最长312字节,
  客户端与服务器均可以使用此字段。

DHCP配置
路由器R1是DHCP服务器,负责向PC1和PC2所在网络的主机动态分配IP地址,所以在R1上需要定义了两个地址池,试验中定义的第三个地址池POOL_3为DHCP静态IP地址配置方法。整个网络运行RIPv2协议。

配置IP地址及路由:
R1(config)#int s1/0
R1(config-if)#ip add 172.16.12.1255.255.255.0
R1(config-if)#clock rate 64000
R1(config-if)#no sh
R1(config)#int f0/0
R1(config-if)#ip add 172.16.1.1255.255.255.0
R1(config-if)#no sh
R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#noauto-summary
R1(config-router)#network172.16.0.0
R2(config)#int s1/0
R2(config-if)#ip add 172.16.12.2255.255.255.0
R2(config-if)#no sh
R2(config)#int f0/0
R2(config-if)#ip add 172.16.2.1255.255.255.0
R2(config-if)#no sh
R2(config)#router rip
R2(config-router)#version 2
R2(config-router)#noauto-summary
R2(config-router)#network172.16.0.0
继承事业,薪火相传
返回列表