Linux下配置完整安全的DHCP服务器详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux下配置完整安全的DHCP服务器详解

来源:Linux技术中坚站作者:赛迪网曹江华等级:默认等级

发布于2005-06-01 22:55 被读39078次【字体:大中小】

DHCP是动态主机配置协议。这个协议用于向计算机自动提供IP地址,子网掩码和路由信息。网络管理员通常会分配某个范围的IP地址来分发给局域网上的客户机。当设备接入这个局域网时,它们会向DHCP 服务器请求一个IP 地址。然后DHCP服务器为每个请求的设备分配一个地址,直到分配完该范围内的所有IP 地址为止。已经分配的IP地址必须定时地延长借用期。这个延期的过程称作leasing,确保了当客户机设备在正常地释放IP地址之前突然从网络断开时被分配的地址可以归还给服务器。本文以Redhat Linux 9.0为例,介绍如何建立一个完整和安全的DHCP服务器。

一、建立DHCP服务器配置文件

可以使用Redhat Linux 9.0自身携带rpm包安装。安装结束后, DHCP 端口监督程序dhcpd配置文件是/etc目录中的名为dhcpd.conf的文件。下面手工建立/etc/dhcpd.conf文件。

/etc/dhcpd.conf通常包括三部分:parameters、declarations 、option。

1.DHCP配置文件中的parameters(参数):表明如何执行任务,是否要执行任务,或将哪些网络配置选项发送给客户。主要内容见表1

参数解释

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 (声明):用来描述网络布局、提供客户的IP地址等。主要内容见表2:

3. DHCP配置文件中的option(选项):用来配置DHCP可选参数,全部用option关键字作为开始,主要内容包括见表3:

注意:如果客户端使用的是视窗操作系统,不要选择"host-name"选项,即不要为其指定主机名称。

下面是一个笔者使用的DHCP配置文件,这是一个C类网络,共126个IP地址可以分配的例子。读者可以复制后使用,注意红色部分是必须要修改的。

ddns-update-style interim;

ignore client-updates;

subnet 192.168.1.0 netmask 255.255.255.0 {

option routers 192.168.1.254;

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.1.255;

option domain-name-servers 192.168.1.3;

option domain-name "";#DNS名称#

option domain-name-servers 192.168.1.3;

option time-offset -18000;

range dynamic-bootp 192.168.1.128 192.168.1.255;

default-lease-time 21600;

max-lease-time 43200;

host ns {

hardware ethernet 52:54:AB:34:5B:09;#运行DHCP的网络接口的MAC地址#

fixed-address 192.168.1.9;

}

}

二、建立客户租约文件

运行DHCP服务器还需要一个名为dhcpd.leases 的文件,保持所有已经分发出去的IP 地址。在Redhat 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 "%content%01%content%00%content%00\350\240%\206"; #用来验证客户机的UID标示#

client-hostname "cjh1"; #客户机名称#

}

注意lease 开始租约时间和lease 结束租约时间是格林威治标准时间(GMT),不是本地时间。

第一次运行DHCP服务器时dhcpd.leases是一个空文件,也不用手工建立。如果不是通过RPM 安装ISC DHCP,或者dhcpd 已经安装,那么您应该试着确定dhcpd 将其lease 文件写到何处,并确保该文件存在。也可以手工建立一个空文件:

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

三、启动和检查DHCP服务器

使用命令启动DHCP服务器:

#service dhcpd start

使用ps命令检查dhcpd进程:

#ps -ef | grep dhcpd

相关文档
最新文档