#;作者:;OLS3;(卧龙小三)
#;本讲义仅供教育单位参考.
#;本讲义主要供台南县各中小学校网管人员参考备查.
#;作者保有一切形式的着作权.
#;欲作其它用途者,;需经作者授权同意.
#;未经作者授权同意之前,;请勿转载刊登.
架设;DHCP;Server;
前言:
DHCP;是;Dynamic;Host;Configuration;Protocol;的简称,;主要用来简化网管在:;工作站/主机网路组态设定方面的;"烦覆";问题,;俗称:;"动态分配;IP".
相对於动态分配的机制,;而使用人工手动的方式,;一台一台去设定,;则称为静态设置.
静态设置是相当没有效率的.;
试想:;如果一个网段中,;有几百部工作站,;用人工手动方式静态设置,;不累死才怪,;况且,;将来,;若欲更动网路组态,;也极不方便!
因此之故,;通常在网管工作中,;DHCP;Server;是一项十分重要的架设服务.;
以往,;学校的;DHCP;Server;大多架在;NT/W2K;上,;但效能及稳定性不是很好,
因此,;以下介绍;DHCP;Server;在;RedHat;Linux;上的架设.;
本文不讲太多理论,;以容易架起为原则.
所需套件:;
dhcp-2.0-5.i386.rpm;(RedHat;6.2)
dhcp-2.0-12.i186.rpm;(RedHat;7.0)
dhcp-2.0-12.i386.rpm;(CLE;1.0)
dhcp-2.0p15-4.i386.rpm(RedHat;7.1)
请根据您的;Linux;版本来挑选;dhcp;Server;的套件吧.
架设:
在;RedHat;Linux;上,;架设;DHCP;Server;是非常简单的!
1.;安装:
(a);rpm;-ivh;dhcp-2.0-5.i386.rpm
(b);之後,;查看一下,;到底这个套件在主机中安置了那些档案?
rpm;-ql;dhcp;|;more
会得到以下列表:
/etc/rc.d/init.d/dhcpd
/usr/doc/dhcp-2.0
/usr/doc/dhcp-2.0/CHANGES
/usr/doc/dhcp-2.0/README
/usr/doc/dhcp-2.0/RELNOTES
/usr/doc/dhcp-2.0/dhcpd.conf.sample
/usr/man/man5/dhcp-options.5.gz
/usr/man/man5/dhcpd.conf.5.gz
/usr/man/man5/dhcpd.leases.5.gz
/usr/man/man8/dhcpd.8.gz
/usr/man/man8/dhcrelay.8.gz
/usr/sbin/dhcpd
/usr/sbin/dhcrelay
/var/state/dhcp;
其中,;比较重要的有二个:;
其一是,;/etc/rc.d/init.d/dhcpd;,;它可用来控制;dhcp;server;的行为,;如:
启动:;/etc/rc.d/init.d/dhcpd;start
停止:;/etc/rc.d/init.d/dhcpd;stop
重新启动:;/etc/rc.d/init.d/dhcpd;restart
观察运作状况:;/etc/rc.d/init.d/dhcpd;status
另外一个是,;/usr/doc/dhcp-2.0/dhcpd.conf.sample
(RedHat;7.0;在;/usr/share/doc/dhcp-2.0;中)
顾名思义,;这是一个;dhcp;server;的设定档本,;等一下我们要将它;copy;到;/etc;下,;并且命名为;dhcpd.conf.
(c);cp;/usr/doc/dhcp-2.0/dhcpd.conf.sample;/etc/dhcpd.conf
2.;设定:
接着,;便可开始针对;dhcp;server;的设定档;/etc/dhcpd.conf;来做设定的工作.
以下是该档的原始内容:
subnet;192.168.0.0;netmask;255.255.255.0;{
#;---;default;gateway
option;routers 192.168.0.1;
option;subnet-mask 255.255.255.0;
option;nis-domain "domain.org";
option;domain-name "domain.org";
option;domain-name-servers 192.168.1.1;
option;time-offset -5; #;Eastern;Standard;Time
# option;ntp-servers 192.168.1.1;
# option;netbios-name-servers 192.168.1.1;
#;---;Selects;point-to-point;node;(default;is;hybrid).;Don't;change;this;unless
#;--;you;understand;Netbios;very;well
# option;netbios-node-type;2;
range;dynamic-bootp;192.168.0.128;192.168.0.255;
default-lease-time;21600;
max-lease-time;43200;
#;we;want;the;nameserver;to;appear;at;a;fixed;address
host;ns;{
next-server;marvin.redhat.com;
hardware;ethernet;12:34:56:78:AB:CD;
fixed-address;207.175.42.254;
}
}
请将它修改成:;(以昭明国中为例,;该校为;1/2;C;前半)
subnet;163.26.167.0;netmask;255.255.255.128;{
#;---;default;gateway
#;路由器;IP
option;routers 163.26.197.126;
#;网路遮罩
option;subnet-mask 255.255.255.128;
#;Domain;
option;domain-name "jmjh.tnc.edu.tw";
#;指定要分派那几台;DNS;Server;来提供服务?
option;domain-name-servers 163.26.167.1,;163.26.200.1,;168.95.1.1;
option;time-offset -5; #;Eastern;Standard;Time
#;动态分配;IP;围
range;dynamic-bootp;163.26.167.50;163.26.167.100;
#;IP;租约时间
default-lease-time;21600;
max-lease-time;43200;
#;将贵校的;DNS;主机设定在固定;IP
#;we;want;the;nameserver;to;appear;at;a;fixed;address
host;ns;{
next-server;dns.jmjh.tnc.edu.tw;
hardware;ethernet;12:34:56:78:AB:CD;
fixed-address;163.26.167.1;
}
}
上面的设定中,;请您依贵校组态,;自行修改之.;
要注意的是:
(a);host;ns;{;
next-server;dns.jmjh.tnc.edu.tw
hardware;ethernet;12:34:56:78:AB:CD;;--->;这个是;DNS;主机网路卡的编号(6;bytes),;请用;ifconfig;来查询,;如下所示:
fixed-address;163.26.167.1
}
ifconfig;得:
eth0;;;;;;Link;encap:Ethernet;;HWaddr;48:54:E8:26:CC:C9
inet;addr:163.26.167.1;;Bcast:163.26.167.127;;Mask:255.255.255.128
UP;BROADCAST;RUNNING;MULTICAST;;MTU:1500;;Metric:1
RX;packets:762193;errors:0;dropped:0;overruns:0;frame:0
TX;packets:555401;errors:0;dropped:0;overruns:0;carrier:0
collisions:0;txqueuelen:100
Interrupt:11;Base;address:0x8000
取;HWaddr;48:54:E8:26:CC:C9;的;48:54:E8:26:CC:C9;
填入上面的;hardware;ethernet;设定中即可.;
特别注意:;贵校的网卡编号(每张卡全球唯一)一定不会和此本一样,;请勿照抄此处的设定值哟!;
(b);这台;dhcp;server;可以和原有的;NT/W2K;上的;dhcp;server;共存,;但请注意,;IP;分配段最好要错开.
那麽,;到底工作站会向那一台;dhcp;server;取得动态分配呢?;
很简单,;当工作站发出要求(request)的讯息时,;谁先抢到,;就由谁先提供.
3.;执行:
/etc/rc.d/init.d/dhcpd;start
第一次执行时,;不会成功,;
若是;dhcp-2.0-5;版本,;它会出现;failed;失败的红色字串,;并警告您:
/var/state/dhcp/dhcpd.leases;这个档案不存,;因此,;您必须手动开启一个新档:
touch;/var/state/dhcp/dhcpd.leases
这个档案的用途是:;记录各工作站租赁;IP;的情形.
若是;DHCP-2.0-12;以後的版本,;则不会出现任何讯息,;您会发现它并没有运作起来.
这是因为:;此版一旦发现您没有开设此档,;便会直接跳出而不执行.;
而且此档的位置稍有不同:
它位於;/var/lib/dhcp/dhcpd.leases
OK,;手动开一下吧?!
touch;/var/lib/dhcp/dhcpd.leases
现在可以启动了,;并把它设成一开机就自动执行(linuxconf;或;ntsysv;皆可设定之)
/etc/rc.d/init.d/dhcpd;start
恭喜您!;贵校已拥有一个非常稳定的;DHCP;Server;了!
注意事项:
若您有架设;Linux;防火墙,;想将;DHCP;Server;由某一张网卡分配出去(一张网卡代表一个网段围),;
例如:;想由第二张网路卡;eth1;介面分配出去,;只要修改;/etc/rc.d/init.d/dhcpd;即可.;
如下所示:
将;start;daemons;的地方
由:
daemon;/usr/sbin/dhcpd;
改成:
daemon;/usr/sbin/dhcpd;eth1;
结言:
DHCP;Server;是网管工作中,;非常重要的利器,;架设二台以上备援,;也是明智的作法.
而且,;从此,;您可以不必再倚靠;NT/W2K;这种效能差又不稳定(本益比实在太低了)的系统了.;
(不必受限於某一家封闭型的公司,;又不必花大钱,;才是中小学校网路建置,;最佳的本益比选择!);
OLS3;写重感冒中...;04/28/2001
:;
我这一生中,;只有在生病和喝醉酒时,;才会比较好命一点,;可以早早睡,;且睡到自然醒.;;-)
标签: