计算机网络 | 思科网络 | 什么是DHCPv4

目录

一.介绍 DHCPv4

二.DHCPv4 操作

租赁发起

DHCP 发现 (DHCPDISCOVER)

DHCP 提供 (DHCPOFFER)

DHCP 请求 (DHCPREQUEST)

DHCP 确认 (DHCPACK)

租赁续约

DHCP 请求 (DHCPREQUEST)

DHCP 确认 (DHCPACK)

三.DHCPv4 消息格式

 


一.介绍 DHCPv4

DHCPv4 动态分配 IPv4 地址和其他网络配置信息。DHCPv4 服务器动态地从地址池中分配或出租 IPv4 地址,使用期限为服务器选择的一段有限时间,或者直到客户端不再需要该地址为止。客户端的租用期限由管理员确定。管理员在配置 DHCPv4 服务器时,可为其设定不同的租期届满时间。租用时间在任何地方通常都是 24 小时到一周或更长时间。租期届满后,客户端必须申请另一地址,但通常是把同一地址重新分配给客户端。

二.DHCPv4 操作

如图 1 所示,DHCPv4 在客户端/服务器模式下工作。当客户端与 DHCPv4 服务器通信时,服务器会将 IPv4 地址分配或出租给该客户端。然后客户端使用租用的 IP 地址连接到网络,直到租期届满。客户端必须定期联系 DHCP 服务器以续展租期。这种租用机制确保移动或关闭的客户端不保留它们不再需要的地址。租期届满后,DHCP 服务器会将地址返回地址池,如有必要,可将其再次分配。

租赁发起

当客户端启动时(或要连接网络),它开始进行四步过程以获取租约。如图 2 所示,客户端使用包含自己 MAC 地址的广播 DHCPDISCOVER 消息开始该过程以查找可用 DHCPv4 服务器。

DHCP 发现 (DHCPDISCOVER)

DHCPDISCOVER 消息在网络上查找 DHCPv4 服务器。由于客户端启动时没有有效的 IPv4 信息,因此,它将使用第 2 层和第 3 层广播地址与服务器通信。

DHCP 提供 (DHCPOFFER)

当 DHCPv4 服务器收到 DHCPDISCOVER 消息时,会保留一个可用 IPv4 地址以租赁给客户端。服务器还会创建一个 ARP 条目,该条目包含请求客户端的 MAC 地址和客户端的租用 IPv4 地址。如图 3 所示,DHCPv4 服务器将绑定 DHCPOFFER 消息发送到请求客户端。

DHCP 请求 (DHCPREQUEST)

如图 4 所示,当客户端从服务器收到 DHCPOFFER 时,会发回一条 DHCPREQUEST 消息。此消息用于发起租用和租约更新。用于发起租用时,将 DHCPREQUEST 用作已提供参数所选定服务器的绑定接受通知,并隐式拒绝任何其他可能已为客户端提供了绑定服务的服务器。

许多企业网络使用多台 DHCPv4 服务器。DHCPREQUEST 消息以广播的形式发送,将已接受提供的情况告知此 DHCPv4 服务器和任何其它 DHCPv4 服务器。

DHCP 确认 (DHCPACK)

如图 5 所示,收到 DHCPREQUEST 消息后,服务器使用 ICMP ping 验证该地址的租用信息以确保该地址尚未使用,为客户端租用创建新的 ARP 条目,并以 DHCPACK 消息作为回复。除消息类型字段不同外,DHCPACK 消息与 DHCPOFFER 消息别无二致。客户端收到 DHCPACK 消息后,记录下配置信息,并为所分配的地址执行 APR 查找。如果没有对 ARP 的应答,客户端就会知道 IPv4 地址是有效的,并开始像使用自己的地址一样使用该地址。

租赁续约

DHCP 请求 (DHCPREQUEST)

如图 6 所示,租期届满后,客户端将 DHCPREQUEST 消息直接发送到最初提供 IPv4 地址的 DHCPv4 服务器。如果在指定的时间内没有收到 DHCPACK,客户端会广播另一个 DHCPREQUEST,这样,另外一个 DHCPv4 服务器便可续展租期。

DHCP 确认 (DHCPACK)

如图 7 所示,收到 DHCPREQUEST 消息后,服务器通过返回一个 DHCPACK 来验证租用信息。

三.DHCPv4 消息格式

DHCPv4 消息格式用于所有 DHCPv4 事务。DHCPv4 消息封装在 UDP 传输协议中。从客户端发出的 DHCPv4 消息使用 UDP 源端口 68 和目标端口 67。从服务器发往客户端的 DHCPv4 消息使用 UDP 源端口 67 和目标端口 68。

图中显示了 DHCPv4 消息的格式。字段如下:

  • 操作 (OP) 代码 - 指定通用消息类型。1 表示请求消息,2 表示回复消息。
  • 硬件类型 - 确定网络中使用的硬件类型。例如,1 表示以太网,15 表示帧中继,20 表示串行线路。这与 ARP 消息中使用的代码相同。
  • 硬件地址长度 - 指定地址的长度。
  • 跳数 - 控制消息的转发。客户端传输请求前将其设置为 0。
  • 事务标识符 - 客户端使用事务标识符将请求和从 DHCPv4 服务器接收的应答进行匹配。
  • 秒数 - 确定从客户端开始尝试获取或更新租用以来经过的秒数。当有多个客户端请求未得到处理时,DHCPv4 服务器会使用秒数来排定应答的优先顺序。
  • 标记 - 发送请求时,不知道自己 IPv4 地址的客户端会使用标记。只使用 16 位中的一位,即广播标记。此字段中的 1 值告诉接收请求的 DHCPv4 服务器或中继代理应将应答作为广播发送。
  • 客户端 IP 地址 - 当客户端的地址有效且可用时,客户端在租约更新期间(而不是在获取地址的过程中)使用客户端 IP 地址。当且仅当客户端在绑定状态下有一个有效的 IPv4 地址时,该客户端才会将其 IPv4 地址放在此字段中,否则,它会将该字段设置为 0。
  • 您的 IP 地址 - 服务器使用该地址将 IPv4 地址分配给客户端。
  • 服务器 IP 地址 - 服务器使用该地址确定在 bootstrap 过程的下一步骤中客户端应当使用的服务器地址,它既可能是也可能不是发送该应答的服务器。发送服务器始终会把自己的 IPv4 地址放在称作“服务器标识符”DHCPv4 选项的特殊字段中。
  • 网关 IP 地址 - 涉及 DHCPv4 中继代理时会路由 DHCPv4 消息。网关地址可以帮助位于不同子网或网络的客户端与服务器之间传输 DHCPv4 请求和 DHCPv4 回复。
  • 客户端硬件地址 - 指定客户端的物理层。
  • 服务器名称 - 由发送 DHCPOFFER 或 DHCPACK 消息的服务器使用。服务器可能选择性地将其名称放在此字段中。这可以是简单的文字别名或 DNS 域名,例如 dhcpserver.netacad.net。
  • 启动文件名 - 客户端选择性地在 DHCPDISCOVER 消息中使用它来请求特定类型的启动文件。服务器在 DHCPOFFER 中使用它来完整指定启动文件目录和文件名。
  • DHCP 选项 - 容纳 DHCP 选项,包括基本 DHCP 运行所需的几个参数。此字段的长度不定。客户端与服务器均可以使用此字段。

 

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值