📄 0340dhcp.htm
字号:
<table bgcolor="#000000" border="1" cols="1" width="550"><tbody><tr><td><font size="-1" face="SimSun"><font color="#ffffff">[root@testroot]# </font><font color="#ffff00">ifconfig eth0</font></font><br><font size="-1" color="#ffffff" face="SimSun">ifconfig</font><br><font size="-1" face="SimSun"><font color="#ffffff">eth0     Link encap:Ethernet  HWaddr </font><font color="#ffff00">00:50:FC:22:9C:57</font></font><br><font size="-1" color="#ffffff" face="SimSun">         inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0</font><br><font size="-1" color="#ffffff" face="SimSun">         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1</font><br><font size="-1" color="#ffffff" face="SimSun">         RX packets:333678 errors:0 dropped:0 overruns:0 frame:0</font><br><font size="-1" color="#ffffff" face="SimSun">         TX packets:377219 errors:0 dropped:0 overruns:0 carrier:0</font><br><font size="-1" color="#ffffff" face="SimSun">         collisions:195 txqueuelen:100</font><br><font size="-1" color="#ffffff" face="SimSun">         RX bytes:42243563 (40.2 Mb)  TX bytes:278373316 (265.4 Mb)</font><br><font size="-1" color="#ffffff" face="SimSun">         Interrupt:10 Base address:0x6100</font><p><font size="-1" face="SimSun"><font color="#ffffff">[root@test root]#</font><font color="#ffff00">arp</font></font><br><font size="-1" color="#ffffff" face="SimSun">Address            HWtype  HWaddress          Flags Mask           Iface</font><br><font size="-1" face="SimSun"><font color="#ffffff">test.linux.org     ether   </font><font color="#ffff00">00:50:FC:22:9C:57</font><font color="#ffffff">  C                    eth0</font></font><br><font size="-1" color="#ffffff" face="SimSun">192.168.1.100      ether   00:02:44:19:A6:AD   C                    eth0</font></p></td></tr></tbody></table> <li><font color="#000099">动态 ( dynamic ) IP</font>:Client 端每次连上 DHCP所取得的 IP 都不是固定的!都直接经由 DHCP 所随机由尚未被使用的 IP 中提供!</li></ul> <br>除非您的局域网络内的计算机有可能用来做为主机之用,所以必需要设定成为固定IP ,否则使用动态 IP 的设定比较简单,而且使用上面具有较佳的弹性。怎么说呢?假如您是一个ISP 好了,而您只申请到 150 个 IP 来做为您的客户联机之用。那么您是否真的只能邀集到150 的使用者?呵呵!当然不啰!我可以邀集 200 个使用者以上呢!为什么?这样想好了,我今天开了一家餐馆,里面只有20 个座位,那么是否我一餐只能卖给 20 个人呢?当然不是啦!因为客人是人来人往的,有人先吃有人后吃,所以同样是20 个座位,但是可以有 40 个人来吃我的简餐,因为来的时间不一样嘛!了解了吗?呵呵!对啦!您这个ISP 虽然只有 150 个 IP 可以发放,但是因为您的使用者并非 24 小时都挂在在线的,所以您可以将这150 个 IP 做良好的分配,让 200 个人来『<font color="#000066">轮流使用</font>』这150 个 IP 哩!<br> <br>好了,那么另外一个问题,还是搞不懂什么是『<font color="#000066">静态IP </font>』与『<font color="#000066">动态 IP</font>』呢?不都是由 DHCP发放的吗?让我们再来谈一个小例子好了。目前(2003年)上网的主流是 ADSL 拨接制这种方法,其中,由于拨接制所以每次上线的IP 都不一样!这可以想成是 DHCP 的 动态 IP 分配方式!那么如果您是使用 GIGA的拨接制给予的固定 IP 呢?呵呵!那个方式其实还是使用拨接之后才能得到联机啦!只不过ISP 经由 PPP 协议当中的密码来判断使用者,让同一个使用者每次都可以收到一个固定的IP 而已!这样可以理解了吗?呵呵!您可以想成,拨接到 ISP 就是类似 client端发送一个 DHCP 的需求给 DHCP 主机,而将 GIGA 想成我们 DHCP 里面的固定IP 分配方式,而 Seednet 之类的 ISP 动态给予 IP 的,就是 DHCP 里面使用的dynamic IP 分配方式啦! ( <i><font color="#000066">注:其实在软件地址亦即是IP 上面,只有 Public IP 与 Private IP 两种,中文翻译成『公共 IP』与『私有IP』这两个,至于其它所谓的『静态 IP』、『实体 IP』、『虚拟 IP』、『浮动式IP』等等,都是藉由一些 IP 取得的方式来分类的,对于此种分类方式可能会造成读者的困扰,所以,请特别留意这些IP 的意义,不要搞混了!如果还是害怕会搞不清楚,那么只要先记得『公共 IP』是可以直接与Internet 相互沟通的,至于『私有 IP』则是不能直接与 Internet 沟通的内部IP 段!</font></i>)<br> <br><b><font color="#000099">关于租约的行为:</font></b><br>怪了!如果我们观察上面 DHCP 运作模式的第二个步骤,您会发现最后面还有一个租约期限!干嘛还要这样的一个期限呢?其实设定期限还是有个优点啦!最大的优点就是可以避免该IP 被某些使用者一直占用着,但该使用者却是 Idle ( 发呆 ) 的状态!举个例子来说,我们刚刚不是说到,我有150 个 IP ,但是偏偏我有 200 个用户嘛!那么假设刚好例如 2002 年的世界杯足球赛好了,每个使用者都急着上网知道消息,那么将会达到交通尖峰时段!也就是说,这200 个人同时要来使用这 150 个 IP ,有可能吗?当然不可能!肯定会有 50 个人无法联机,因为『<font color="#000066">很抱歉!目前系统正在忙线中,请您稍后再拨!</font>』那怎么办?这个时候租约到期的方式就很有用处啦!那几个已经联机进来很久的人,就会因为租约到期而被迫离线,这个时候该IP 就会被释放出来,哈哈!大家赶快抢呀!先抢到先赢喔!所以,那 50 个人 (包括被迫离线的那个朋友 ) 只好继续的、努力的、加油的来进行 DHCP 的要求啰!^_^""<br> <br>虽然说是优点,但是其实如果站在使用者的角度来看,还是可能会造成公愤的!凭什么大家一起交钱,我先联机进来就需要先被踢出去?~呵呵!这个在早期Hinet 就是这点被骂的要死!为什么呢?因为他的 ADSL 拨接制,似乎真的就有这个租约到期的问题,限制的时间似乎是24 小时的样子!所以,使用 Hinet ADSL 拨接制的朋友,每 24 小时就要忍受一次断线!我没有使用过Hinet 的 ADSL 拨接制,网络上的朋友确实有响应这样的事情,但是我不确定现在(2003/03/15 )Hinet 是否还是用这套设定值?这样您可以了解租约到期的行为了吗?!^_^<br> <br><b><font color="#000099">关于 DHCP 主机个数:</font></b><br>或许您曾经发现过一件事情,那就是,当我的网域里面有两部以上的 DHCP 主机时,到底哪一部主机会设定我的这部Client 端计算机?呵呵!很抱歉,俺也不晓得!因为在网络上面,很多时候都是『先抢先赢』的,同样的,DHCP 的回应也是如此!当 Server1 先响应时,您使用的就是 Server1 所提供的网络参数内容,如果是Server2 先响应,您就是使用 Server2 的参数来设定您的 PC !不过,前提之下当然是这些计算机的『物理联机』都是在一起的啊!<br> <br><hr width="100%"><a name="theory_WhentouseDHCP"></a> <font size="+1" color="#000099">什么时候需要DHCP ?</font><br> <br>什么时候才需要架设 DHCP 呢?是否每个人都最好架设一部 DHCP 主机呢?那可就见仁见智啦!接下来要告知大家的是几个概念性的问题,您倒不一定『必需』遵守底下的一些概念呢!反正,自己的网域自己『爽』就好啦!<br> <ul><li><font color="#000099">什么时候最好使用 DHCP ?</font></li><br>在某些情况之下,倒是强烈的建议架设 DHCP 主机的!什么情况呢?例如:<br> </ul><ul><ol><li><font color="#000066">您的公司内部很多 Notebook 计算机使用的场合!因为这种NoteBook 本身就是移动性的装置,如果每到一个地方都要去问人家『喂!您这边的网络参数是什么?』还得要担心是否会跟人家的IP 相冲突等等的问题!这个时候,DHCP 可就是您的救星啰!因为 Notebook 在使用上,当设定为DHCP client 的时候,那么只要他连接上的网域里面有一部可以动作的 DHCP ,那么那部notebook 就可以连接上 Internet 了!真好,不是吗?!</font></li><br><font color="#000066"> </font><li><font color="#000066">网域内计算机数量相当的多时:另外一个情况就是您所负责的网域内计算机数量相当庞大时,大到您没有办法一个一个的进行说明来设定他们自己的网络参数,这个时候为了省麻烦,还是架设DHCP 来的方便吶!况且,维护一部您熟悉的 DHCP 主机,要比造访几十个不懂计算机的人要简单的多哩!^_^</font></li></ol><font color="#000066"> </font><li><font color="#000099">什么情况下不建议使用 DHCP 主机?</font></li><br>虽然 DHCP 有很多好处,但是您有没有发现一个步骤怪怪的呀!回头看一下那个步骤一,Client 在开机的时候会主动的发送讯息给网域上的所有机器,这个时候,如果网域上就是没有DHCP 主机呢?很抱歉,那么您的这部 Client 端计算机,『仍然会持续的发送讯息!』真正的时间与次数我不晓得会有多久,不过,肯定会超过30 秒以上,甚至可以达到一分钟以上!哇!那么这段时间您能干嘛?呵呵!除了等、还是等!所以啰,如果计算机数不多,还是使用手动的方式来设定一下就好了!方便嘛!<br> </ul><ul><ol><li><font color="#000066">在您网域内的计算机,有很多机器其实是做为主机的用途,很少Client 需求,那么似乎就没有必要架设 DHCP ;</font></li><br><font color="#000066"> </font><li><font color="#000066">更极端的情况是,像一般家里,只有 3 ~ 4 部计算机,这个时候,架设DHCP 只能拿来练练功力,事实上,并没有多大的效益;</font></li><br><font color="#000066"> </font><li><font color="#000066">当您管理的网域当中,大多网络卡都属于老旧的型号,并不支援DHCP 的协定时;</font></li><br><font color="#000066"> </font><li><font color="#000066">很多使用者的信息知识都很高,那么也没有需要架设 DHCP啦。</font></li></ol></ul> <br>如前所述,上面的都是概念性的说法,事实上,一件事情的解决之道是有很多的方案的,没有所谓的『完全正确』的方案,只有『相对可行、并且符合经济效益与功能』的方案!所以啰,架设任何网站之前,请先多评估评估吶!</ul><hr width="100%"><a name="package"></a><font size="+1" color="#000099">套件安装:</font><blockquote>在 Linux 上面 DHCP 套件的安装也是很简单的,不需要以 Tarball来安装啦!直接拿出您的原版光盘, mount 他,并且找到 dhcp 字样的套件,使用RPM 安装好就好了!以 mandrake 9.0 及 Red Hat 9 为例的话,您需要的 DHCP套件为:<br> <table bgcolor="#000000" border="1" cols="1" width="550"><tbody><tr><td><font size="-1" color="#ff6666" face="SimSun"># 在 Mandrake9.0 当中:</font><br><font size="-1" face="SimSun"><font color="#ffffff">[root@testroot]# </font><font color="#ffff00">rpm -qa | grep dhcp</font></font><br><font size="-1" color="#ffffff" face="SimSun">dhcp-server-3.0-1rc9.2mdk</font><br><font size="-1" color="#ffffff" face="SimSun">dhcp-common-3.0-1rc9.2mdk</font><br><font size="-1" color="#ffffff" face="SimSun">dhcp-client-3.0-1rc9.2mdk</font><br><font size="-1" color="#ffffff" face="SimSun"> </font><br><font size="-1" color="#ff6666" face="SimSun"># 在 Red Hat9 当中:</font><br><font size="-1" face="SimSun"><font color="#ffffff">[root@testroot]#</font><font color="#ffff00"> rpm -qa | grep dhcp</font></font><br><font size="-1" color="#ffffff" face="SimSun">dhcp-3.0pl1-23</font><br><font size="-1" color="#ffffff" face="SimSun">dhcp-devel-3.0pl1-23</font></td></tr></tbody></table> <br>看到了吧!我们需要的套件在不同的 Linux 版本上面会有些许的差异喔!如果是Mandrake 系列的话,DHCP 套件档案总数会有三个啰!如果没有安装的话,请拿出您的原板光盘(不论是那个Linux distribution ,应该都是这三个套件名称啦!只是后面的版本可能不一样就是了!但是,需要注意的是,在Red Hat 上面,这三个套件被整合成为一个,亦即是 dhcp-xxxx.rpm 的档案就是了!),先挂载上去,然后就以rpm 给他安装啦!什么?不知道如何搞定 RPM ?唉啊!又得拿出『<a href="http://linux.vbird.org/linux_basic/">鸟哥的Linux 私房菜 -- 基础学习篇</a>』好好的 K 一 K 『 <a href="http://linux.vbird.org/linux_basic/0520rpmtarball.php">RPM与 Tarball 的使用</a>』。另外,如果在系统当中没有找到 dhcp 套件的话,还可以使用前面<a href="http://linux.vbird.org/linux_server/0220upgrade.php">网络升级套件</a>章节提到的 apt-get 或者是 urpmi 都是很好的安装方式吶! ^_^</blockquote><hr width="100%"><a name="dhcp_server"></a><font size="+1" color="#000099">设定DHCP Server:</font><ul><hr width="100%"><a name="dhcp_server_package"></a><font color="#000099">DHCP套件结构</font><br> <br>在 DHCP 的套件结构当中,也是仅有一个设定档。这个设定档不见得会存在喔!也是需要我们手动来建立的吶!谈一谈先:<br> <ul><li><b><font color="#000066" face="SimSun">/etc/dhcpd.conf</font></b>:这个就是dhcp 的主要设定档咯!这个档案不见得会存在,请手动来建立喔!另外,其实每个
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -