一、配置信息
- 概念:为了使用TCP/IP协议族,每台主机和路由器需要一定的配置信息
- 配置信息用于为系统指定本地名称,以及为接口指定标识符(例如IP地址)。它还用于提供或使用备种网络服务,例如域名系统(DNS)和移动IP家乡代理
为了使一台Internet主机拥有这些基本配置信息,可以通过以下的方式获取:
- 动态主机配置协议(DHCP)
- IPv4和IPv6中的无状态地址自动配置
二、DHCP简介
- 功能:DHCP是一种流行的客户机/服务器协议,它用于为主机(有时也为路由器)指定配置信息
- DHCP为设备提供IP地址、子网掩码、 路由器的IP地址、 DNS服务器的IP地址。其他服务的相关信息(例如使用VoIP的SIP服务器)也可通过DHCP传输
- DHCP只供IPv4使用
- DHCP协议采用客户端/服务器模型,主机地址的动态分配任务由网络主机驱动。当DHCP服务器接收到来自网络主机申请地址的信息时,才会向网络主机发送相关的地址配置等信息,以实现网络主机地址信息的动态配置。
DHCP具有以下功能:
- 保证任何IP地址在同一时刻只能由一台DHCP客户机所使用
- DHCP应当可以给用户分配永久固定的IP地址
- DHCP应当可以同用其他方法获得IP地址的主机共存(如手工配置IP地址的主机)
- DHCP服务器应当向现有的BOOTP客户端提供服务
应用场景:
- DHCP在企业和家庭网络中广泛使用,甚至最基础的家庭路由器设备都支持嵌人式DHCP服务器
- 几乎所有常用的客户端操作系统和大量的嵌人式设备(例如网络打印机和VoIP电话)都支持DHCP客户机
DHCPv6:
- 由于DHCP的最初设想是供IPv4使用
- IPv6使用的DHCP版本是DHCPv6。但IPv6还支持自已的自动程序来确定配置信息, 在一种混合配置模式中,IPv6自动配置和DHCPv6可结合使用
三、DHCP协议的实现(对BOOTP协议的扩展)
- DHCP的设计基于一种早期协议一称为Internet引导程序协议( BOOTP) ,BOOTP目前已过时
- 过时的BOOTP为客户提供有限的配置信息,并且没有提供一种机制来支持改变已提供的信息
- DHCP协议采用UDP作为传输协议,主机发送请求消息到DHCP服务器的68号端口,DHCP服务器回应应答消息给主机的67号端口
租用的概念:
- DHCP使用租用的概念来扩展BOOTP模型,并且可提供主机操作所需的所有信息
- 租用允许客户机使用一个商定的时间来配置信息。客户机可向DHCP服务器请求续订租约,并继续操作
- DHCP与BOOTP协议的兼容性:BOOTP和DHCP是向后兼容的,纯BOOTP客户端可使用DHCP服务器,DHCP客户端也可使用纯BOOTP服务器。因此,BOOTP和DHCP同样使用UDP/IP 。客户机使用端口68,服务器使用端口67
四、DHCP客户端、服务端、中继代理
DHCP客户端:
在支持DHCP功能的网络设备上将指定的端口作为DHCP Client,通过DHCP协议从DHCP Server动态获取IP地址等信息,来实现设备的集中管理。一般应用于网络设备的网络管理接口上
DHCP客户端可以带来如下好处:
降低了配置和部署设备时间。
降低了发生配置错误的可能性。
可以集中化管理设备的IP地址分配
DHCP服务端:
DHCP中继代理:
- DHCPRelay(DHCPR)DHCP中继 也叫做DHCP中继代理。DHCP中继代理,就是在DHCP服务器和客户端之间转发DHCP数据包。当DHCP客户端与服务器不在同一个子网上,就必须有DHCP中继代理来转发DHCP请求和应答消息。DHCP中继代理的数据转发,与通常路由转发是不同的,通常的路由转发相对来说是透明传输的,设备一般不会修改IP包内容。而DHCP中继代理接收到DHCP消息后,重新生成一个DHCP消息,然后转发出去。
- 在DHCP客户端看来,DHCP中继代理就像DHCP服务器;在DHCP服务器看来,DHCP中继代理就像DHCP客户端
五、DHCP分配地址的3种方式
三者之间的差异是地址分配是否基于客户机的身份,以及该地址是否可撤销或变更
- 自动分配:DHCP服务器为主机指定一个永久性的IP地址,一旦DHCP客户端第一次成功从DHCP服务器端租用到IP地址后,就可以永久性的使用该地址。该地不可撤销
- 动态分配:(最常用)DHCP服务器给主机指定一个具有时间限制的IP地址,时间到期或主机明确表示放弃该地址时,该地址可以被其他主机使用
- 手动分配:客户端的IP地址是由网络管理员指定的,DHCP服务器只是将指定的IP地址告诉客户端主机。地址对于请求的客户机是不变的(即它不是由服务器维护的可分配池的一部分)。在这种模式下,DHCP的作用如同BOOTP
六、DHCP动态分配
- 地址池:在动态分配中,DHCP客户机请求分配一个IP地址。服务器从可用的地址池中选择一 个地址作为响应。在通常情况下,这个池是专门为DHCP用途而分配的一个连续的IP地址 范围
- 租用期:分配给客户机的地址只在一段特定时间内有效,这段时间称为租用期
- 租用期的延长:当租用期到期之后,客户机可以提出延长租用期的要求并续订租约
租用期概念扩展:
- 租用期是DHCP服务器的一个重要配置参数
- 租用期范围可从几分钟到几天或更长时间 ( “无限”是可能的,但不推荐这样做,除非是简单的网络)
- 性能:确定租用期的最佳数值需要对预期客户数、地址池大小和地址稳定性等因素加以权衡。较长的租用期通常会较快耗尽可用 的地址池,但能提供更稳定的地址和减小网络开销(因为续租请求较少)。较短的租用期可为其他客户提供可用性更高的地址池,随之而来的是稳定性减小和网络流量负荷增大
- 常见的默认值包括12 - 24小时,取决于使用的DHCP服务器。例如,微软建议较小的网络采用8天,较大的网络采用16 - 24天。客户机在租用期过半时开始尝试续订租约
动态分配的过程:
- 当发送DHCP请求时,客户机需要向服务器提供信息。这些信息可包括客户机名称、请求的租用期、已使用或最后使用过的地址副本和其他参数
- 当服务器接收到这个请求时, 可利用客户机提供的信息(包括MAC地址请求),结合其他从外部获得的信息(例如一天的时间、接收请求的接口),决定在响应中提供的地址和配置信息
- 当服务器向客户机提供租用期时,服务器将租用信息保存在持久性存储器中,通常是非易失性内存或磁盘中。如果DHCP服务器重新启动并且运行良好,租约将保持完好