ChinaUnix.net
 >> ChinaUnix.net > Linux

在unix/linux下安装配置DHCP服务(转载)

作者:lonelykiller     发表时间:2002/02/23 04:43pm

大多数的情况下Linux作为DHCP服务器而windows 95/98作为DHCP客户。Linux也可以作为DHCP客户,即你要安装dhcpcd rpm 软件包 ,Linux作为DHCP服务器,只需要安装dhcpd rpm 包。

  一.DHCP服务器工作的前提条件:

  为了使DHCP服务器为windows机器服务,你可能需要创建一个到地址255.255.255.255的路由,加这条路由命令到/etc/rc.d/rc.local使得每次启动后自动运行。

  #route add -host 255.255.255.255 dev eth0

  如果报告错误消息:255.255.255.255:Unkown host

  试着加下面的入口到/etc/hosts文件:

  #route add -host dhcp dev eth0 。

  二.DHCPd后台程序总是读取配置文件/etc/dhcpd.conf, 下面给出一个DHCP配置文件的例子:

  #Sample /etc/dhcpd.conf

  default-lease-time 1200;

  max-lease-time 9200;

  option subnet-mask 255.255.255.0;

  option broadcast-address 192.168.1.255;

  option routers 192.168.1.254;

  option domain-name-servers 192.168.1.1,192.168.1.2;

  option domain-name "mydomain.org";

  subnet 192.168.1.0 netmask 255.255.255.0 {

  range 192.168.1.10 192.168.1.100;

  range 192.168.1.150 192.168.1.200;

  }

  这将允许DHCP服务器分配两段地址范围给客户192.168.1.10-100或者192.168.1.150-200,如果客户不继续请求DHCP地址则1200秒后释放IP地址,否则最大允许租用的时间为9200秒。

  服务器发送下面的参数给DHCP客户机:用255.255.255.0作为子网掩码,用192.168.1.255作为广播地址,用192.168.1.254作为默认网关,用192.168.1.1 and 192.168.1.2作为DNS服务器如果你要为windows客户指定一个WINS服务器,你需要包括下面的选项到dhcpd.conf文件中:option netbios-name-servers 192.168.1.1。

  三.你也能为某块网卡指定固定的IP地址,无论何时,这块网卡将总是从DHCP服务器获得固定的IP地址,加下面的语句到/etc/dhcpd.conf:

  host haagen {

  hardware ethernet 08:00:2b:4c:59:23;

  fixed-address 192.168.1.222;

  }

  也可连写为一行:

  host Jephe {hardware ethernet 00:a0:c9:a6:96:33;fixed-address 192.168.1.12;}

  你也可为某台机器指定不同的网关地址,名服务器等:

  host Jephe {hardware ethernet 00:a0:c9:a6:96:33;fixed-address 192.168.1.12;option routers 192.168.11.5;}

  四. 大多数情况下,DHCP的安装不创建一个dhcpd.leases 文件,在你启动DHCP服务器之前,你必须创建空文件dhcpd.leases:

  #touch /var/state/dhcp/dhcpd.leases

  为启动DHCP服务器,简单地打入 /usr/sbin/dhcpd 或者用#ntsysv把DHCP服务自动启动,这将启动dhcpd在eth0设备上;如果你想在eth1设备上启动dhcpd,则#/usr/sbin/dhcpd eth1;如果为了调试DHCP,则用#/usr/sbin/dhcpd -d -f。

  五.两块网卡的情况:

  有时你需要在一台安装了两块网卡(作防火墙或网关)的机器上安装DHCP服务,下面的例子指出一台防火墙机器上的一种DHCP设置,因为对外的网卡(internet)不需要提供DHCP服务。

  因此这样设置如下:

  subnet 192.168.1.0 netmask 255.255.255.0 {

  range 192.168.1.2 192.168.1.4;

  default-lease-time 86400;

  max-lease-time 259200;

  option subnet-mask 255.255.255.0;

  option broadcast-address 192.168.1.255;

  option routers 192.168.1.254;

  option domain-name-servers 192.168.1.254;

  }

  subnet 202.102.34.102 netmask 255.255.255.255 {

  }

  六. FAQ

  a. 为MAC机器固定IP地址?

  当设置MAC机用DHCP功能获得IP地址后,如不知得到何地址,可在MAC机上发送一邮件出去,收信者可通过mail header检查发送者IP地址,而后ping 该IP地址再利用arp命令检查arp缓存中的该IP地址的对应物理地址。

  b. 若LAN上有windows机器装上了某DHCP功能的软件,如sygate, wingate之类,则可能其他windows客户会优先去寻找windows DHCP服务器,而不是Linux DHCP服务器。
                                     :em26:


此文章相关评论:
该文章有9个相关评论如下:(点这儿可以发表评论)
Xmas128 发表于: 2002/02/25 05:25pm
好的

丁一下

 
derick 发表于: 2002/03/03 07:49pm
各位高手请问unix操作系统turbo c在哪里能下载?
:em27:
 
wind521 发表于: 2002/03/04 08:26am
好像是没有吧!应该是GCC吧!
 
xunle 发表于: 2002/10/01 09:15am
这是低版本的,高版本的据我的经验,配置有点不同。
 
joycenq 发表于: 2002/12/17 11:08am
我看了你们上面说的那个配置dhcp但还是配不出来,请问一下,dhcp rpm包到底应该放在那个根目录下呢,下载的包应该怎么样安装呢。谢谢了  
 
suni 发表于: 2002/12/17 11:17am
man rpm
 
joycenq 发表于: 2002/12/17 11:20am
dhcpd.conf 一定要放 在etc目录下吗
 
feeling 发表于: 2002/12/17 01:19pm
linux下使用DHCP作为客户端的话,可以用 dhclient 来重新获取动态IP地址
 
frankzh 发表于: 2002/12/17 01:35pm
请教:如果我想让dhcp指定在某快网卡分配的话。
请问你是怎样解决的呢? 比如我要指定从eth1或者是eth0这块网卡分配出去呢?
 
 

Copyright © ChinaUnix.net  *  转载请注明出处及作者