Login
升级VIP 登录 注册 安全退出
当前位置: 首页 > word文档 > 其他文档 > LIUNX第六章-DHCP服务器

LIUNX第六章-DHCP服务器

收藏

本作品内容为LIUNX第六章-DHCP服务器,格式为 doc ,大小 669696 KB ,页数为 12页

LIUNX第六章-DHCP服务器


('第六章DHCP服务器引言动态主机配置协议(DHCP,DynamicHostConfigurationProtocol)使网络管理员可以通过一个中央系统来管理一个网络系统,并自动地在一个组织的网络中将IP地址进行分配。本章主要内容有:●DHCP概述●DHCP简单的历史●涉及的协议●DHCP进程●分配IP地址●对比自动配置和动态配置●DHCP配置●DHCP故障排除1DHCP概述DHCP遵循的主要的因特网协议是TCP/IP。在一个组织的网络中,当设置其计算机与Internet进行连接时,每个机器必须有一个IP地址。如果没有用DHCP,则必须手工给每个计算机配置IP地址。如果计算机移动到不同网络的另一个地方时,必须重新设置一个新的IP地址。有了DHCP,网络管理员可以从一个中央位置监管和分配IP地址,当一个计算机从网络的不同地方接入的时候,可自动地被分配到一个新的IP地址。DHCP是基于自举协议(BootP),它是用来在BootP客户机启动时自动从BootP服务器传送配置信息的。在DHCP环境中,一台计算机是DHCP服务器。除了那些有永久IP地址的计算机,所有网络中需要一个IP地址的计算机就是DHCP客户机。DHCP免除了管理员一次又一次地分配和改变IP地址,从而减少了管理网络的开销。动态IP地址是从未使用的IP地址中取出来,并自动分配给主机临时或永久地使用。DHCP也可以收回那些不再使用,或分配使用的时间已经过期的IP地址。这些地址可以被其他客户所使用。注意:在许多地方DHCP及其相关的协议使用广播,而在其它地方使用直接传送方式但是你需要知道在协议哪部分使用广播。通常,当系统不知道其它系统的地址的时候使用广播。1.1DHCP特性DHCP有以下特性:自动管理IP地址,包括防止重复的IP地址。一旦DHCP网络管理策略确定后,不需要对IP地址进行进一步的管理。DHCP会检测在同一个网络上的重复的网络地址。支持BOOTP客户,这样你可以容易地从BOOTP网络转移到DHCP网络。管理员可以设置地址的租用时间,甚至在手工分配的地址上。缺省的情况下,每个由DHCP管理的IP地址有一天的租用时间。管理员可以根据需要改变租用时间。管理员也允许客户对租用进行再谈判。它可以限制哪些以太网硬件地址可以享有动态IP地址服务。它可以定义一个可以被动态分配的IP地址池。一个用户可能会有一个使一整个子网或网络强制成为地址池的服务器。但服务器不必强制地址池包含连续的IP地址。支持在不同的IP网络上(或子网上)两个以上IP地址池的联合。这是对二级网络的基本的支持。它允许路由器作为一个有一个以上的IP网络或子网IP地址接口的BOOTP转接。2DHCP简单的历史Internet迅速地增长使用户将要用尽Internet的网络地址。为了解决这个问题,无级内部区域路由(CIDR)被开发。IP地址为大型、中型和小型网络分为A级、B级和C级。随着B级地址已经用尽,则开始使用CIDR。CIDR的思路是:一个组织得到的应该是它需要的确切的C级地址,而不是被分配一个包含65536个地址的B级网络。使用CIDR策略分配的C级网络号码不是随机的。它们是连续的并且共享相同的前缀。这有助于缓解操纵大的路由表而带来的问题。使用了CIDR策略,IP地址块(blocks)可以分配给独立的ISP,而不是像以前那样分给独立的请求者或公司。因此易于重新分配IP地址变得很重要。DHCP就可以容易地改变网络号码,以及改变ISP。3涉及的协议3.1RARP它是第一个用来自动分配地址的协议,叫做逆地址解析协议(RARP)。RARP是由RFC903定义。它和ARP是在同一层,而且使用相同的包的格式。因此,RARP是位于IP层底下。这很重要,因为如果不知道对方的IP地址,就很难发送IP包过去。图6-1RAPR不使用IP,所以它必须和数据链路层直接连接。因此,核心中必须实现这个协议。当你配置Linux核心的时候,你会看到两个选项问你是否要支持RARP:其中一个允许系统成为一个RARP客户,另一个允许成为一个RARP服务器。RARP服务器包含MAC地址到IP地址的映射表。如果你还记得前面讲过的ARP,这个表是ARP查询表的反向。当RARP客户启动时想要决定它的IP地址,它就产生一个RARP请求包并在以太网数据链路层广播。当RARP服务器听到了RARP请求,它就查询它的RARP表中的MAC地址。如果服务器在表中发现了此MAC地址。它就以以太网帧的形式直接发送RARP回应给此客户。RARP的一个非常大的优点是它只需要一个客户的广播和从服务器到客户的单播传送。然而,RARP还有许多限制。主要有:(1)使用RARP需要直接访问数据链路层。这就使编写应用程序变得困难。协议通常在核心中实现。但最好还是在用户空间得以实现。(2)RARP只返回单独一个IP地址,而没有关于路由的信息、启动映象服务器信息等。为了给无盘工作站提供启动映象和其它参数就需要另一种方法。(3)由于它位于数据链路层的最顶端,RARP只能在本地网络中传送。所以RARP服务器和每个无盘工作站都必须在同一网段中。为了能够克服这些缺点,就开发了BootP和DHCP协议。3.2BootPBootP协议引入了一种自动配置IP地址的系统,它能够提供更多的信息并使用一种不同的机制。不仅能提供IP地址,BootP还可以给客户提供许多其它的信息,如本地的缺省网关、名字服务器地址、映象服务器的地址和引导映象的文件名。对于无盘工作站,系统的引导ROM含有BootP的信息并使用此信息来与TFTP服务器通信来装载操作系统。当BootP客户想要得到一个IP地址,它就向本子网发出一个BOOTREQUEST的广播。它使用广播地址255.255.255.255。通常这个包的源IP地址是0.0.0.0,这表示这个包是从是从一个未知的系统中发出,或是它没有一个有限的IP地址。广播被发向UPD端口67。回应被送向UDP端口68,所以客户系统必须在那个UDP端口监听回应的包。就像RARP,BootP服务器会决定发回给客户什么IP地址。它可能还要发回一些其它信息。每条发送的信息都有个相关的标签。标签上写明了信息的含义。标签由描述协议的RFC文档定义。所配置的服务器要发送的信息类型由所涉及的客户系统的需要决定。例如,一个无盘工作站可能会发送出TFTP服务器的IP地址,而对Windows系统可能会需要NetBIOS名字服务器的信息。把回应的包传送给客户对于服务器来说需要一些技巧,那是因为你要发送一个IP包到一个没有IP地址的系统去。有四种方法可以把包传送给客户。(1)如果客户请求一个特定的IP地址,而且服务器允许客户使用这个IP地址,那么回应就被直接发送到客户的这个IP地址。(2)通过广播来发送回应的包。客户发送的请求中包含一个唯一的识别码,所以客户需要监听UDP端口68等待与识别码匹配的回应包。(这就是图6-2述的)图6-2(3)使用客户发送的包中的信息来伪造服务器ARP表的记录。然后你可以把包发送到客户的IP地址,服务器会使用ARP表中的记录来映射客户的IP地址到它的MAC地址。Linux核心支持这种方法。实际上,你可以手工的在ARP表中增加一条记录。(4)通过网线发送数据链路层的数据帧。这也需要核心支持,而且目前支持不很好。BootP服务器需要知道所有的内部的IP和数据链路层的细节。BootP比RARP还要强大,但是它也有一些局限。它是为静态网络环境设计的,每台主机的BootP信息都存在BootP服务器的文件中。改变网络配置需要修改服务器的这个配置文件。BootP不能动态的进行参数的分配。DHCP是用来适应更现代的动态环境。3.3DHCPDHCP是BootP的扩展。它主要的改善是许多配置参数可以被传送到客户机,它是一种客户发现服务器信息的方法,它也可以动态的从一个IP地址池中分配IP地址。RFC2131和2132中定义了DHCP现在的版本。对于客户方,DHCP协议有两个功能:为建立网络通讯的一个终点(endpoint)提供足够的信息为系统级和应用级的软件提供需要的参数DHCP协议的最终代理(endagent)构建和发送包监听来自服务器的响应缓存接收到的配置信息释放或更新租用用足够的信息配置接口,来允许与通过接口的网络通讯DHCP服务器管理直接连在该服务器上的网络的IP地址空间。同时还为客户机网络配置提供各种参数,如客户机的路由器、名字服务等。为了把这个环境扩充到其他网络,在那些网络中必须设置DHCP服务器或BOOTP转接代理(agent)。图6-3一个典型的DHCP对话由图6-3显示:(1)首先,A发送一个DHCPDISCOVER帧。(2)服务器B(和其它服务器)回应一个DHCPOFFER帧。(3)客户A通过发送DHCPREQUEST来向B请求配置信息。4.服务器B在DHCPACK发送配置信息。5.客户A现在可以配置自己了。第三步和第四步和BootP一样。第一步和第二步是扩展功能,它允许客户找出可以获得什么DHCP服务。通过这种方法,DHCP服务器可以为DHCP客户服务也可以为BootP客户服务。1)重新连接到另一个网络启动以后,A试图使用它原来的配置(DHCPREQUEST)。C发送一个图6-4DHCPNACK;配置信息不正确。A会刷新启动的DHCP会话。现在,先前通过DHCP配置的计算机又连接到另一个网络中。A使用它原来的IP地址来发送DHCPREQUEST。B可以检查A的请求看是否允许它使用原来的配置。当客户的配置租期到了,也按同样的步骤进行。客户会发送DHCPREQUEST来看看它是否还可以使用原来的配置。如果客户想要从网络中断开连接并释放它的配置信息,它可以发送DHCPRELEASE给服务器。通过这种方法,它的IP地址又会回到资源池而不用等待租期过期了。要知道,和BootP一样,在每则DHCP信息中都有不同的识别号码,这样多个客户可以和服务器可以保持联系。DHCP的一个局限是它不能和域名系统(DNS)进行交互。新租用的IP地址并没有增加到DNS中去。一些DHCP的应用程序可能包含与DNS的连接功能,但是目前还没有标准。一个系统叫做动态DNS(DDNS)是来打破这种局限的,它会发送配置信息给客户,也会在DNS数据库中增加信息。由于这是DHCP目前主要的局限,希望在不远的将来会有类似软件被开发出来。(DDNS目前没有被标准的LinuxDHCP和DNS采用。)2)转接代理DHCP转接代理程序/usr/sbin/dhcrelay用于在一个没有DHCP服务器的子网中把DHCP或BOOTP请求转接到其他子网中的DHCP服务器。dhcrelay监听主机上与所有接口连接的网络,除非在命令行上指明使用哪些端口。通过使用转接代理,BootP和DHCP都允许服务器与客户机在不同的网络中。转接代理转发客户从一个网络中发出的请求到另一个网络中的服务器,并把回应转发回来。由于不同的客户MAC地址不同,所以不会发生混乱。路由器并不让广播包通过。因此,必须有一种办法来使DHCP服务器能够听到从另一个子网发送的请求。有两种方法可以实现,一种方法是在含有DHCP客户中的子网中安装一个DHCP转接代理,另外一个方法是通过配置路由器来使它可以让广播通过。此时需要允许它转发广播到DHCP/BootP服务器UDP端口67。你可以让路由器把请求直接转发给DHCP服务器或产生另一个广播。dhcrelay接收到一个请求时,它将把请求转发给命令行上指定的DHCP服务器。当dhcrelay收到DHCP服务器回答后,将在接收到请求的网络进行广播,使发出DHCP请求的主机得到预计的信息。dhcrelay缺省使用UDP端口67进行监听,如果要使用其他端口,可以在命令行上使用“-p”选项指定。下面是一个使用dhcrelay的例子。假定,在子网162.105.200.0上没有DHCP服务器,而162.105.201.0网络上的162.105.201.2是一个DHCP服务器。这样可以用162.105.200.2做为一个dhcrelay服务器,其运行的命令行格式为:#/usr/sbin/dhcrelay162.105.201.23.4DHCP相对于BOOTP的优势DHCP是自举协议(BOOTP)的扩充和增强。BOOTP提供了IP地址信息向客户的自动的下载。DHCP通过提供可再使用的IP地址来增强BOOTP。DHCP使用一个“租用”方针。用户可以在一定的时间内使用IP地址。一旦租用时间过去了,该IP地址就可以被分配给其他用户。这样免去了设立BOOTP表的需要。DHCP支持BOOTP客户。IP地址的分配是基于:一个特定子网的物理连接由网络管理员分配的客户识别字符串以太网卡的硬件地址4DHCP进程首先配置DHCP服务器,配置包括赋予DHCP服务器一段区域的IP地址,这样服务器才可以把这些IP地址分配给发送请求的DHCP客户。1.当一台DHCP客户启动以后,它会广播dhcpdiscover信息来搜寻DHCP服务器。这个包包含客户的物理网卡地址。这个包也包含它想要得到的IP地址。2.DHCP服务器会检查请求并回应一个dhcpoffer的包,其中包含提供的IP地址。dhcpoffer包也包含一个租用期,是来说明客户可以使用这个IP地址多长时间。3.客户机然后会依照它自己的配置选择收到的dhcpoffer包,例如,你可以指定搜寻租期最长的。4.客户然后会发出dhcprequest包,其中包含发出dhcpoffer的DHCP服务器的地址。5.服务器端然后会发送一个确认包(dhcpack)来关闭进程。dhcpack包含已经同意分配的IP地址和租用期。6.服务器然后通知新的IP地址已经被分配出去。在租用期内,这个IP地址不能分配给任何其它客户。客户使用分配到的IP地址来进行配置并开始正常的网络操作。7.如果服务器不能处理客户的请求,它就发送回dhcpnak,其中包含错误的提交信息。如果遇到了这种情况,客户还必须重复这个请求过程。5分配IP地址DHCP按以下的两种方法分配IP地址:1.自动分配DHCP服务器分配一个DHCP客户想要的永久的IP地址。2.动态分配DHCP服务器按租期出租IP地址或等到客户放弃租用的地址,要看是哪个先发生。动态分配对于经常连接到网络的计算机非常有用。当一个DHCP客户要从网络中断开,就不再需要IP地址,它就通知DHCP服务器,服务器就可以把这IP地址重新分配给另一个需要地址的节点。动态分配可以更有效的使用有限的IP地址。一组偶尔使用网络的用户可以共享IP地址池而不是每台计算机都要一个永久的地址。当在一个网上建立DHCP,你必须先要决定到哪里去找DHCP服务器。你可以在每个子网中都放一台DHCP服务器,或者你可以有一台中央DHCP服务器,所有的客户都需要连接上来得到IP配置。DHCP能简化TCP/IP网络的管理。它自动进行IP地址的分配,简化了增加新客户机到网络中的工作。而且,如果一个客户从一个子网移到另一个子网,DHCP可以为客户做合适的IP配置。最后,动态分配允许许多的客户共享一段IP地址,减少了对IP地址的需要。6对比自动配置和动态配置可以通过多种途径进行TCP/IP配置。起初,所有的配置信息都是静态的,是手工输入的。许多系统还要按这种方法配置,尤其是服务器系统。RARP和BootP引入了自动配置的概念。DHCP允许自动或动态的进行配置。在自动配置中,客户启动时会请求服务器来得到配置信息。每次得到的这些设置(包括IP地址)都一样,除非管理员在服务器端做了修改。动态配置是每次客户连接到网络上都会被分配个IP地址,这与自动配置不同。不像自动配置那样,而是每次引导的时候都可能得到不同的设置。IP地址是租用给客户。过一段时间后租用的IP地址就过期了,你必须重新租用或者返回租用的地址和配置信息。从BootP到DHCP的主要变化是动态配置。自动和动态配置的不同在于服务器如何决定配置信息。如果它使用一个IP地址池并随机的选择其一,这就是动态配置。如果使用网络管理员建立的IP地址到MAC地址的映射,这就是自动配置。两种方法都是让服务器来做实际的地址分配。DHCP提供3种不同的配置方法:Manual:与BootP等同。Automatic:当客户第一次连接到网络中,会自动的被分配一个永久的IP地址和配置Dynamic:一个客户每次连接到网络中都会被动态的分配一个IP地址。这个地址是租用给客户的。在自动和动态配置中,过一段时间后租用的IP地址(和配置)就会过期,你必须重新租用或者返回租用的地址和配置信息。7DHCP配置7.1在服务器上配置DHCP如果需要重新编译核心,要确保它支持多播的功能。多数版本的Linux已经支持了。可以使用命令ifconfig来检查你的输出内容中是否包含MULTICAST。#ifconfigeth0eth0Linkencap:10MbpsEthernetHWaddr00:C0:1F:12:23:ABinetaddr:192.168.0.10Bcast:192.168.0.255Mask:255.255.255.0UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1如果有微软的客户来享受DHCP服务,那么需要运行以下命令:#routeadd-host255.255.255.255deveth0可能需要在系统启动时候就运行它,可以把这条命令加到/etc/rc.d/rc.local文件中。1)dhcpd/usr/sbin/dhcpd程序是以daemon进程的方式运行的。它启动时要读配置文件/etc/dhcpd.conf,把可分配的地址信息放在内存中。当一个客户使用DHCP协议请求一个地址时,dhcpd将为客户进行地址分配。每个客户都有一个租期,在租期到达之前,客户可以请求重新获得租期。否则,租期过后,客户将不允许继续使用该地址。如果你的DHCP服务器是个多宿主主机或是个路由器,就需要让DHCP服务器知道在哪个接口提供服务。例如,如果想在第一个网卡提供服务,就运行:#/usr/sbin/dhcpdeth0dhcpd将租用信息保存在/var/state/dhcp/dhcpd.leases文件中,以便随时记录哪些地址被租用出去。这样,在服务器程序在系统出现故障或重新启动后,都会重新得到租用信息。dhcpd不断更新dchpd.leases文件,旧文件改名为dhcpd.leases~。dhcpd为了向一个子网提供服务,需要知道子网的网络号码和网络掩码。而且,如果要动态分配地址,dhcpd还要知道地址分配的范围。所以,一个简单的dhcpd.conf配置文件如下:subnet162.105.200.0netmask255.255.255.0{range162.105.200.50162.105.200.200;}在此例中,dhcpd将向162.105.200.0网络分配162.105.200.50到162.105.200.200的IP地址。租期的时间可以从0秒到无限长,具体的时间长度根据需要而定。缺省的租期时间为一天。常用的时间如86400(一天)、604800(一周)或25920000(一个月)。可以指定两个租期长度,default-lease-time表示如果用户不请求任何租期长度而设定的租期时间,而max-lease-time表示用户可以获得的最长的租期时间。租期的长短是根据可用的IP地址以及申请IP地址客户的多少来确定的。如果IP地址多于要申请的客户,则租期可以设置较长的时间,甚至无限长,客户在这样较长的租期内都可以使用同一个IP地址。当然,如果想让客户经常更换IP地址,就需要设置较短的租期。另一种情况是可用的IP地址少于要申请的客户数目,则必须设置较短的租期,使IP地址不被已申请到IP的客户独占。同时,如果进行网络测试或其他临时性的工作,需要把计算机临时接如网络,也可以采用更短的租期,如30分钟,使地址能够更快地分配给需要的客户。下面是把缺省租用时间设置为十分钟(600秒),最长租用时间设置为一个小时(3600秒)的例子:subnet162.105.200.0netmask255.255.255.0{range162.105.200.50162.105.200.100;default-lease-time600;max-lease-time3600;}DHCP还可以向客户提供如何配置网络接口(如子网掩码)以及如何访问各种网络服务(如,DNS、路由器等)所需要的信息。这些信息可以用option来指定,下面是一个例子:subnet162.105.200.0netmask255.255.255.0{range162.105.200.50162.105.200.100;default-lease-time86400;max-lease-time604800;optionsubnet-mask255.255.255.0;optionbroadcast-address162.105.200.255;optionrouters162.105.200.1;optiondomain-name-servers162.105.200.2;optiondomain-name“turbolinux.edu.cn”;}如果要测试DHCP服务器,可以使用调试参数而且不要把在在后台运行。命令如下:#/usr/sbin/dhcpd-d–-f当启动一台DHCP客户,检查输出的信息。在确保客户已经从服务器正确的得到地址以后,把服务器守护神程序加到启动脚本中。2)dhcpd.confdhcpd的主要的配置是文件/etc/dhcpd.conf。有一个叫做kcmdhcpd的图形化配置工具与WindowsNT的配置工具非常相似,但是由于配置文件是基于ASCII文本,所以需要一个文本编辑器来配置它。配置有整体配置和对特定子网和主机的配置。/etc/dhcpd.conf文件包含各样的参数(parameters)和声明(declarations)。文本不分大下写。注释行以“#”开始,换行符结束。参数包括设置怎样作某件事(如提供多长的租期)、是否作某件事(如dhcp是否给未知的客户提供地址)赋给客户的参数值(如gateway是162.105.200.1)。声明包括描述网络的拓扑结构、描述网络上的客户、提供将要分配给客户的地址以及将一组参数应用于一组声明。在任何一组参数或说明中,如果声明要使用某些参数,这些参数必须在声明之前被定义。网络拓扑结构的声明包括共享网络(shared-network)的声明和子网(subnet)的声明。如果在一个子网中的客户要求动态分配地址,则要有一个subnet的声明来描述子网。例如,使用range参数描述分配给该子网IP地址的范围。如果客户需要静态地分配地址,那么每个客户必须有一个host声明。如果一些参数要赋给一组声明,不限于某个子网,可以使用group声明。如在某个物理网络上有两个IP子网,则每个子网的subnet声明要写在shared-network声明中。当一个客户启动时,它的启动参数的确定如下:先是查找host声明,然后是group、subnet、shared-network,最后是任何声明之外的上层定义的参数。下面是一些常用参数和声明的句法及解释:subnet声明subnetsubnet-numbernetmasknetmask-number{[parameters][declarations]}subnet声明向dhcpd指定为哪个子网提供服务,以及与子网有关的参数。range参数range[dynamic-bootp]low-address[high-address];dynamic-bootp表示由range指定的地址可以动态分配给dhcp客户以及bootp客户。如果range只指定一个地址,则high-address可以省略。host声明hosthostname{[parameters][declarations]}对于bootp客户,每个客户必须有一个host声明。而对于dhcp客户则不是必须的,除非dhcpd只对知道的客户进行服务。allow和deny参数allow和deny可以对dhcpd的请求进行控制,如:allowunknown-clients;denyunknown-clients;控制是否向未知的客户提供动态地址分配。缺省的配置是“allow”。hardware参数hardwarehardware-typehardware-address;为了使bootp客户能够被识别,在host声明中要说明客户的硬件地址。hardware-type是硬件类型,如以太网是ethernet。Hardware参数同样可以用于dhcp客户。fixed-address参数fixed-addressaddress[,address...];该参数用于向客户分配固定的地址。地址可以是IP地址,也可以是一个主机名。让我们来看一个dhcpd.conf的例子文件。default-lease-time3600;optionsubnet-mask255.255.255.0;optionrouters192.168.1.1;optiondomain-name-servers192.168.1.1,192.168.22.1;optiondomain-name"mydomain.com";subnet192.168.1.0netmask255.255.255.0{range192.168.1.20192.168.1.250;optionnetbios-name-servers192.168.12.21;}hostmyserver{hardwareethernet00:0C:12:43:AF:BE;fixed-address192.168.1.13;optionrouters192.168.1.1192.168.1.2;第一行的设置代表对客户的租期是3,600秒。option部分指定了发送给客户的信息。前四个option会发送给所有的DHCP客户。以“subnet”开始的部分任何192.168.1.0网段的客户都可以得到从192.168.1.20到192.168.1.250范围内的地址。“netmask”是用来指定后面大括号所定义的子网的范围,而“subnet-mask”是发给客户的信“netbios-name-servers”选项是用来定义Windows客户的WINS服务器。以“host”开始的部分是来表示如何对特定的某台主机进行配置。要什么这种方法,就需要指定系统的MAC地址。(这就意味这如果你系统的NIC改变了,就需要编辑DHCP服务器的配置。)在这种情况下,我们指定系统的MAC地址00:0C:12:43:AF:BE将会被分配IP地址192.168.1.13。在特定主机的部分设置的选项会覆盖整体部分的选项。接下来创建/var/state/dhcp/dhcpd.leases文件#touch/var/state/dhcp/dhcpd.leases启动dhcpd后台服务器程序#/etc/rc.d/init.d/dhcpdstart如果在每次系统启动时,也启动dhcpd,则执行下面命令#/sbin/chkconfig–level3dhcpdon7.2在客户机上配置DHCP在Linux系统上最经常使用的DHCP客户程序是dhcpd守护神程序。然而,近来Linux系统使用一个叫pump的DHCP客户程序。我们会在这里学习这两种程序。需要记住的是当客户得到它们的设置参数以后还要运行DHCP客户程序。这是因为DHCP的租期的有限的,所以客户必须续租。这两种程序都是以守护神的方式运行的。1)dhclientdhclient是客户段获取DHCP服务器的一个客户端工具,在系统中运行dhclient后,就可以动态地从DHCP服务器上获得唯一的IP地址和其他网络配置信息,并不仅仅是在系统启动时从DHCP服务器上获得。dhcpcd启动命令为:#/sbin/dhclient当系统从DHCP服务器上获得IP地址后和其他配置信息后,系统不仅按照这些信息进行配置,并且写入/etc/dhcpc/dhcpcd-.info文件中。“”为网络接口名称,如eth0。2)pumppump是一个简单的DHCP客户程序。如果你没有为你的网卡指定IP地址,它就通常自动从自动脚本中运行。pump的配置文件是/etc/pump.conf。在这个文件中,你可以指定你使用哪个网络接口、尝试多少次请求来得到DHCP回应或DNS搜索路径,用来覆盖从DHCP服务器上得到的参数。通常,缺省的参数就可以工作,实际上,在RedHat自己的版本中不使用配置文件。可以从命令行运行pump程序来得到已经运行的pump进程的信息。检查其状态,使用命令:#pump–--status杀掉运行的pump进程,运行:#pump–--kill通过使用--renew或--release选项,也可以强迫DHCP更新租期或放弃租用。8DHCP故障排除下面的排除故障技术可以帮助你识别系统故障和原因:使用tcpdump命令监视网络tcpdump将会抓获在服务器和客户之间基本的协议对话过程。在/etc/services中可以看到bootp/dhcp服务器使用upd端口67;bootp/dhcp客户使用upd端口68。所以,可以使用下面的命令格式在服务器上或同在一个网络上的其他主机上监视网络信息:#/usr/sbin/tcpdumpport67或#/usr/sbin/tcpdumpport68来分别监视dhcp服务器和客户的网络信息,从而确定两者是否在正常工作。以debug方式运行DHCP服务器把客户放入debug方式,可以产生有关客户如何初始DHCP请求的的详细的信息。#/usr/sbin/dhcpd–d记录的信息将根据/etc/syslog.conf文件的配置,存在指定的文件中。在/etc/syslog.conf文件中要指定记录daemon.debug信息。例如:#logalldebuginformationaboutdaemoninto/var/log/daemon.logfiledaemon.=debug/var/log/daemon.logDHCP客户的debug方式以debug方式运行DHCP客户将揭示客户与服务器之间更多的交互。#/sbin/dhcpcd–d记录的信息将根据/etc/syslog.conf文件的配置,存在指定的文件中。在/etc/syslog.conf文件中要指定记录debug信息。例如:#logalldebuginformationinto/var/log/debug.log.=debug/var/log/debug.log',)


  • 编号:1700773288
  • 分类:其他文档
  • 软件: wps,office word
  • 大小:12页
  • 格式:docx
  • 风格:商务
  • PPT页数:669696 KB
  • 标签:

广告位推荐

相关其他文档更多>