《第九章 DHCP服务器配置.doc》由会员分享,可在线阅读,更多相关《第九章 DHCP服务器配置.doc(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第九章 DHCP服务器配置DHCP是“动态主机配置协议”(Dynamic Host Configuration Protocol)的简写。DHCP技术是通过某网络内一台服务器提供相应的网络配置服务来实现的,可以为网络终端设备提供临时的IP地址、默认网关、DNS服务器等网络配置,本章将详细介绍DHCP服务器的安装、配置和使用。9.1 DHCP协议9.1.1 使用DHCPDHCP是“动态主机配置协议”(Dynamic Host Configuration Protocol)的简写,它可以为客户机自动分配IP地址、子网掩码、默认网关和DNS服务器的IP地址等TCP/IP参数。在一个网络中,每一台计算
2、机都必须适当地配置TCP/IP协议。这意味着包括网络IP地址、子网掩码、默认网关地址、DNS服务器地址等都要配置在每一台计算机上。如果工作站的数量很大,这对网络安装、维护人员来说将是一项非常大的工程,并且所有的工作站都设置这样的参数,要避免不出问题是很困难的。如果同一个IP地址被使用了两次,这将引起IP地址的冲突,而且有可能影响整个网络不能正常工作。此外,如果你只拥有20个合法的IP地址,而你管理的机器有50台,只要这50台机器中,同时使用服务器DHCP服务的不超过20台,则可以解决IP地址资源不足的情况。一台DHCP服务器可以让网络管理员集中指派和指定全局的或子网特有的TCP/IP参数供整个
3、网络使用。客户机不需要手动配置TCP/IP,并且当客户机断开与服务器的连接后,旧的IP地址将被释放以便重用。有了DHCP服务器,它就能激活“从DHCP服务器获得IP地址”选项,此时DHCP服务器就接管了对工作站的TCP/IP进行适当配置的责任,这也有助于大幅度降低网络维护和管理的耗费。9.1.2 DHCP的工作过程DHCP分为两个部分:一个是服务器端,另一个是客户端。所有客户机的IP地址设定资料都由DHCP服务器集中管理,并负责处理客户端的DHCP要求;而客户端则会使用从服务器分配下来的IP地址。DHCP服务器提供三种IP分配方式:自动分配(Automatic Allocation)、动态分配
4、(Dynamic Allocation)和手动分配。自动分配是当DHCP客户端第一次成功地从DHCP服务器端分配到一个IP地址之后,就永远使用这个地址。动态分配是当DHCP客户端第一次从DHCP服务器分配到IP地址后,并非永久地使用该地址,每次使用完后,DHCP客户端就得释放这个IP地址,以给其他客户端使用,而手动分配是由DHCP服务器管理员专门指定IP地址。DHCP客户机在启动时,会搜寻网络中是否存在DHCP服务器。如果找到,则给DHCP服务器发送一个请求。DHCP服务器接到请求后,为DHCP客户机选择TCP/IP配置的参数,并把这些参数发送给客户端。 如果已配置冲突检测设置,则 DHCP
5、服务器在将租约中的地址提供给客户机之前会试用Ping测试作用域中每个可用地址的连通性。这可确保提供给客户的每个IP地址都没有被使用手动TCP/IP配置的另一台非 DHCP 计算机使用。根据客户端是否第一次登录网络,DHCP的工作形式会有所不同。客户端从DHCP服务器上获得IP地址的整个过程分为以下六个步骤:1 寻找DHCP服务器当DHCP客户端第一次登录网络的时候,计算机发现本机上没有任何IP地址设定,将以广播方式发送DHCP discover发现信息来寻找DHCP服务器,即向255.255.255.255发送特定的广播信息。网络上每一台安装了TCP/IP协议的主机都会介绍这个广播信息,但只有
6、DHCP服务器才会做出响应。2分配IP地址在网络中接收到DHCP discover发现信息的DHCP服务器都会做出相应,它从尚未分配的IP地址中挑选一个分配给DHCP客户机,向DHCP客户机发送一个包含分配的IP地址和其他设置的DHCP offer提供信息。3接受IP地址DHCP客户端接受到DHCP offer提供信息之后,选择第一个接收到的提供信息,然后以广播的方式回答一个DHCP request请求信息,该信息包含向它所选定的DHCP服务器请求IP地址的内容。4IP地址分配确认当DHCP服务器收到DHCP客户端回答的DHCP request请求信息之后,便向DHCP客户端发送一个包含它所提
7、供的IP地址和其他设置的DHCP ack确认信息,告诉DHCP客户端可以使用它提供的IP地址。然后,DHCP客户机便将其TCP/IP协议与网卡绑定,另外,除了DHCP客户机选中的服务器外,其他的DHCP服务器将收回曾经提供的IP地址。5重新登录以后DHCP客户端每次重新登录网络时,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCP ack确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时,则DHCP服务器给D
8、HCP客户机回答一个DHCP nack否认信息。当原来的DHCP客户机收到此DHCP nack否认信息后,它就必须重新发送DHCPdiscover发现信息来请求新的IP地址。6更新租约DHCP服务器向DHCP客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。如果DHCP客户机要延长其IP租约,则必须更新其IP租约。DHCP客户机启动时和IP租约期限过一半时,DHCP客户机都会自动向DHCP服务器发送更新其IP租约的信息。9.2 安装DHCP服务器9.2.1 安装DHCP服务器默认Red Hat Enterprise Linux的安装程序没有将DHCP服务安装
9、在系统上,可以使用下面的命令检查系统是否已经安装了DHCP服务: rootMyRedHat #rpm -q dhcp 如果系统还没有安装DHCP服务,可以把Red Hat Enterprise Linux的第四张安装光盘放入光驱进行加载,加载光驱后在光盘的RedHat/RPMS目录下找到DHCP的安装包文件dhcp-3.0.1-12_EL.i386.rpm,可以使用下面的命令进行安装:rootMyRedHat # cd /mnt/cdrom/RedHat/RPMSrootMyRedHat # rpm ivh dhcp-3.0.1-12_EL.i386.rpm执行命令后,DHCP服务安装成功。9
10、.2.2 Red Hat Enterprise Linux中的配置文件在Red Hat Enterprise Linux中dhcpd的配置文件是:/etc/dhcpd.conf。默认情况下此文件不存在。不过当dhcp-3.0.1-12_EL.i386.rpm安装以后,提供了一个配置文件模板。下面列出此文件及其内容说明。具体的操作步骤如下:使用cat命令查看dhcpd的配置文件模板,命令为: # cat /usr/share/doc/dhcp-3.0.1/dhcpd.conf.sample显示dhcpd.conf.sample文件内容如下:/配置使用过渡性 DHCP-DNS 互动更新模式ddns
11、-update-style interim;/忽略客户端更新ignore client-updates;/设置子网声明subnet 192.168.0.0 netmask 255.255.255.0 /为DHCP客户设置默认网关option routers192.168.0.1;/为DHCP客户设置子网掩码option subnet-mask255.255.255.0;/为DHCP客户设置NIS域option nis-domaindomain.org;/为DHCP客户设置DNS域option domain-namedomain.org;/为DHCP客户设置DNS服务器地址option doma
12、in-name-servers192.168.1.1;/设置与格林威治时间的偏移时间(s)option time-offset-18000;# Eastern Standard Time#option ntp-servers192.168.1.1;#option netbios-name-servers192.168.1.1;# - Selects point-to-point node (default is hybrid).Dont change this unless# - you understand Netbios very well#option netbios-node-type
13、 2;/设置地址池range dynamic-bootp 192.168.0.128 192.168.0.254;/为DHCP客户设置默认的地址租期default-lease-time 21600;/为DHCP客户设置最长的地址租期max-lease-time 43200;/设置主机声明host ns /设置用于定义服务器从引导文件中装入的主机名,用于无盘工作站next-server ;/指定DHCP客户的MAC地址hardware ethernet 12:34:56:78:AB:CD;/对指定的MAC地址分配固定的IP地址fixed-address 207.175.42.254; 9.3 配
14、置DHCP9.3.1 DHCP配置文件中的三类陈述dhcpd配置文件通常包括三部分:parameters、declarations 、option。parameters:表明如何执行任务,是否要执行任务,或将哪些网络配置选项发送给客户。declarations:描述网络的布局;描述客户;提供客户的地址;或把一组参数应用到一组声明中。某些参数必须以 option 关键字开头,它们也被称为选项。选项配置 DHCP 的可选选项;而参数配置的是必选的或控制 DHCP 服务器行为的值。在使用花括号( )的部分之前声明的参数(包括选项)通常被当做全局参数。全局参数应用位于其下的所有部分。 option:用
15、来配置DHCP可选参数。9.3.2 DHCP配置文件中的参数、申明和选项1DHCP配置文件中的parameters(参数)parameters表明如何执行任务,是否要执行任务,或将哪些网络配置选项发送给客户。主要内容如表9-1所示。表9-1 parameters列表参 数解 释ddns-update-style配置DHCP-DNS 互动更新模式default-lease-time指定默认租赁时间的长度,单位是秒max-lease-time指定最大租赁时间长度,单位是秒hardware指定网卡接口类型和MAC地址server-name通知DHCP客户服务器名称get-lease-hostname
16、s flag检查客户端使用的IP地址fixed-address ip分配给客户端一个固定的地址authritative拒绝不正确的IP地址的要求2DHCP配置文件中的declarations(声明)declarations用来描述网络布局、提供客户的IP地址等。主要内容如表9-2所示。表9-2 declarations列表声 明解 释shared-network用来告知是否一些子网络分享相同网络subnet描述一个IP地址是否属于该子网range 起始IP 终止IP提供动态分配IP 的范围host 主机名称参考特别的主机group为一组参数提供声明allow unknown-clients;d
17、eny unknown-client是否动态分配IP给未知的使用者allow bootp;deny bootp是否响应激活查询allow booting;deny booting是否响应使用者查询filename开始启动文件的名称,应用于无盘工作站next-server设置服务器从引导文件中装如主机名,应用于无盘工作站3DHCP配置文件中的option(选项)option用来配置DHCP可选参数,全部用option关键字作为开始,主要内容如表9-3所示。表9-3 选项列表选 项解 释subnet-mask为客户端设定子网掩码domain-name为客户端指明DNS名字domain-name-s
18、ervers为客户端指明DNS服务器IP地址host-name为客户端指定主机名称routers为客户端设定默认网关broadcast-address为客户端设定广播地址ntp-server为客户端设定网络时间服务器IP地址timeoffset为客户端设定和格林威治时间的偏移时间,单位是秒注意 如果客户端使用的是Windows操作系统,不要选择host-name选项,即不要为其指定主机名称。 4配置实例下面介绍几个配置实例。例1:子网声明所有共享同一物理网络的子网应该在shared-network 声明之内声明。在shared-network 之内,但在被包围起来的subnet声明之外的参数被
19、当作全局参数。shared-network 的名称应该是对网络有描述性的标题,例如,使用test-lab来描述所有处于实验室(test lab)环境中的子网。 shared-network name option domain-name ;option domain-name-servers , ns2;option routers 192.168.1.254;more parameters for EXAMPLE shared-networksubnet 192.168.1.0 netmask 255.255.255.0 parameters for subnetrange 192.168.
20、1.1 192.168.1.31;subnet 192.168.1.32 netmask 255.255.255.0 parameters for subnetrange 192.168.1.33 192.168.1.63;例2:共享网络声明group 声明可以用来把全局参数应用到一组声明中。例如可以组合共享的网络、子网、主机或其他组群。 group option routers 192.168.1.254;option subnet-mask 255.255.255.0;option domain-name ;option domain-name-servers 192.168.1.1;op
21、tion time-offset -18000; # Eastern Standard Timehost mp3 option host-name ;hardware ethernet 00:A0:78:8E:9A:BB; fixed-address 192.168.1.5;host raleigh option host-name ;hardware ethernet 00:A1:DD:74:C3:F2;fixed-address 192.168.1.6;例3.:组群声明要配置将动态 IP 地址租给子网内系统的 DHCP 服务器,它为客户声明一个默认租期、最长租期、以及网络配置值。范例中把
22、range 192.168.1.10 和 192.168.1.100 之间的 IP 地址分配给客户。 default-lease-time 600;max-lease-time 7200;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 ;subnet 192.168.1.0 netmask 255.25
23、5.255.0 range 192.168.1.10 192.168.1.100;例4:范围参数要根据网卡的MAC地址给客户分配IP地址,使用host声明内的hardware ethernet参数。host mp3声明表明:网卡MAC地址为00:A0:78:8E:9A:BB的系统所分配的IP地址将一直是 192.168.1.5。 host mp3 option host-name ;hardware ethernet 00:A0:78:8E:9A:BB; fixed-address 192.168.1.5;9.3.3 DHCP服务器配置举例下面介绍一个DHCP配置文件的例子,用户可以通过复制配
24、置文件模板来进行修改,该文件的路径为:/usr/share/doc/dhcp-3.0.1/dhcpd.conf.sample。在具体的DHCP配置过程中,可将该文件复制为/etc/dhcpd.conf,然后根据需要进行修改。具体的操作步骤如下:1复制配置文件模板复制配置文件模板为: # cd /etc# cp /usr/share/doc/dhcp-3.0pl1/dhcpd.conf.sampledhcpd.conf 2打开dhcpd.conf配置文件使用vi修改/etc/dhcpd.conf,命令为: # vi /etc/dhcpd.conf3修改配置文件/etc/dhcpd.conf的内容
25、 # cat /etc/dhcpd.confddns-update-style interim;ignore client-updates;default-lease-time 21600;max-lease-time 43200;option routers 192.168.1.254;option broadcast-address 192.168.1.255;option subnet-mask 255.255.255.0;option domain-name “”;option domain-name-servers 192.168.1.1,192.168.1.2;option tim
26、e-offset -18000;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;group use-host-decl-names on;host mp3 hardware ethernet 00:A0:78:8E:9A:BB;fixed-address 192.168.1.5;host Raleigh hardware ethernet 00:A1:DD:74:C3:F2;fixed-address 192.168.1.6;#
27、9.3.4 启动/停止DHCP服务器要运行DHCP服务器,还需要一个客户租约数据库文件:/var/lib/dhcp/dhcpd.leases。客户租约数据库文件在初始情况下为空,且无须管理员手工配置,但管理员可以浏览此文件查看DHCP服务器的运行情况。启动/停止DHCP服务可以通过/etc/init.d/dhcpd进行操作,也可以使用service命令。主要选项如表9-4所示。表9-4 DHCP-/etc/init.d/dhcpd选 项操 作start启动stop停止restart重启status查看状态1启动DHCP服务启动DHCP服务如下命令。 rootMyRedHat # /etc/in
28、it.d/ dhcpd start或 rootMyRedHat # service dhcpd start 2停止DHCP服务停止DHCP服务如下命令。 rootMyRedHat # /etc/init.d/ dhcpd stop或 rootMyRedHat # service dhcpd stop3重新启动DHCP服务重新启动DHCP服务如下命令。 rootMyRedHat # /etc/init.d/ dhcpd restart或 rootMyRedHat # service dhcpd restart 4设置自动启动DHCP服务让系统每次启动时自动运行DHCP服务,可以执行“ntsysv
29、”命令启动服务配置程序,在出现的对话框中找到“dhcp”服务,然后按“空格”键在其前面加上“*”星号,按“Tab”键选择“确定”按钮保存即可,如图9-1所示。图9-1 自动运行DHCP服务另外,要使启动系统时dhcp不会自动开始,可以执行如下命令: rootMyRedHat # chkconfig dhcpd off 9.3.5 配置DHCP客户端1Linux中DHCP客户端的配置Linux下配置DHCP客户端有两种方法:图形界面配置和手工配置。图形界面配置在图形界面下运行“neat”命令,出现“以太网设备”对话框,如图9-2所示,选中“自动获得IP地址设置使用DHCP”即可。 图9-2 li
30、nux中图形化界面配置DHCP客户端手工配置需要修改/etc/sysconfig/network 文件来启用联网,并修改 /etc/sysconfig/network-scripts 目录中每个网络设备的配置文件。在该目录中,每个设备都有一个叫做ifcfg-ethX的配置文件,ethX是网络设备的名称。如eth0等。如果你想在引导时启动联网,NETWORKING变量必须被设为yes。除此之外,/etc/sysconfig/network 文件应该包含以下行:NETWORKING=yes DEVICE=eth0 BOOTPROTO=dhcp ONBOOT=yes然后重新启动网卡,执行下面的命令:
31、 rootMyRedHat # ifdown eth0; ifup eth0或rootMyRedHat # ifconfig eth0 down; if config eth0 up2 Windows XP/2000/2003中DHCP客户端的配置Windows XP、Windows 2000和Windows 2003配置DHCP客户端的方法基本相同,下面以配置Windows XP的DHCP客户端为例介绍在Windows系列操作系统下配置DHCP客户端的过程,具体步骤如下:1)右键单击桌面上的“网络邻居”图标,然后从弹出的菜单中选择执行“属性”命令,打开“网络连接”窗口。2)右键单击“本地连接”图标,然后从弹出的菜单中选择执行“属性”命令,打开“本地连接 属性”窗口。3)选中“Internet协议(TCP/IP)”,然后单击“属性”按钮,打开“Internet协议(TCP/IP)属性”对话框,选择“自动获得IP地址”单选按钮和“自动获得DNS服务器地址”单选按钮,然后单击“确定”按钮,保存启用配置,就完成了DHCP客户端的配置,如图9-3所示。图9-3 windows中图形化界面配置DHCP客户端