DHCP服务的配置与管理(1)DHCP协议原理

简介:

DHCP动态主机配置协议,作用大家应该都知道,用DHCP可以自动为网络中的计算机分配IP地址及TCP/IP设置,优点是可以提高IP地址的利用率,减少IP地址的管理工作量。

网络中到底是否需要使用DHCP服务,需要的话怎样配置才更为合理,51cto论坛中近期正好有一个相关热帖,大家可以参考一下。http://bbs.51cto.com/viewthread.php?tid=1013632&extra=&page=1

 在开始学习如何配置DHCP服务之前,我们需要先来了解DHCP协议的工作原理。

DHCP是基于客户端/服务器模型设计的,DHCP协议使用端口UDP 67(服务器端)和UDP 68(客户端)进行通信,并且大部分DHCP协议通信以广播方式进行。
 
1. DHCP租约过程

DHCP客户端首次启动时,会自动执行初始化过程以便从DHCP服务器获得IP地址,获取IP地址的过程大致分为四个不同的阶段,分别如下:
(1)IP租用请求。当客户端计算机被设置为“自动获取IP地址”时,这样当它首次启动时会向网络中发送一个名为DHCPdiscover的广播消息,以寻找DHCP服务器。因为此时客户端计算机还不知道自己属于哪个网络,所以这个数据包的源地址为0.0.0.0,目标地址为255.255.255.255。
(2)IP租用提供。当DHCP服务器收到DHCPdiscover数据包后,会从地址池中找出第一个未被分配的IP地址利用广播的方式发送回客户端,这个数据包称为DHCPoffer数据包。由于DHCP客户端没有IP地址,所以DHCP服务器同样使用广播进行通信:源IP地址为DHCP服务器的IP地址,目前IP地址为255.255.255.255。
(3)IP租用选择。如果网络中存在多台DHCP服务器,那客户机可能从不止一台DHCP服务器收到DHCPoffer消息。客户机只选择最先到达的DHCPoffer,并向这台DHCP服务器发送DHCPrequest消息。DHCPrequest消息中包含了DHCP客户端的MAC地址、接受的租约中的IP地址、提供此租约的DHCP服务器地址等,其它的DHCP服务器将收回它们为此DHCP客户端所保留的IP地址租约,以给其它DHCP客户端使用。此时由于没有得到DHCP服务器最后确认,DHCP客户端仍然不能使用租约中提供的IP地址,所以DHCPrequest消息仍然是一个广播数据包,源IP地址为0.0.0.0,目的IP为广播地址255.255.255.255。
(4)IP租用确认。服务器接收到客户端发来的DHCPrequest消息后,首先将刚才所提供的IP地址标记为已租用,然后向客户机发送一个确认(DHCPack)广播信息,信息中包括之前发送的IP地址、子网掩码、默认网关、DNS服务器地址,以及一个IP地址的租约期限。

2. DHCP租约更新

客户机在获得IP地址的同时要与服务器之间签订一个租约,租约期限一般默认是8天,DHCP客户端必须在租约过期前对它进行更新。
客户端在租约期过了1/2时,就会向服务器发出DHCPRquest包请求更新当前租约,如果DHCP服务器应答则租约延期。如果服务器始终没有应答,则在租期过了7/8时,客户端将再次发出DHCPRquest包请求更新租约,如果仍然无法得到DHCP服务器的响应,那客户机将放弃当前的IP地址,并重新发送DHCPdiscover广播包,开始新一轮的申请过程。

3. DHCP服务器的授权

目前绝大多数的无线路由器都带有DHCP的功能,而且默认是自动开启的,只要将这样的无线路由器接入到网络中,那就相当于在网络中私自架设了一台DHCP服务器。如果任何用户都可以随意安装DHCP服务器,且其所租出的IP地址是随意设置的,则当有客户端在向DHCP服务器租用IP地址时,很可能就会由这台非法的DHCP服务器来提供IP地址给客户端,从而导致客户端使用了错误IP而无法连接网络,同时也会增加系统管理员的管理负担。
因此在Windows系统中提供了一种授权机制,以防止这种非法接入DHCP服务器的行为。所谓授权,也就是说当DHCP服务器安装好以后,并不能立刻就为客户端提供服务,它还必须经过一个“授权”的程序,未经授权的DHCP服务器不会将IP地址租出给DHCP客户端。
只有在域环境中DHCP服务器才可以被授权,也就是说DHCP服务器必须要加入域成为域的成员服务器。
不是域成员的DHCP独立服务器无法被授权,那这样的服务器是否可以正常启动并为客户端分配IP地址呢?这要视同一个子网内,是否存在任意一台已被授权的DHCP服务器而定。这台独立DHCP服务器在启动DHCP服务时,会检测子网内是否存在已被授权的DHCP服务器。如果有,那它就不会启动DHCP服务;如果没有,那它就可以正常启动DHCP服务,并为客户端提供IP地址。

本文转自 yttitan 51CTO博客,原文链接:http://blog.51cto.com/yttitan/1160049
相关文章
|
5月前
|
安全 网络协议 网络安全
Cisco-DHCP配置
Cisco-DHCP配置
119 3
|
1月前
|
域名解析 网络协议 Ubuntu
DHCP与DNS的配置
通过这些步骤,您可以在Linux环境下成功配置和验证DHCP和DNS服务。希望这些内容对您的学习和工作有所帮助。
101 27
|
5月前
|
安全 小程序 网络安全
Cisco-DHCP中继配置
Cisco-DHCP中继配置
148 4
|
5月前
|
网络协议 网络虚拟化 网络架构
【网络实验】/主机/路由器/交换机/网关/路由协议/RIP+OSPF/DHCP(上)
【网络实验】/主机/路由器/交换机/网关/路由协议/RIP+OSPF/DHCP(上)
115 1
|
6月前
|
Linux
kickstart自动安装系统 --DHCP 配置及测试
PXE+Kickstart自动安装系统需配置DHCP服务器分配IP。dhcpd.conf示例:设置更新样式、忽略客户端更新、指定下一服务器及启动文件。定义子网、网关、掩码、动态地址池并预留特定MAC地址。重启xinetd、NFS、DHCP服务,确保新服务器与Kickstart服务器在同一网络,避免误装其他机器。注意隔离测试网络以防干扰生产环境。
104 18
|
5月前
|
网络协议 数据安全/隐私保护 网络虚拟化
【网络实验】/主机/路由器/交换机/网关/路由协议/RIP+OSPF/DHCP(下)
【网络实验】/主机/路由器/交换机/网关/路由协议/RIP+OSPF/DHCP(下)
108 0
|
7月前
|
安全 Ubuntu 网络协议
在Linux中,如何配置DHCP服务器?
在Linux中,如何配置DHCP服务器?
|
7月前
|
监控 安全 网络协议
DHCP 协议及其优缺点
【8月更文挑战第20天】
508 0
|
10月前
|
监控 安全 网络协议
|
9月前
|
Ubuntu
ubuntu 开启dhcp服务并配置
ubuntu 开启dhcp服务并配置
443 2