15DHCP 服务器.docx
- 文档编号:29985963
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:27
- 大小:123.52KB
15DHCP 服务器.docx
《15DHCP 服务器.docx》由会员分享,可在线阅读,更多相关《15DHCP 服务器.docx(27页珍藏版)》请在冰豆网上搜索。
15DHCP服务器
DHCP服务器1
本章的行前准备工作1
DHCP运作的原理1
什么是DHCP协议1
DHCP的运作方式2
DHCP服务器给予客户端的IP类型:
4
关于租约所造成的问题5
多部DHCP主机在同一物理网段的情况6
何时需要架设DHCP服务器6
使用DHCP的几个时机6
不建议使用DHCP主机的时机7
DHCP服务器端的设定7
主要设定文件/etc/dhcpd.conf的语法8
一个局域网络的DHCP服务器设定案例10
DHCP服务器的启动与观察12
内部主机的IP对应13
DHCP客户端的设定14
Linux客户端14
Windows客户端16
服务器端数据查阅19
检查租约档案19
使用ether-wake实行远程自动开机(remoteboot)20
重点回顾20
课后练习21
DHCP服务器
如果您在工作单位使用的是笔记型计算机,而且常常要带着您的笔记型计算机到处跑,那么由前几章的『连上Internet』设定当中,会发现,哇!
我的网络卡参数要常常修改啊!
而且,每到一个新的地方,就得问清楚该地的Server提供的网络参数才行!
真是麻烦~~这个时候,动态主机设定协议(DHCP)可就大大的派上用场啦!
DHCP这个服务器可以自动的分配IP与相关的网络参数给Client端,来提供Client端自动以主机提供的参数来设定他们的网络,如此一来,使用者只要将自己的Notebook设定好经由DHCP协议来取得网络参数后,一插上网络线,呵呵!
马上就可以享受Internet的服务啦!
很方便吧!
所以得来瞧一瞧这个好用的协定喔!
本章的行前准备工作
由于DHCP必需要设定整个局域网络的网段规定,还有得要了解路由设定,以及一堆与网络有关的信息等等,所以你一定要熟悉网络基础。
此外,由于DHCPserver套件预设应该是不会安装啦,所以你也必需要了解如何使用rpm或者是yum等工具才行。
*务必了解网络基础相关的数据;
*也得了解一下DNS相关的议题;
*还有防火墙最好也能了解一番。
DHCP运作的原理
老规矩,在正式的进入DHCP(DynamicHostConfigurationProtocol)主机设定之前,我们先来认识一下DHCP这个协议吧!
还有,需要了解的是,我们是否有需要『一定』得设定DHCP这个服务器呢?
这里都需要厘清一下概念喔!
什么是DHCP协议
在开始DHCP的说明之前,我们先来复习一下之前在网络基础里面提到的几个网络参数吧!
要设定好一个网络的环境,使计算机可以顺利的连上Internet,那么您的计算机里面一定要有底下几个网络的参数才行,分别是:
IP,netmask,network,broadcast,gateway,DNSIP
其中,那个IP,netmask,network,broadcast与gateway都可以在/etc/sysconfig/network-scripts/ifcfg-eth[0-n]这些档案里面设定,DNS的地址则是在/etc/resolv.conf里头设定。
呵呵!
只要这几个项目设定正确,那么计算机应该就没问题的可以上网了!
所以说,您家里面的3,4部计算机,您都可以手动的来设定好您所需要的网络参数,然后利用NAT主机的功能,就可以大摇大摆的连上Internet了!
真是不错^_^,不是吗?
好了,现在让我们换一个大一些些的场景吧!
假设您是学校宿舍的网络管理员,所管理的学生计算机大概有100部好了,那么您怎么设定好这100部的计算机呢?
1.直接每一部计算机都让您登门拜访手动的去设定好?
2.将所有的学生都集合起来,然后精神训话.....喔不!
是直接教导一下怎么设定?
还是
3.藉由一部主机来自动的分配所有的网络参数给宿舍内的任何一部计算机?
这三种解决方案所需要的时间都不相同,如果您选择的是
(1),那么鸟哥个人认为,您不是工作狂就是疯掉了,因为所要花费的时间与您所得的薪水与付出的心力是完全不成比例的。
如果选择是
(2)那么很可能您会被挂上独裁者、没良心的管理员的称号!
如果是选择(3)呢?
恭喜您!
这个方案的管理时间花费最短,也是最不麻烦的作法啦!
呵呵!
知道我要说些什么了吗?
是的!
这个DHCP(DynamicHostConfigurationProtocol)主机最主要的工作,就是在进行前面提到的第三个方案,也就是自动的将网络参数正确的分配给网域中的每部计算机,让客户端的计算机可以在开机的时候就立即自动的设定好网络的参数值,这些参数值可以包括了IP、netmask、network、gateway与DNS的地址等等。
如此一来,呵呵!
身为管理员的您,只要注意到这一部提供网络参数的主机有没有挂掉就好了,其它同学们的个人计算机,哈!
您想都不必想要怎么去帮忙!
因为DHCP主机已经完全都帮您搞定啦!
^_^!
阿!
当管理员最大的幸福就是可以喝喝茶、聊聊天就能控管好一切的网络问题呢!
DHCP的运作方式
你必需要知道的是,DHCP通常是用局域网络内的一个通讯协议,他主要藉由客户端传送广播封包给整个物理网段内的所有主机,若局域网络内有DHCP主机时,才会响应客户端的IP参数要求。
所以啰,DHCP服务器与客户端是应该要在同一个物理网段内的。
而客户端取得IP参数的程序可以简化如下:
1.客户端利用广播封包发送DHCP需求:
若客户端设定使用DHCP取得IP(在Windows内为『自动取得IP』),则当客户端开机或者是重新启动网络卡时,客户端主机会发送出DHCP要求给所有物理网段内的计算机。
此封包的目标IP会是255.255.255.255,所以一般主机接收到这个封包后会直接予以丢弃,但若局域网络内有DHCP服务器时会如何回应?
2.DHCP主机响应讯息:
DHCP主机在接收到这个客户端的需求后,针对这个客户端的硬件地址(MAC)与本身的设定数据来进行下列工作:
*到服务器的登录文件中寻找该用户之前是否曾经用过某个IP,若有且该IP目前无人使用,则提供此IP给客户端;
*若设定档针对该MAC提供额外的固定IP(staticIP)时,则给予该IP的设定;
*若不符合上述两个条件,则随机取用目前没有被使用的IP给用户,并记录下来。
此外,DHCP服务器还会提供一个租约时间给客户端,并等待客户端的响应。
3.客户端接受DHCP服务器提供的参数并设定本身的网络环境:
若一切安好,则客户端会接受该次取得的IP并开始处理本身的网络环境,包括改写/etc/resolv.conf等等;并且会向DHCP服务器发送一个确认封包,确认该参数已被接受。
4.DHCP服务器记录该次租约行为:
客户端回传讯息以建立租约行为后,该次租约会被记录到主机的登录文件上头,并且开始租约计时喔!
那么该次租约何时会到期而被解约(真可怕的字眼!
)?
你可以这样想:
*客户端离线:
不论是关闭网络接口(ifdown)、重新开机(reboot)、关机(shutdown)等行为,皆算是离线状态,这个时候Server端就会将该IP回收,并放到Server自己的备用区中,等待未来的使用;
*客户端租约到期:
前面提到DHCPserver端发放的IP有使用的期限,客户端使用这个IP到达期限规定的时间,而且没有重新提出DHCP的申请时,就需要将IP缴回去!
这个时候就会造成断线,而用户也可以再向DHCP主机要求再次分配IP啰
以上就是DHCP这个协议在Server端与Client端的运作状态,由上面这个运作状态来看,我们可以晓得,只要Server端设定没有问题,加上Server与Client在硬件联机上面确定是OK的,那么Client就可以直接藉由Server来取得上网的网络参数,当然啦,只要我们这些管理员能够好好的、正确的管理好我们的DHCP,嘿嘿!
那么上网的设定自然就变成一件很简单的事情啦!
DHCP服务器给予客户端的IP类型:
在上面的步骤里面,注意到第二步骤了吗?
就是服务器会去比较客户端的MAC硬件地址,并判断该MAC是否需要给予一个固定的IP呢!
所以啦,我们可以设定DHCP服务器给予客户端的IP类型主要有两种:
*固定(Static)IP:
只要那个客户端计算机的网络卡不换掉,那么MAC肯定就不会改变,由于DHCP可以根据MAC来给予固定的IP,所以该计算机每次都能以一个固定的IP连上Internet!
呵呵!
这种情况比较适合当这部计算机需要用来做为提供区域内的一些网络服务的主机之用。
那么如何在Linux上面知道您的MAC呢?
很简单啦!
有很多的方式,最简单的方式就是使用ifconfig及arp来进行:
1.观察自己的MAC可用ifconfig:
[root@linux~]#ifconfigeth0
eth0Linkencap:
EthernetHWaddr00:
08:
03:
A3:
E0:
34
inetaddr:
192.168.1.254Bcast:
192.168.1.255Mask:
255.255.255.0
....底下省略....
2.观察别人的MAC可用ping配合arp
[root@linux~]#ping-c1192.168.1.101
[root@linux~]#arp-n
AddressHWtypeHWaddressFlagsMaskIface
192.168.1.101ether00:
08:
75:
A0:
B2:
78Ceth0
*动态(dynamic)IP:
Client端每次连上DHCP所取得的IP都不是固定的!
都直接经由DHCP所随机由尚未被使用的IP中提供!
除非您的局域网络内的计算机有可能用来做为主机之用,所以必需要设定成为固定IP,否则使用动态IP的设定比较简单,而且使用上面具有较佳的弹性。
怎么说呢?
假如您是一个ISP好了,而您只申请到150个IP来做为您的客户联机之用。
那么您是否真的只能邀集到150的使用者?
呵呵!
当然不啰!
我可以邀集200个使用者以上呢!
为什么?
这样想好了,我今天开了一家餐馆,里面只有20个座位,那么是否我一餐只能卖给20个人呢?
当然不是啦!
因为客人是人来人往的,有人先吃有人后吃,所以同样是20个座位,但是可以有40个人来吃我的简餐,因为来的时间不一样嘛!
了解了吗?
呵呵!
对啦!
您这个ISP虽然只有150个IP可以发放,但是因为您的使用者并非24小时都挂在在线的,所以您可以将这150个IP做良好的分配,让200个人来『轮流使用』这150个IP哩!
Tips:
其实IP只有PublicIP与PrivateIP两种,中文翻译成『公共IP』与『私有IP』这两个,至于其它所谓的『静态IP』、『实体IP』、『虚拟IP』、『浮动式IP』等等,都是藉由一些IP取得的方式来分类的,关于IP的种类我们在网络基础中谈过了,记得再好好的厘清一下观念喔!
事实上现在主流的ADSL宽带拨接上网也有使用到『静态IP』与『固定IP』之类的概念喔!
举例来说好了,hinet/seednet等主要ISP都有提供所谓的:
『一个固定IP搭配7~8个浮动IP』的ADSL拨接功能,也就是说同样透过一条电话线拨接到ISP,但是其中一个拨接是可以取得固定的IP呢!
而其它的则是非固定的IP,DHCP的static/dynamic跟这个玩意儿有点类似啦!
^_^
关于租约所造成的问题
怪了!
如果我们观察上面DHCP运作模式的第二个步骤,您会发现最后面DHCP服务器还有给予还有一个租约期限!
干嘛还要这样的一个期限呢?
其实设定期限还是有个优点啦!
最大的优点就是可以避免IP被某些使用者一直占用着,但该使用者却是Idle(发呆)的状态!
举个例子来说,我们刚刚不是说到,我有150个IP,但是偏偏我有200个用户吗?
我们以2006年的世界杯足球赛来说明好了。
假设每个使用者都急着上网知道世足赛的消息,那么某些热门对战时段网络将可能达到使用尖峰!
也就是说,这200个人同时要来使用这150个IP,有可能吗?
当然不可能!
肯定会有50个人无法联机,因为『很抱歉!
目前系统正在忙线中,请您稍后再拨!
』
那怎么办?
这个时候租约到期的方式就很有用处啦!
那几个已经联机进来很久的人,就会因为租约到期而被迫离线,这个时候该IP就会被释放出来,哈哈!
大家赶快抢呀!
先抢到先赢喔!
所以,那50个人(包括被迫离线的那个朋友)只好继续的、努力的、加油的来进行DHCP的要求啰!
^_^""
虽然说是优点,但是其实如果站在使用者的角度来看,还是可能会造成公愤的!
凭什么大家一起交钱,我先联机进来就需要先被踢出去?
~呵呵!
所以啰,如果要当ISP,还是得要先规划好服务的方针才行呦!
这样您可以了解租约到期的行为了吗?
!
^_^
既然有租约时间,那么是否代表我用DHCP取得的IP就得要『手动』的在某个时间点去重新取得新的IP呢?
不需要的啦!
因为目前的DHCP客户端程序大多会主动的依据租约时间去重新申请IP(renew)的!
也就是说在租约到期前你的DHCP客户端程序就已经又重新申请更新租约时间了。
所以除非DHCP主机挂点,否则您所取得的IP应该是可以一直使用下去的!
多部DHCP主机在同一物理网段的情况
或许您曾经发现过一件事情,那就是当我的网域里面有两部以上的DHCP主机时,到底哪一部主机会设定我的这部计算机所发出的DHCP要求?
呵呵!
很抱歉,俺也不晓得!
因为在网络上面,很多时候都是『先抢先赢』的,DHCP的回应也是如此!
当Server1先响应时,您使用的就是Server1所提供的网络参数内容,如果是Server2先响应,您就是使用Server2的参数来设定您的PC!
不过,前提之下当然是这些计算机的『物理联机』都是在一起的啊!
何时需要架设DHCP服务器
既然DHCP的好处是『免客户端设定』,而且对于行动装置的上网方面非常的方便!
那么是否代表你就得要架设一部DHCP呢?
那可不一定!
接下来要告知大家的是几个概念性的问题,您倒不一定『必需』遵守底下的一些概念呢!
反正,自己的网域自己『爽』就好啦!
使用DHCP的几个时机
在某些情况之下,倒是强烈的建议架设DHCP主机的!
什么情况呢?
例如:
*具有相当多行动装置的场合:
例如您的公司内部很多笔记型计算机(笔电)使用的场合!
因为这种笔电本身就是移动性的装置,如果每到一个地方都要去问人家『喂!
您这边的网络参数是什么?
』还得要担心是否会跟人家的IP相冲突等等的问题!
这个时候,DHCP可就是您的救星啰!
*区域内计算机数量相当的多时:
另外一个情况就是您所负责的网域内计算机数量相当庞大时,大到您没有办法一个一个的进行说明来设定他们自己的网络参数,这个时候为了省麻烦,还是架设DHCP来的方便吶!
况且,维护一部您熟悉的DHCP主机,要比造访几十个不懂计算机的人要简单的多哩!
^_^
不建议使用DHCP主机的时机
虽然DHCP有很多好处,但是您有没有发现一个步骤怪怪的呀!
回头看一下那个步骤一,客户端在开机的时候会主动的发送讯息给网域上的所有机器,这个时候,如果网域上就是没有DHCP主机呢?
很抱歉,那么您的这部客户端计算机,『仍然会持续的发送讯息!
』真正的时间与次数我不晓得会有多久,不过,肯定会超过30秒以上,甚至可以达到一分钟以上!
哇!
那么这段时间您能干嘛?
呵呵!
除了等、还是等!
所以啰,如果计算机数不多,还是使用手动的方式来设定一下就好了!
方便嘛!
*在您网域内的计算机,有很多机器其实是做为主机的用途,很少Client需求,那么似乎就没有必要架设DHCP;
*更极端的情况是,像一般家里,只有3~4部计算机,这个时候,架设DHCP只能拿来练练功力,事实上,并没有多大的效益;
*当您管理的网域当中,大多网络卡都属于老旧的型号,并不支持DHCP的协议时;
*很多使用者的信息知识都很高,那么也没有需要架设DHCP啦。
如前所述,上面的都是概念性的说法,事实上,一件事情的解决之道是有很多的方案的,没有所谓的『完全正确』的方案,只有『相对可行、并且符合经济效益与功能』的方案!
所以啰,架设任何网站之前,请先多评估评估吶!
DHCP服务器端的设定
事实上,目前市面上的IP分享器已经便宜到爆了!
而IP分享器本身就含有DHCP的功能,所以如果你只是想要单纯的使用DHCP在你的局域网络当中而已,那么建议你直接购买一部IP分享器来使用即可,因为至少他很省电。
如果你还有其它考虑的话,才来架设DHCP吧!
底下我们以一个简单的范例来架设DHCP先。
小标题的图标所需套件与套件结构
DHCP的套件需求很简单,就是只要服务器端软件即可。
所需套件为:
*dhcp
提供整个DHCP服务器的主要设定档与启动的script及执行文件等等重要数据。
真的只要一个套件就好了,而且没有什么很重大的相依性问题呢!
请拿出你的原版光盘用rpm来安装,或者直接用yum在线安装也可以!
档案很小啦!
至于整个套件的结构是这样的:
*/etc/dhcpd.conf
这个就是dhcp服务器的主要设定档咯!
在某些Linux版本上头这个档案可能不存在,所以如果你确定有安装dhcp套件却找不到这个档案时,请手动自行建立他即可。
这个档案的设定很简单啦,我们底下主要就是在谈这个档案的设定而已哩。
不过设定文件的实际位置还是得要参考/etc/init.d/dhcpd的规范才是。
Tips:
其实dhcp套件在释出的时候都会附上一个范例档案,你可以使用『rpm-qldhcp』来查询到dhcpd.conf.sample这个范例档案,然后将该档案复制成为/etc/dhcpd.conf后,再手动去修改/etc/dhcpd.conf即可,这样设定比较容易咯!
*/usr/sbin/dhcpd
启动整个dhcpdaemon的执行档啊!
其实最详细的执行方式应该要使用『mandhcpd』来查阅一番的呢!
^_^
*/var/lib/dhcp/dhcpd.leases
这档案颇有趣的!
我们前面原理部分不是有提到『租约』吗?
DHCP服务器端与客户端租约建立的启始与到期日就是记录在这个档案当中的咯!
就跟你说很简单吧!
整个套件数据也不过才如此而已呢!
主要设定文件/etc/dhcpd.conf的语法
其实DHCP的设定很简单啊,只要将dhcpd.conf设定好就可以启动了。
不过编辑这个档案时你必须要留意的是:
*『#』为批注符号;
*除了括号那一行之外,其它的每一行后面都要以『;』做为结尾!
这是最容易出错的地方。
*通常设定的项目都有独特的名称,以:
『<参数代号><设定内容>』来处理,例如:
default-lease-time259200;
*某些设定项目必须以option来设定,基本方式为『option<参数代码><设定内容>』例如:
optiondomain-name"your.domain.name";
基本上,我们刚刚前面提过说,DHCP的IP分配可分为给予动态IP与静态IP,其中又需要了解的是,如果需要设定静态IP的话,那么就必须要知道要设定成静态IP的那部计算机的硬件地址(MAC)才行,请使用arp及ifconfig来查知您的接口的MAC吧!
此外,我们需要设定的项目大概有几项:
*整体设定(Global)
包括有租约期限、DNS的IP地址、路由器的IP地址还有动态DNS(DDNS)更新的类型等等。
当静态IP及动态IP内没有规范到某些设定时,则以整体设定值为准。
常使用参数有:
odefault-lease-time时间:
预设的租约时间,后面的时间参数预设单位为秒;
omax-lease-time时间:
最大租约时间,当客户端超过租约时间却尚未更新IP时,最长可以使用该IP的时间;
ooptiondomain-name"领域名称":
如果你在/etc/resolv.conf里面设定了一个『search』的话,这表示当你要搜寻主机名称时,DNS系统会主动帮你加上这个领域名称的意思。
所以这个设定参数也会修改/etc/resolv.conf喔!
ooptiondomain-name-serversIP1,IP2:
这个设定参数可以修改客户端的/etc/resolv.conf档案!
就是nameserver所接的那个DNSIP啰!
特别注意设定参数最末尾为『servers』(有s喔);
oddns-update-style类型:
因为DHCP客户端所取得的IP通常是一直变动的,所以某部主机的主机名称与IP的对应就很难处理。
此时DHCP可以透过ddns(请参考合法主机名称与DNS章节的说明)来更新主机名与IP的对应。
不过我们这里不谈这么复杂的东西,所以你可以将他设定为none喔。
ooptionrouters路由器的地址:
设定路由器的IP所在,记得那个『routers』要加s才对!
ooptionbroadcasst-address广播地址:
设定广播地址而已。
如果没有设定的话,系统应该会自动依据classA,B,C的原则来计算出广播地址吧!
*动态IP分配设定:
用来设定随机给予IP的方式,只要给予网域(network以及netmask)配合range这个参数就能够给予限制的IP范围了。
设定方式并不怎么难啊。
*静态IP的设定方式:
透过硬件地址(MAC)来处理IP的取得。
使用的是host这个设定参数,配合底下两个常见的参数值来处理:
ohardwareethernet硬件地址:
利用网络卡上面的固定硬件地址来设定,亦即该设定仅针对这个硬件地址有效的意思;
ofixed-addressIP地址:
给予一个固定的IP地址的意思。
说再多也没有什么用啦!
让我们实际来玩一个案例吧!
你就知道该如何处理了。
一个局域网络的DHCP服务器设定案例
假设我的环境当中,Linux服务器除了NAT主机
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 15DHCP 服务器 15 DHCP