DHCP服务器功能浅析

1.DHCP简介

    DHCP是Dynamic Host Configuration Protocol的缩写,它的前身是BOOTP。DHCP可以说是BOOTP的增强版本,分为两个部份(C/S架构):一个是服务器端,而另一个是客户端。DHCP的主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。对比BOOTP,DHCP通过"租约"的概念,有效且动态的分配客户端的TCP/IP设定。而且为了考虑兼容性,DHCP也完全兼容了BOOTP Client的需求。

2.DHCP Server功能

  • DHCP Server的基本功能,如表 2‑1所示。

 表 2‑1 DHCP Server基本功能

3.DHCP Server框架即原理

    3.1 软件框图

        DHCP Server软件框图如图 3‑1所示。

图 3‑1  DHCP Server软件框图

    3.2 DHCP原理

        DHCP原理如图 3‑2所示。

图 3‑2  DHCP原理图

    3.3 DHCP报文结构

        DHCP协议报文如表3-2所示。

表 3‑2  DHCP协议报文结构

  •  opclient发送给server的封包,设为1,server发送给client的封包,设为2。
  • htype硬件类别,1表示10Mb/s的以太网(Ethernet)的硬件地址。
  • hlen硬件地址长度,Ethernet为6(字节)。
  • hops跳数,若封包需经过router传送,每站加 1,若在同一网内,为0(客户端的初始设置为0)。
  • xidTRANSACTION ID(事务ID),DHCP REQUEST 时产生的数值,服务器和客户端用来在它们之间交流请求和响应,客户端用它对请求和应答进行匹配。
  • seconds由客户端填充,表示从客户端开始获得IP地址或IP地址续借后所使用了的秒数。
  • flags从0到15共16 bits,最左1Bit为1时表示server将以广播方式传送封包给client;最左1Bit为0时表示server将以单播方式传送封包给client。
  • ciaddr客户端的IP地址,只有客户端是Bound、Renew、Rebinding状态,并且能响应ARP请求时,才能被填充。
  • yiaddr从server送回client的DHCP OFFER与DHCPACK封包中,此栏填写分配给client的IP地址。
  • siaddr表明DHCP协议流程的下一个阶段要使用的服务器的IP地址。
  • giaddr若需跨网域进行DHCP获取,此栏为 relay agent的地址,否则为0。
  • chaddr客户端硬件地址。客户端必须设置它的"chaddr"字段。
  • snameServer的名称字符串,由DHCP服务器填写,以0x00结尾。
  • file启动文件名,是一个空结尾的字符串。
  • options允许厂商定议选项(Vendor-Specific Area),以提供更多的设定信息。

         数据通信模块主要完成DHCP协议报文的解析和封装,数据包的发送和接收功能。

    3.4 DHCP服务流程

        3.4.1 DHCP Discover数据处理流程

        DHCP Discover数据处理流程如图 3‑3所示。

图 3‑3  DHCP Disocver数据处理流程图

        3.4.2 DHCP Request数据处理流程

        DHCP Request数据处理流程如图 3‑4所示。

图 3‑4  DHCP Reques数据处理流程图

        3.4.3 DHCP Release数据处理流程

        DHCP Release数据处理流程如图 3‑5所示。

图 3‑5  DHCP Release数据处理流程图

        3.4.4 DHCP Decline数据处理流程

        DHCP Decline数据处理流程如图 3‑6所示。

图 3‑6  DHCP Decline数据处理流程图

        3.4.5 DHCP Inform数据处理流程

        DHCP Inform数据处理流程如图 3 7所示。

图 3 7  DHCP Inform数据处理流程图

转载于:https://my.oschina.net/senjienly/blog/857426

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值