免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1478 | 回复: 0
打印 上一主题 下一主题

三、设置DHCP服务器 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-06-12 09:26 |只看该作者 |倒序浏览
三、设置DHCP服务器
(一)创建配置文件
1、配置文件格式
DHCP端口监督程序dhcpd配置文件是/etc目录中的名为dhcpd.conf的文件。下面手工建立/etc/dhcpd.conf文件,该文件通常包括3个部分,即parameters参数、declarations声明和option选项。
配置文件分为两个部分,即子网配置信息和全局配置信息。
(1)子网配置信息。
  一个子网声明以“subset”关键字开始,所以子网信息包括在{}中。{}中的配置信息只对该子网有效,会覆盖全局配置。
(2)全局配置信息。
  所有子网以外的配置都是全局配置,如果同一个全局配置没有被子网配置覆盖,则其将对所有子网生效。
(1)DHCP配置文件中的parameters
  parameters表明如何执行任务,以及是否要执行任务或将哪些网络配置选项发送给客户端,主要参数如表所示。
   
参    数
解    释
ddns-update-style
配置DHCP-DNS互动更新模式
default-lease-time
指定默认租赁时间的长度,单位是秒
max-lease-time
指定最大租赁时间长度,单位是秒,
hardware
指定网卡接口类型和MAC地址
server-name
通知DHCP客户端服务器名称
get-lease-hostnames flag
检查客户端使用的IP地址
fixed-address ip
分配给客户端一个固定的地址
authritative
拒绝不正确的IP地址的要求
     
2)DHCP配置文件中的declarations
declarations用来描述网络布局及提供客户的IP地址等,主要声明如下

声    明
解    释
shared-network
用来告知是否一些子网络共享相同网络
subnet
描述一个IP地址是否属于该子网
range起始IP终止IP
提供动态分配IP的范围
host主机名称
参考特别的主机
Group
为一组参数提供声明
allow unknown-clients﹔
deny unknown-client
是否动态分配IP给未知的使用者
allow bootp;deny bootp
是否响应激活查询
allow booting﹔deny booting
是否响应使用者查询
Filename
开始启动文件的名称,应用于无盘工作站
next-server
设置服务器从引导文件中装入主机名,应用于无盘工作站

(3)DHCP配置文件中的option
option用来配置DHCP可选参数,全部用option关键字作为开始,主要选项如表所示。
选 项
解释
subnet-mask
为客户端设定子网掩码
domain-name
为客户端指明DNS名字
domain-name-servers
为客户端指明DNS服务器的IP地址
host-name
为客户端指定主机名称
routers
为客户端设定默认网关
broadcast-address
为客户端设定广播地址
ntp-server
为客户端设定网络时间服务器的IP地址
time-offset
为客户端设定格林威治时间的偏移时间,单位是秒
  
2、开始配置
Dhcp的配置文件是/etc/dhcpd.conf ,并假设整个网络所在的域名:example.com。

#定义DHCP客户使用的DNS 服务器,多个DNS请使用逗号分割
option domain-name-servers 192.168.0.17, 203.56.8.1;
#客户端IP租约的默认期限
default-lease-time 259200;   
#客户端IP租约的最高期限,客户端用于无法从服务器获得任何信息的时间,超过该时间则会
丢弃之前从该DHCP服务器获得的所有信息,而转向使用OS的默认设置。
max-lease-time 777600;
#第一和第二行我定义出客户端IP租约的默认期限和最高期限﹐数值以秒来计算﹐也就是
三天’和‘九天’

#定义DHCP客户使用的NIS的域名
option nis-domain  "domain.org";
#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;

#定义DHCP客户设置与格林威治时间的偏移差
option time-offset  -18000; # Eastern Standard Time

#指定客户端更新IP对应的域名信息所使用的方法,。
#支持DNS动态更新
ddns-update-style interim;        
#忽略客户端更新DNS记录
ignore client-updates;               


#设置用于定义服务器从引导文件装入的主机名,一般不用(仅用于设置无盘工作站)
#next-server marvin.redhat.com;

#为提供DHCP服务的第一块网卡设置这个网卡所在网段的相关配置信息。
subnet 192.168.0.0 netmask 255.255.255.0 {
#定义这个网段的需要分配的DHCP 地址池,范围是192.168.0.21到192.168.0.30;
#这里采用的是动态分配方式。
range dynaic-bootp 192.168.0.21 192.168.0.30;
#定义这个网段的需要分配的DHCP 地址池,范围是192.168.0.121到192.168.0.230;
#这里采用的是自动分配方式。
range 192.168.0.121 192.168.0.230;
#设置这个网段的子网掩码,注意是否和上面的netmask相同?
option subnet-mask 255.255.255.0;
#这个网卡所在网段的域名,也就是定义DHCP客户所在域名
option domain-name "a.example.com";
#定义这个网段的广播地址
option broadcast-address 192.168.0.255;
#定义这个网段的默认的路由器,多个路由器请使用逗号分割
option routers 192.168.0.17;

#为pii266 这台主机永远都使用一个固定的 IP 地址(不受DHCP影响)。这可以应用在服务器使用固定的IP地址的情况下。
host pii266 {
# pii266的MAC地址
hardware ethernet 48:54:E8:27:75:77;
# pii266的固定的IP地址,注意这里的IP地址不能在上面的scope范围内!
fixed-address 192.168.0.15;
}
}

#为提供DHCP服务的第二块网卡设置这个网卡所在网段的相关配置信息
subnet 203.30.35.128 netmask 255.255.255.224 {
range 203.30.35.140 203.30.35.157;
option domain-name " b.example.com ";
option broadcast-address 203.30.35.159;
option routers 203.30.35.134
}

(二)为DHCP运行,创建必要的环境
1、建立客户端租约文件
  运行DHCP服务器还需要一个名为“dhcpd.leases”的文件,其中保存所有已经分发的IP地址。在Red Hat Linux发行版本中,该文件位于/var/lib/dhcp/目录中。如果通过RPM安装ISC DHCP,那么该目录应该已经存在。dhcpd.leases的文件格式为:
Leases address {statement}
一个典型的文件内容如下:

lease 192.168.1.255 {             #DHCP服务器分配的IP地址#
  starts 1 2005/05/02 03:02:26;    # lease 开始租约时间#
  ends 1 2005/05/02 09:02:26;       # lease 结束租约时间#
  binding state active;
  next binding state free;
  hardware ethernet 00:00:e8:a0:25:86;  #客户机网卡MAC地址#
  uid "\001\000\000\350\240%\206";   #用来验证客户机的UID标志#
  client-hostname "cjh1";    #客户机名称#
}

注意:lease开始租约时间和lease结束租约时间是格林威治标准时间(GMT),不是本地时间。
第1次运行DHCP服务器时,dhcpd.leases是一个空文件,也不用手工建立。如果不是通过RPM安装ISC DHCP,或者dhcpd已经安装,那么应该试着确定dhcpd将其lease文件写到何处并确保该文件存在。也可以手工建立一个空文件:

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




本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/98018/showart_1962458.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP