DHCP协议概述(2)
来源:asp之家 发布时间:2010-05-16 18:35:00
DHCP发放流程
第一次登录之后:
一旦 DHCP 客户端成功地从伺服器哪里取得 DHCP 租约之后,除非其租约已经失效并且 IP 位址也重新设定回 0.0.0.0 ,否则就无需再发送 Dhcpdiscover 信息了,而会直接使用已经租用到的 IP 位址向之前之 DHCP 伺服器发出 Dhcprequest 信息,DHCP 伺服器会尽量让客户端使用原来的 IP 位址,如果没问题的话,直接回应 Dhcpack 来确认则可。如果该位址已经失效或已经被其它机器使用了,伺服器则会回应一个 DHCPNACK 封包给客户端,要求其从新执行 Dhcpdiscover。
至于 IP 的租约期限却是非常考究的,并非如我们租房子那样简单, 以 NT 为例子:DHCP 工作站除了在开机的时候发出 dhcprequest 请求之外,在租约期限一半的时候也会发出 dhcprequest ,如果此时得不到 DHCP 伺服器的确认的话,工作站还可以继续使用该 IP ;然后在剩下的租约期限的再一半的时候(即租约的75%),还得不到确认的话,那么工作站就不能拥有这个 IP 了。至于为什么不是到租约期限完全结束才放弃 IP 呢﹖,对不起,小弟也是不学无术之人,没有去深究了,只知道要回答 MCSE 题目的时候,您一定要记得 NT 是这么工作的就是了。
要是您想退租,可以随时送出 DHCPLEREASE 命令解约,就算您的租约在前一秒钟才获得的。
跨网路的 DHCP 运作
从前面描述的过程中,我们不难发现:DHCDISCOVER 是以广播方式进行的,其情形只能在同一网路之内进行,因为 router 是不会将广播传送出去的。但如果 DHCP 伺服器安设在其它的网路上面呢﹖由于 DHCP 客户端还没有 IP 环境设定,所以也不知道 Router 位址,而且有些 Router 也不会将 DHCP 广播封包传递出去,因此这情形下 DHCPDISCOVER 是永远没办法抵达 DHCP 伺服器那端的,当然也不会发生 OFFER 及其他动作了。要解决这个问题,我们可以用 DHCP Agent (或 DHCP Proxy )主机来接管客户的 DHCP 请求,然后将此请求传递给真正的 DHCP 伺服器,然后将伺服器的回复传给客户。这里,Proxy 主机必须自己具有路由能力,且能将双方的封包互传对方。
若不使用 Proxy,您也可以在每一个网路之中安装 DHCP 伺服器,但这样的话,一来设备成本会增加,而且,管理上面也比较分散。当然啰,如果在一个十分大型的网路中,这样的均衡式架构还是可取的。端视您的实际情况而定了。
DHCP 封包格式
以下为各栏位的简要说明:
OP
若是 client 送给 server 的封包,设为 1 ,反向为 2 。
HTYPE
硬体类别,Ethernet 为 1 。
HLEN
硬体位址长度, Ethernet 为 6 。
HOPS
若封包需经过 router 传送,每站加 1 ,若在同一网内,为 0 。
TRANSACTION ID
DHCPREQUEST 时产生的数值,以作 DHCPREPLY 时的依据。
SECONDS
Client 端启动时间(秒)。
FLAGS
从 0 到 15 共 16 bits ,最左一 bit 为 1 时表示 server 将以广播方式传送封包给 client ,其余尚未使用。
ciaddr
要是 client 端想继续使用之前取得之 IP 位址,则列于这里。
yiaddr
从 server 送回 client 之 DHCPOFFER 与 DHCPACK 封包中,此栏填写分配给 client 的 IP 位址。
siaddr
若 client 需要透过网路开机,从 server 送出之 DHCPOFFER、DHCPACK、DHCPNACK 封包中,此栏填写开机程式码所在 server 之位址。
giaddr
若需跨网域进行 DHCP 发放,此栏为 relay agent 的位址,否则为 0 。
chaddr
Client 之硬体位址。
sname
Server 之名称字串,以 0x00 结尾。
file
若 client 需要透过网路开机,此栏将指出开机程式名称,稍后以 TFTP 传送。
options
允许厂商定议选项(Vendor-Specific Area),以提供更多的设定资讯(如:Netmask、Gateway、DNS、等等)。其长度可变,同时可携带多个选项,每一选项之第一个 byte 为资讯代码,其后一个 byte 为该项资料长度,最后为项目内容。
DHCP的选项非常多,有空请查阅 RFC 或相关文献,并好好理解,这里不再叙述了。
猜你喜欢
- 随着带宽的飞速扩宽,互联网上的信息交流日益增大,毫无疑问,互联网上的安全,操作系统平台的安全也逐渐成为人们所关心的问题。而许多网络服务器,工
- 选择“使用自定义共享和文件夹权限”,点击自定义按钮之后弹出自定义权限设置界面。在这里可以根据需要对不
- 很多的时候,大家发现了没? 一样的程序,一样的行业,为什么别人成功了,为什么人家能赚到钱,能买车,能给员工开工资。自己却过得紧巴巴? 突然醒
- Apache Maven一个潜在的基于java的apache ant的构建工具的替代者。两者之间的比较:第一:ant脚本是可以直接运行在ma
- 两权分立的FTP工作模式,工作环境: ADSL---(219.154.214.150)NAT(10.41.221.2)-----PC(10.
- 听说你国庆旅途中遇一群野猪围攻,旅客均捣出食品、金钱,野猪却不为所动。你仅掏出身份证,群猪却跪地痛哭:老大,可找到你了!国庆快乐!水在流,鱼
- 我们建立博客的初衷是记录、分享工作、生活、技术等方面知识,也有人写博客是为了装逼。但最终能够坚持下来的却少之又少。主要原因是从起初的单相思到
- 10月29日消息,日前,百度空间(hi.baidu.com)联合娃哈哈慈善基金会,共同发起“点亮爱的心愿”大型慈善公益活动,提交自己爱心梦想
- 实验环境:AS4最小化安装实验目标:架设VSFTP服务器这次我们来学习Linux系统中的 vsftp服务器的配置。下面我们开始了!首先我们安
- 已经了解了如何生成和添加广告代码,现在您关心的问题可能就是:怎么投放广告才能有更多的广告收入呢?下面我们就为您揭开提升网站广告收益的几大秘技
- 我们继续来了解Godaddy主机,今天我们要介绍的是Godaddy主机的管理帐户如何变更。Pending Account Changes页面
- ZAC这2天关注的SEO话题是关键词布局,对于这个话题,KYW感受颇多,来说说我最不喜欢的关键词呈现方式,我想搜索引擎也不会喜欢的。第一种,
- 这次给大家介绍的是我对“用户体验”与搜索引擎排名之间的关系的一些观点。因为时间关系,可能文章的某些句子不通顺,请各位见谅,文章内容均为本人猜
- 在启动tomcat的时候提示8080端口被占用,后来经过查找发现如下结论:将oracle与tomcat、jboss等其它占用8080端口的服
- 谈到广告联盟我想站长朋友们都知道,也都比我熟悉。它是绝大部分网站的收入来源。现在在国内外,也有不少的广告联盟。在国内做得比较好的,比较知名的
- Discuz!7.0.0 作为目前优秀的社区产品,越来越多的得到站长的青睐,其中一个很重要的原因就是可调控性较强,站长可以根据自己的特点调整
- 雅虎准备在硅谷圣塔克拉拉市兴建办公园区。雅虎表示,新建园区的目的是将现有办公和研发场所合并,以适应未来成长的需要。新园区占地四十八英亩,由十
- 使用PHPWind程序做论坛的有很多,有时候我们会做一些资讯页面,如果安装新的CMS系统的话会比较麻烦,而PHPWind其实也有CMS文章管
- 10月16日消息,据知情人士透露,在媒体前低调一年多的巨人网络董事长兼CEO史玉柱,近期有望推出一款心血大作《绿色征途》。上述人士称该游戏凝
- 互联网的搜索引擎们把主要精力都放在采集web页面的文本信息上,但是google却在研究如何分析和组织结构化数据方面小有所成,该公司的一位科学