概要
动态主机配置协议(DHCP)是RFC1541(由RFC2131替代)定义的标准协议,该协议允许服务器向客户端动态分配IP地址和配置信息。通常,DHCP服务器服务器至少给客户端提供以下基本信息:
IP地址
子网掩码
默认网关
它还可以提供其它信息,如域名服务(DNS)服务器地址和WindowsInternet命名服务(WINS)服务器地址。系统管理员配置DHCP服务器分配给客户端的选项。
更多信息
以下Microsoft产品提供DHCP客户端功能:
WindowsNTServer3.5、3.51和4.0
WindowsNTWorkstation3.5、3.51和4.0
Windows95
MicrosoftNetworkClient3.0forMS-DOS
MicrosoftLANManagerClient2.2cforMS-DOS
MicrosoftTCP/IP-32forWindowsforWorkgroups3.11、3.11a和3.11b
DHCP客户端可以接收来自DHCP服务器的选项,而不同的DHCP客户端支持不同的这些选项。有关MicrosoftDHCP客户端所支持的特定DHCP选项的信息,请参见MicrosoftKnowledgeBase中以下文章:
Q121005受客户端支持的DHCP选项
以下Microsoft服务器操作系统提供DHCP服务器功能:
WindowsNTServer3.5
WindowsNTServer3.51
WindowsNTServer4.0
当客户端被配置为接收DHCP信息后首次初始化时,它将启动一个与服务器的对话。
以下是客户端和服务器之间对话的汇总表,后面是数据包级的过程说明:
SourceDestSourceDestPacket
MACaddrMACaddrIPaddrIPaddrDescription
------------------------------------------------
ClientBroadcast0.0.0.0255.255.255.255DHCPDiscover
DHCPsrvrBroadcastDHCPsrvr255.255.255.255DHCPOffer
ClientBroadcast0.0.0.0255.255.255.255DHCPRequest
DHCPsrvrBroadcastDHCPsrvr255.255.255.255DHCPACK
DHCP客户端和DHCP服务器之间的详细对话如下:
DHCPDISCOVER
客户端发送DHCPDISCOVER数据包。以下内容摘自网络监视器的捕获信息,显示了DHCPDISCOVER数据包中的IP和DHCP部分。在IP部分,可以看到Destination地址是255.255.255.255,而Source地址是0.0.0.0。DHCP部分将数据包标识为Discover数据包,并使用网卡的物理地址在两处标识客户端。注意CHADDR字段和DHCP的值:ClientIdentifier字段是相同的。
IP:ID=0x0;Proto=UDP;Len:328
IP:Version=4(0x4)
IP:HeaderLength=20(0x14)
IP:ServiceType=0(0x0)
IP:Precedence=Routine
IP:...0....=NormalDelay
IP:....0...=NormalThroughput
IP:.....0..=NormalReliability
IP:TotalLength=328(0x148)
IP:Identification=0(0x0)
IP:FlagsSummary=0(0x0)
IP:.......0=Lastfragmentindatagram
IP:......0.=Mayfragmentdatagramifnecessary
IP:FragmentOffset=0(0x0)bytes
IP:TimetoLive=128(0x80)
IP:Protocol=UDP-UserDatagram
IP:Checksum=0x39A6
IP:SourceAddress=0.0.0.0
IP:DestinationAddress=255.255.255.255
IP:Data:Numberofdatabytesremaining=308(0x0134)
DHCP:Discover(xid=21274A1D)
DHCP:OpCode(op)=1(0x1)
DHCP:HardwareType(htype)=1(0x1)10MbEthernet
DHCP