搜索
您的当前位置:首页正文

校园网DHCP服务器的配置

2023-06-14 来源:步旅网


天津电子信息职业技术学院 暨国家示范性软件职业技术学院

课 程 设 计

课 程: 实训题目: 系 别: 专 业: 班 级: 姓 名: 指导教师:

网络管理综合实训

《校园网DHCP服务器的配置》

网络技术系 计算机网络技术专业

网络S09-4 韩超(1) 闫明

设计时间: 2011年11月28日--2011年12月30日

《校园网DHCP服务器的配置》

专业:计算机网络技术 班级: 网络S09-4 姓名: 韩超 指导教师: 闫明 日期:2011年12月30日

天津电子信息职业技术学院

(暨国家示范性软件职业技术学院)

2

校园网DHCP服务器的配置

韩超 目录

1 DHCP服务概述 ...............................................................................................................错误!未定义书签。

1.1 DHCP的概述 .............................................................................................. 错误!未定义书签。

1.1.1 DHCP分配地址的方式................................................................... 错误!未定义书签。 1.2 DHCP的工作过程 ...................................................................................... 错误!未定义书签。

1.2.1 寻找DHCP服务器 ......................................................................... 错误!未定义书签。 1.2.2 分配IP地址 ................................................................................. 错误!未定义书签。 1.2.3 接收IP地址 ................................................................................. 错误!未定义书签。 1.2.4 IP地址分配确认 .......................................................................... 错误!未定义书签。 1.2.5 重新登录 ....................................................................................... 错误!未定义书签。 1.2.6 更新租约 ....................................................................................... 错误!未定义书签。

2 DHCP服务器的搭建 .......................................................................................................错误!未定义书签。

2.1 安装DHCP服务器 ..................................................................................... 错误!未定义书签。

2.1.1 DHCP服务器安装软件版本 ........................................................... 错误!未定义书签。 2.1.2 DHCP的安装 .................................................................................. 错误!未定义书签。 2.2 DHCP服务器配置文件介绍....................................................................... 错误!未定义书签。

2.2.1主配置文件dhcpd.conf ................................................................ 错误!未定义书签。 2.2.2 常用参数介绍 ............................................................................... 错误!未定义书签。 2.2.3 常用选项介绍 ............................................................................... 错误!未定义书签。 2.2.4 常用声明介绍 ............................................................................... 错误!未定义书签。 2.2.5 租约数据库文件 ........................................................................... 错误!未定义书签。 2.3 应用实例 ................................................................................................... 错误!未定义书签。

2.3.1 设置服务器的静态IP地址。 ...................................................... 错误!未定义书签。 2.3.2 编辑主配置文件dhcpd.conf。 ................................................... 错误!未定义书签。 2.3.3 用service dhcpd restart命令重新启动服务器 .................... 错误!未定义书签。 2.3.4 验证测试 ....................................................................................... 错误!未定义书签。 2.4 启动和检查DHCP服务器 ......................................................................... 错误!未定义书签。

2.4.1 启动/停止DHCP服务 ................................................................... 错误!未定义书签。 2.4.2 使用ps命令检查dhcpd进程 ...................................................... 错误!未定义书签。 2.5 配置DHCP客户端 ..................................................................................... 错误!未定义书签。

2.5.1 Linux客户端配置 ........................................................................ 错误!未定义书签。 2.5.2 Windows客户端配置 .................................................................... 错误!未定义书签。

3 管理和维护DHCP服务器 ..............................................................................................错误!未定义书签。

3.1 DHCP服务器常见故障排除....................................................................... 错误!未定义书签。

3.2 DHCP服务器的安全 ................................................................................ 错误!未定义书签。

引言:

随着互联网的普及,人们的工作,学习和生活与网络联系越来越紧密,搭建了许多不同的网络。网络管理是大型计算机网络成功的关键因素,利用DHCP服务已经显得相当流行。构建DHCP服务器需要一个稳定的操作系统和服务器软件。在操作系统的竞争之中,Linux以“免费,高效,稳定,跨平台”的特点,迅速地占领了一些其他商业操作系统市场。而Red hat Linux操作系统经过一段时间的发展已经成为一个主要的Linux发行版本,Red Hat Linux中附带的DHCP服务也是目前Internet上最上欢迎的动态IP地址分配服务器。本文以企业网的DHCP服务器为基础,一步步地描述DHCP服务器的构建过程。

1 DHCP服务概述

1.1 DHCP的概述

DHCP是“动态主机配置协议(Dynamic Host Configuration Protocol)的简写,主要是用来给网络客户机分配动态的IP地址。一台DHCP服务器可以让网络管理员集中指派和指定全局的或子网特有的TCP/IP参数供整个网络使用。客户机不需要手动配置TCP/IP,并且当客户机断开与服务器的连接后,旧的IP地址将被释放以便重新使用。有了DHCP服务器,它就能激活“从DHCP服务器获得IP地址“选项,此时DHCP服务器就接管了对工作站的TCP/IP进行适当配置的责任,这也有助于大幅度降低网络维护和管理的耗费。 1.1.1 DHCP分配地址的方式

DHCP服务器有3种为DHCP客户机分配TCP/IP地址的方式:

1、自动分配(Automatic Allocation):当DHCP客户机第一次向DHCP服务器租用到IP地址后,这个地址就永久的分配给了该DHCP客户机。

2、动态分配(Dynamic Allocation):当DHCP客户机向DHCP服务器租用IP地址时,DHCP服务器只是暂时分配给客户机一个IP地址。只要租约到期,这个地址就会还给DHCP服务器。如果DHCP客户机仍需要一个IP地址来完成工作,则可以再要求另外一个IP地址。

3、手动分配:在手工分配中,当DHCP客户机要求网络服务时,DHCP服务器把网络管理员手工配置的IP地址传递给DHCP客户机。

动态分配方法是唯一能够自动重复使用IP地址的方法,它对于暂时连接到网上的DHCP客户机来说尤其方便,对于永久性与网络连接的新主机来说也是分配IP地址的好方法。同时还可以

0

解决IP地址不够用的困扰。 1.2 DHCP的工作过程

DHCP分为两个部分:一个是服务器端,另一个是客户端。根据客户端是否第一次登录网络,DHCP的工作形式会有所不同。客户端从DHCP服务器上获得IP地址的整个过程分为以下6个步骤。

1.2.1 寻找DHCP服务器

当DHCP客户端第一次登录网络的时候,计算机发现本机上没有任何IP地址设定,将以广播方式发送DHCP discover发现信息来寻找DHCP服务器。网络上每一台安装了TCP/IP协议的主机都会接收到这种广播,但只有DHCP服务器才会做出响应。

图1 DHCP DISCOVER

1.2.2 分配IP地址

在网络中接收到DHCP discover发现信息的DHCP服务器都会做出响应,向DHCP客户机发送一个包含尚未出租的IP地址和其他设置的DHCP offer提供信息。

1

图2 DHCP OFFER

1.2.3 接收IP地址

DHCP客户端接收到DHCP offer提供信息之后,选择第一个接收到的提供信息,然后以广播方式回答一个DHCP request请求信息,该信息中包含向它所选定的DHCP服务器请求IP地址的内容。

图3 DHCP REQUEST

1.2.4 IP地址分配确认

当DHCP服务器收到DHCP客户机回答的DHCP request请求信息之后,便向DHCP客户端发送一个包含它所提供的IP地址和其他设置的DHCP ack确认信息。然后,DHCP客户机便将其TCP/IP协议与网卡绑定,未被选中DHCP服务器将收回曾提供的IP地址。 1.2.5 重新登录

当DHCP客户机每次重新登录网络时,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCP ack确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时,则DHCP服务器给DHCP客户机回答一个DHCP nack否认信息。当原来的DHCP客户机收到此DHCP nack否认信息后,它就必须重新发送DHCP discover发现信息来请求新的IP地址。 1.2.6 更新租约

DHCP服务器向DHCP客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。如果DHCP客户机要延长其IP租约,则必须更新其IP租约。DHCP客户机启动时和IP租约期限过一半时,DHCP客户机都会自动向DHCP服务器发送更新其IP租约的信息。

2

2 DHCP服务器的搭建

2.1 安装DHCP服务器

2.1.1 DHCP服务器安装软件版本

(1) dhcp-3.0.5-3.el5.i386.rpm(DHCP主程序包,包括DHCP服务和中继代理程序。安装该

软件包,进行相应配置,即可以为客户机动态分配IP地址及其他TCP/IP信息)。

(2) dhcp-devel-3.0.5-3.el5.i386.rpm(DHCP服务器开发工具软件包,为DHCP开发提供库

文件系统)。

(3) dhcpv6-0.10-33.el5.i386.rpm(DHCP的IPv6扩展工具,使DHCP服务器能够支持IPv6

的最新功能)。

(4) dhcpv6_client-0.10-33.el5.i386.rpm(DHCP客户端IPv6软件包,帮助客户端获取动

态IP地址) 2.1.2 DHCP的安装

在安装DHCP服务器之前,使用rpm –qa|grep dhcp命令检测系统是否安装了DHCP相关软件包。

图4 查看系统是否安装了DHCP相关软件包

图4所显示结果表明系统还未完全安装DHCP软件包,待安装完后再用rpm –qa命令查看。

图5 查看系统是否安装了DHCP相关软件包

从图5中可看出DHCP服务器软件包已全部安装上了。

3

2.2 DHCP服务器配置文件介绍 2.2.1主配置文件dhcpd.conf

dhcpd.conf是最核心的配置文件,它包括DHCP服务的配置信息。绝大部分的设置都需要修改该配置文件来完成。dhcpd.conf文件大致包括两个部分,分别为全局配置和局部配置。全局配置可以包含参数和选项,该部分设置对整个DHCP服务器生效。局部配置通常由声明部分表示,该部分仅对局部生效,如仅对某个IP作用有效。 dhcpd.conf文件的格式如下: #全局配置

参数或选项;//全局有效 #局部配置 声明{

参数或选项;//局部有效 }

在RH Enterprise Linux 5中dhcp的配置文件不存在,需手动建立,但主程序包安装后,会自动生成一个配置文件范本,存放于/usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample,可以用cp命令把该文件复制到/etc/目录下,然后重命名为dhcpd.conf,使用命令如下:

cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf

将范本文件复制并重命名后使用vi命令编辑/etc/dhcpd.conf文件,该文件的内容包含了部分参数,声明以及选项的用法,其中注释部分可以放在任何位置,并以“#”号开头,如下所示。 #全局配置

ddns-update-style interim;//指明DNS的更新方式 ignore client-updates;//忽略客户端机更新DNS记录 #局部配置

subnet 192.168.0.0 netmask 255.255.255.0{ //声明一个网段,该网段相当于是windows中的作用域

#---default gateway

option routers 192.168.0.1;//网关地址

option subnet-mask 255.255.255.0;//分配给客户机的netmask

option nis-domain “domain.org”;//为客户端指定所属的NIS域服务器的地址

4

option domain-name “domain.org”;//域名,要与DNS的域名保持一致 option domain-name-servers 192.168.1.1;//DNS服务器的地址

option time-offset -18000;# Eastern standard Time //为客户端设定和格林威治时间的偏移时间,单位是秒

# option ntp-servers 192.168.1.1;//为客户端设定网络时间服务器IP地址 # option netbios-name-servers 192.168.1.1;//为客户端指定WINS服务器的IP地址 #---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.254;//该网段中哪些用于对客户端

进行分配

default-lease-time 21600;//默认的租约时间 max-lease-time 43200;//最大的租约时间

# we want the nameserver to appear at a fixed address host ns{ //对主机名为ns的主机做host声明

next-server marvin.Red Hat.com;设置服务器从引导文件中装主机名,应用于无盘工作站

hardware ethernt 12:34:46:78:AB:CD;//该主机的MAC地址 fixed-address 202.185.42.254;//该地址始终分配给该主机 } }

打开dhcpd.conf文件可见原配置文件。

5

图6 dhcpd.conf文件

从上述配置文件中看出,整个配置文件分为全局和局部两个部分。 2.2.2 常用参数介绍

parameters:表明服务器如何执行任务,是否执行任务,或者将哪些网络配置选项发给客户,或者是否检查客户端所用的IP地址等。

表1 常用参数表

参数 解释 ddns-update-style(none|interim|ad-hoc) 定义所支持的DNS动态更新类型(不支持更新|DNS互动更新|特殊DNS更新) default-lease-time max-lease-time hardware fix-address ip authritative ignore client-updates server-name get-lease-hostnames flag 定义默认的IP租约时间 定义客户端IP租约时间的最大值 定义网络接口类型及硬件地址 定义DHCP客户端指定的IP地址 拒绝不正确的IP地址的需求 忽略客户端更新 通知DHCP客户服务器名称 检查客户端使用的IP地址

6

2.2.3 常用选项介绍

option:某些参数必须以option关键字开头,它们被称为选项,通常用来配置DHCP客户端的可选参数。

表2 常用选项表

选项 routers broadcast-address domain-name domain-name-servers time-offset ntp-servers host-name 2.2.4 常用声明介绍

解释 为客户端指定默认网关 为客户端设定广播地址 为客户端指定dns服务器域名 为客户端指定dns服务器的地址 为客户端设定和格林威治时间的偏移时间 为客户端设定网络时间服务器IP地址 为客户端设定主机名称 declaration:描述网络布局描述客户;提供客户的地址;或把一组参数应用到一组声明中。

表3 常用声明表

声明 subnet 网络号 netmask 子网掩码 rang 起始ip地址 结束ip地址 host 主机名称 group sunbet subnet-mask shared-network allow|deny unknown-clients allow|deny bootp allow|deny booting next-name next-server 解释 定义作用域,即指定子网 指定动态IP地址范围 用于定义保留地址 为一组参数提供声明 描述一个IP地址是否属于该子网 设置客户机的子网掩码 用来告知是否一些子网分享相同网络 是否动态分配IP给未知的使用者 是否响应激活查询 是否响应使用者查询 开始启动文件的名称,应用于无盘工作站 设置服务器,重引导文件中装入主机名,应用于无盘工作站 7

2.2.5 租约数据库文件

租约数据库文件用于保存一系列的租约声明。其中包含客户端的主机名,Mac地址,分配到的IP地址,以及IP地址的有效期等相关信息。该数据库是一个可编辑的ASCII格式文本文件。每当发生租约变化的时候,都会在文件结尾添加新的租约记录。

当DHCP被安装好后,租约数据库并不存在。然而,它在启动时却需要这个数据库。所以只需要建立一个空文件/var/lib/dhcpd.lease即可。RH Enterprise Linux 5版本在安装过DHCP后会自动建立该租约数据库文件。

当服务器正常运行后,可以使用cat命令查看租约数据库文件。 一个典型的文件内容如下:

lease 192.168.46.46.20{ //DHCP服务器分配的IP地址 starts 1 2010/12/02 03:01:15;//lease开始租约时间 ends 1 2010/12/02 09:01:15;//lease结束租约时间 binding state active; next binding state free;

hardware ethernet 00:09:73:4B:46:AC;客户机网卡MAC地址 uid “\\001\\000\\000\\350\\240%\\206”;用来验证客户机的UID标志 client-hostname “31”;客户机名称 }

注意:lease开始租约时间和lease结束租约时间是格林威治标准时间,不是本地时间。 2.3 应用实例

学校机房拥有60台计算机,所使用的IP地址段为192.168.46.1—192.168.46.254,子网掩码为255.255.255.0,网关为192.168.46.254,客户端仅使用192.168.46.10-192.168.46.200,为主机名为31,MAC地址为00:09:73:4B:46:AC的主机使用的IP地址固定IP为192.168.46.31。配置步骤:

2.3.1 设置服务器的静态IP地址。 2.3.2 编辑主配置文件dhcpd.conf。

使用vi编辑器打开dhcpd.conf文件,修改相应字段,如下所示: 1.将动态DNS的更新方式设置为none; 2.忽略客户端更新;

8

3.设置IP作用域为192.168.46.0; 4.设置默认网关为192.168.46.254; 5.设置子网掩码为255.255.255.0;

6.设置地址池,范围是192.168.46.10到192.168.46.254; 7.定义“31”主机;

8.指定以太网卡地址为00:09:73:4B:46:AC; 9.指定该客户端的IP地址为192.168.46.31。

图7 修改dhcpd.conf文件

2.3.3 用service dhcpd restart命令重新启动服务器

图8 重新启动服务器

2.3.4 验证测试

在客户机上做测试,首先修改客户端IP地址获取方式为自动获取,详细步骤见2.5.2小节Windows客户端配置。然后在31号机上打开cmd窗口,执行ipconfig命令,按Enter键确认,查看31号机上的IP地址,客户端的IP地址已经刷新为192.168.46.31。

9

图9 查看IP地址

2.4 启动和检查DHCP服务器 2.4.1 启动/停止DHCP服务

可以通过/etc/rc.d/init.d/dhcpd进行操作,也可以使用service命令。 (1)启动DHCP服务:

[root@localhost ~]service dhcpd start

[root@localhost ~]/etc/rc.d/init.d/dhcpd start (2)停止DHCP服务:

[root@localhost ~]service dhcpd stop

[root@localhost ~]/etc/rc.d/init.d/dhcpd stop (3)重启DHCP服务:

[root@localhost ~]service dhcpd restart

[root@localhost ~]/etc/rc.d/init.d/dhcpd restart

图10 重启DHCP服务器

2.4.2 使用ps命令检查dhcpd进程 [root@localhost ~]ps -ef | grep dhcpd

10

2.5 配置DHCP客户端

2.5.1 Linux客户端配置

Linux中配置DHCP客户端有两种方法:图形界面配置和手动配置。用文本方法手动配置步骤:

(1) 用文本的方式配置DHCP客户端,需要修改网卡配置文件,将BOOTPROTO项的值设置为dhcp即可。只要直接修改文件/etc/sysconfig/network-scripts/ifcfg-eth0。

图11 修改网卡配置

(2)使用ifdown和ifup命令。

图12 重新启动网卡

使用dhclient命令,则重新发送广播申请IP地址。

图13 重新发送广播申请IP地址

11

(3)使用ifconfig命令测试

图14 使用ifconfig命令测试

图14显示结果表明客户端IP地址已经有原来的192.168.46.20改为192.168.46.253。图形界面配置在终端图形界面下运行“neat”命令,出现 “网络配置”窗口。

图15 网络配置

双击文件中的“eth0”一行,进入图16所示的界面,单击“自动获取IP地址设置使用”DHCP即可。

12

图16 自动获取IP地址

2.5.2 Windows客户端配置

打开作为客户机的Windows系统,选择【网上邻居】并右击,在弹出的快捷菜单中选择【属性】命令,打开【网络连接】窗口后,选择与外部通信的【本地连接】并右击,在弹出的快捷菜单中选择【属性】命令,打开【本地连接属性】对话框后,选择【Internet协议(TCP/IP)】,单击【属性】按钮,进行TCP/IP设置。

图17 TCP/IP设置

打开【Internet协议(TCP/IP)属性】对话框后,启用客户端的DHCP功能,需要修改IP地址获取方式改为【自动获取IP地址】,保证客户端会向DHCP服务器提交请求。

13

3 管理和维护DHCP服务器

3.1 DHCP服务器常见故障排除

通常配置DHCP服务器很容易,不过,可能会由于粗心等原因导致出现一些问题。对服务器而言,要确保网卡正常工作,并具备广播功能。对客户机而言,还要确保客户机的网卡正常工作,最后,要考虑网络的拓扑,并考虑客户机向DHCP服务器发出的广播信息是否会受到阻碍。另外如果dhcpd进程没有启动,那么可以浏览syslog消息来确定是哪里出了问题。这个消息文件通常是/var/messages。

故障现象1:配置文件出错。DHCP服务器配置完成,无法启动dhcpd服务,此时可以使用dhcpd命令进行检测,如果配置错误,会出现在提示信息当中。

图18 查看无法启动原因

如图中画红线部分,提示说配置文件错误,并告诉我们错误位置在第31行,原因是没有“}”符号结束。添加后即显示为“There’s already a DHCP server running”。

故障现象2:网卡接口配置错误。配置文件错误并不是唯一导致dhcpd服务无法启动的原因,如果网卡配置错误也可能导致服务启动失败。如,网卡(eth0)的IP地址配置错误,通过dhcpd

14

命令也可以排除该错误。

图19 查看无法启动原因

如图中画红线部分,提示网卡(eth0)的IP地址为192.168.45.12,而配置文件中声明的子网为192.168.46.0/24(subnet 192.168.46.0 netmask 255.255.255.0),将其IP地址中的45改为46。

故障现象3:DHCP服务器的网卡没有开启多点传送功能。DHCP服务器配置完成,没有语法错误。但是网络中的客户机却没办法取得IP地址。

通常是Linux DHCP服务器没有办法接收來自255.255.255.255 的 DHCP 客户机的Request 封包造成的。一般是Linux DHCP服务器的网卡没有设置具有MULTICAST功能。为了让dhcpd(dhcp程序的守护进程)能够正常的和DHCP客户机沟通,dhcpd必须传送封包到255.255.255.255这个IP地址,但是有些Linux系统里255.255.255.255这个IP地址被用来做为监听区域子网域(local subnet)广播的 IP地址,所以需要在路由表(routing table)里加入255.255.255.255以激活MULTICAST功能;

使用命令:route add –host 255.255.255.255 dev eth0 如果报告错误消息:255.255.255.255:Unkown host

那么请先修改/etc/hosts加入一行: 255.255.255.255 dhcp

15

3.2 DHCP服务器的安全

如果你的Linux系统连接了不止一个网络界面,但是你只想让DHCP服务器启动其中之一,你可以配置DHCP服务器只在那个设备上启动。在/etc/sysconfig/dhcpd中,把界面的名称添加到DHCPDARGS的列表中: DHCPDARGS=eth0

或者直接使用命令: Echo”DHCPDARGS=eth0”>> /etc/sysconfig/dhcpd

这样对于带有两个网卡的防火墙机器,更加安全:一个网卡可以被配置成DHCP客户来从互联网上检索IP地址;另一个网卡可以被用作防火墙之后的内部网络的DHCP服务器。仅指定连接到内

部网络的网卡使系统更加安全,因为用户无法通过互联网来连接他的守护进程。

参考文献

[1] 周奇,李震阳.Linux系统网络服务器组建、配置和管理实训教程[M].北京:清华大学出版社,2009. [2]曹占涛,王渊.Linux服务器配置与管理[M] .北京:电子工业出版社,2009. [3]张晓辉,张栋.网络服务搭建、配置与管理大全[M] .北京:电子工业出版社, 2009. [4]郝维联.Linux服务器配置实训教程[M] .北京:机械工业出版社,2009. [5]林天峰.Linux服务器架设指南[M] .北京:清华大学出版社,2010.

16

因篇幅问题不能全部显示,请点此查看更多更全内容

Top