第1章 IP地址分配自动化
网络通信离不开 TCP/IP 协议,在 TCP/IP 网络中,每台计算机要想进行通信,存取网络上的资源,都必须进行必要的网络配置,一些主要参数如IP地址、子网掩码、默认网关、DNS服务器等。本章将从自动分配IP地址/配置网络客户端的DNS、网关等基本信息,帮助网络管理员自动管理企业网络中IP地址。
1.1 DHCP概述
在网络中,配置网络参数有两种方法:静态手工配置和自动分配。
1.1.1 静态手工配置
静态手工配置TCP/IP参数,是网络管理员习惯使用的方法。通常,管理员需要创建一张详细的配置清单,分配并查阅网络中所有计算机的IP地址、子网掩码以及网关和DNS服务器、默认网关等基本信息。这种方法虽然简单可行,但却相当费时且容易出错。例如,一个中小型的网络,网络中有500台计算机,假设为每台计算机配置TCP/IP参数的时间为1分钟,一共需要500分钟,即8小时20分钟,不包括因输入错误进行排错的时间。
如果在网络运行过程中,某些 TCP/IP 参数如默认网关或 DNS 服务器发生变化,上述工作将会重复。
以Windows XP操作系统为例,介绍静态配置IP地址信息的方法。
(1) 打开“控制面板”→“网络连接”选项,显示如图1-1所示的“网络连接”窗口。
图1-1 “网络连接”窗口
(2) 右击“网络连接”,在弹出的快捷菜单中选择“属性”命令,显示如图1-2所示的“本地连接 属性”对话框。
图1-2 “本地连接 属性”对话框
(3) 在“此连接使用下列项目”列表中选择“Internet协议(TCP/IP)”复选框,单击“属性”按钮,显示如图1-3所示的“Internet协议(TCP/IP) 属性”对话框。
图1-3 “Internet协议(TCP/IP) 属性”对话框
(4) 在“Internet 协议(TCP/IP)属性”对话框中,网络管理员可以配置当前计算机的网络配置参数。
1.1.2 自动分配
自动分配TCP/IP参数则可避免因手工配置带来的诸多问题,只需部署一台提供自动分配IP地址的服务器,客户端计算机则无需配置。尤其在TCP/IP参数发生变化时,自动分配更能体现出其固有的优势,只需在提供自动分配的服务器上进行简单配置,其他计算机则无需任何改动。既省时省力,又便于集中管理IP地址。而且给所有计算机自动分配TCP/IP参数的过程在几秒内即可全部完成,从而提高网络的利用率和用户的工作效率。
DHCP英文全称Dynamic Host Configuration Protocol,中文意思动态主机配置协议,是为实现IP的自动配置而设计的协议,可以为客户机自动分配IP地址、子网掩码以及默认网关、DNS服务器的IP地址等TCP/IP参数。DHCP分为服务器端和客户端两部分。所有的IP地址资料都由DHCP服务器集中管理,并负责处理客户端的DHCP要求;而客户端则会使用从服务器分配下来的IP地址以及DNS参数。
使用DHCP管理网络具有以下优势。
● 安全可靠的配置,DHCP避免了在每个计算机上进行手动配置而引起的错误。
● 减少配置管理,如果手动设定网络中每台计算机的IP地址、子网掩码、网关地址、DNS 地址、WINS 服务器地址等参数,将占用网络管理员大量时间。而使用 DHCP服务器可以大大降低用于配置和重新配置网上计算机的时间。
● 为需要经常更改网络参数的用户提供方便,使用笔记本计算机办公或频繁更改位置的用户,在每次更换位置后,都需要重新配置上网参数。而 DHCP 租约续订过程解决了这个问题。
● 在默认情况下,安装完成的Windows操作系统,默认使用的网络参数配置就是DHCP方式,网络管理员不需要更改当前的设置,即可完成网络参数的设置。
使用DHCP服务器为网络中的工作站分配IP地址及其他相关参数,可以极大减轻管理员的工作压力,同时也避免了很多由于地址设置错误而引起的网络问题。
1.1.3 工作原理
下面通过一台计算机自动获取IP地址的过程,简述DHCP的工作原理。
1. 寻找DHCP服务器
当DHCP客户端第一次启动网络组件时,如果客户端发现本机上没有任何IP地址等相关参数,它会向网络上发出一个 DHCPDISCOVER 数据包,这个数据包的源地址为 0.0.0.0,目的地址为255.255.255.255,用以广播到整个网络。
在Windows的预设情况下,DHCPDISCOVER的等待时间为1 s,也就是当客户端将第一个 DHCPDISCOVER 包发送出去之后,在 1 s 之内如果没有得到回应的话,就会进行第二次DHCPDISCOVER 广播。如果一直得不到回应,客户端将在 16 s 之内广播 4 次DHCPDISCOVER。如果都没有得到 DHCP 服务器的响应,客户端则会显示错误信息,宣告DHCPDISCOVER失败。此时,DHCP客户端会从169.254.0.1~169.254.255.254自动获取一个地址,并设置子网掩码为 255.255.0.0。以后,系统会继续在 5 min 之后再重复一次DHCPDISCOVER的过程。
2. 提供IP租用地址
当DHCP服务器收到客户端发出的DHCPDISCOVER广播后,它会从可用地址中选择最前面的IP,连同其他TCP/IP设定(包括子网掩码、网关地址、DNS地址、WINS服务器地址等参数),回应给客户端一个DHCPOFFER包。
由于客户端在开始时还没有IP地址,所以在其DHCPDISCOVER包内会带有其MAC地址信息,并且由一个XID编号来辨别该包。DHCP服务器返回的DHCPOFFER数据包则会根据这些资料传递给要求租约的客户。根据服务器端的设定,DHCPOFFER 包会包含一个租约期限的信息。
3. 接受IP租约
如果客户端收到网路上多台DHCP服务器的回应,则会从中选择一个DHCPOFFER(通常是最先到达的那个),并且会向网络上发送一个 DHCPREQUEST 广播数据包,告诉所有DHCP服务器它将指定接受哪一台服务器提供的IP地址。
同时,客户端还会向网络发送一个ARP(Address Resolution Protocol,地址解析协议)包,查询网络上面有没有其他机器使用该IP地址;如果发现该IP已经被占用,客户端则会发送一个 DHCPDECLINE 数据包给 DHCP 服务器,拒绝接收其 DHCPOFFER,并重新发送DHCPDISCOVER信息。
4. 租约确认
当DHCP服务器接收到客户端的DHCPREQUEST之后,会向客户端发出一个DHCPACK回应,以确认IP租约的正式生效,也就结束了一个完整的DHCP工作过程。
DHCP服务器分配的IP地址是有租约限制的,默认情况下是8天。当DHCP客户端在其租约一半的时候会发出DHCPREQUEST,如果此时得不到DHCP服务器确认的话,工作站还可以使用这个IP地址。当在租约到达75%时,如果还得不到确认,则工作站就会放弃使用此地址,开始新一轮的申请。
DHCP 服务器是以广播方式进行的,这就需要在每一个子网中安装一台 DHCP 服务器。如果想使用一台DHCP服务器为所有子网的工作站分配IP地址,则需要在每个子网中配置(或安装)DHCP中继服务器。现在的三层交换机都支持DHCP中继。
1.1.4 DHCP服务的相关概念
在学习使用DHCP服务器的过程中,先介绍以下名词的含义。
1. 作用域
作用域是网络上可用的IP地址的完整连续范围。作用域通常定义为接受DHCP服务的网络上的单个物理子网。作用域还为网络上的客户端提供服务器对IP地址及任何相关配置参数的分发和指派进行管理的主要方法。
2. 超级作用域
超级作用域是作用域的管理组合,它可用于支持同一物理子网上的多个逻辑IP子网。超级作用域仅包含可同时激活的“成员作用域”或“子作用域”列表。超级作用域不用于配置有关作用域使用的其他详细信息。如果想配置超级作用域内使用的多数属性,用户需要单独配置成员作用域属性。
3. 排除范围
排除范围是作用域内从DHCP服务中排除的有限IP地址序列。排除范围确保服务器不会将这些范围中的任何地址提供给网络上的 DHCP 客户端。例如,如果设置的地址范围是172.16.1.1~172.16.1.254,同时设置了排除范围为 172.16.1.50~172.16.1.100,那么该 DHCP服务器不会将172.16.1.50~172.16.1.100范围内的IP地址出租给客户端。
4. 地址池
在定义了 DHCP 作用域并应用排除范围之后,在作用域内剩余的地址便是“地址池”。DHCP 服务器可将池内地址动态地指派给网络上的 DHCP 客户端。例如,当在 172.16.1.1~172.16.1.254范围内设置了排除范围172.16.1.50~172.16.1.100后,地址池将变成172.16.1.1~172.16.1.49和172.16.1.101~172.16.1.254。
5. 租约
租约是由DHCP服务器指定的一段时间,在此时间内客户端计算机可使用指派的IP地址。当向客户端提供租约时,租约是“活动”的。在租约过期之前,客户端通常需要向服务器更新指派给它的地址租约。当租约的租约期满或在服务器上被删除时,它将变成“非活动”的。租约期限决定租约何时期满以及客户端需要服务器对它进行更新的频率。
6. 保留
可使用“保留”功能来创建 DHCP 服务器指派的永久地址租约。保留可确保子网上指定的硬件设备始终可使用相同的IP地址。
7. 选项类型
“选项类型”是DHCP服务器在向DHCP客户端提供租约时可指派的其他客户端配置参数。例如,一些常用选项包含用于默认网关(路由器)、WINS服务器和DNS服务器的IP地址。通常,为每个作用域启用并配置这些选项类型。DHCP控制台还允许用户配置由服务器上添加和配置的所有作用域使用的默认选项类型。
8. 选项类别
“选项类别”是一种可供服务器进一步管理其提供给客户端的选项类型的方式。当选项类别添加到服务器时,可为该类的客户端提供用于其配置的类别特定选项类型。对于 Windows 2000和Windows XP,客户端计算机还可以在与服务器通信时指定类ID。对于不支持类ID过程的早期 DHCP 客户端,当需要将客户端归类时可以把服务器配置成默认类以便使用。选项类有两种类型:供应商类别和用户类别。
1.1.5 DHCP部署建议
在大型网络中,需要部署至少两台DHCP服务器。如果整个网络中只有1台DHCP服务器,当该DHCP停止工作时,网络中的工作站可能获取不到IP地址,从而引起网络中断。为了提高容错能力,在条件允许的情况下,推荐在网络中部署两台 DHCP 服务器。当在网络中部署两台DHCP服务器时,可以使用80/20规则,具体方法是在性能比较好的DHCP服务器上,分配约80%的IP地址;在性能一般或者备用DHCP服务器上,分配约20%的IP地址。
1.2 配置网络交换机
在规模稍大一些的网络中,客户端计算机的数量会超过 256 台,网络管理员可能会根据网络环境的需要划分成不同的 VLAN,这样 DHCP 服务器就需要为不同子网中的计算机提供IP地址。
下面以一个应用环境为例说明,如何在交换机上设置DHCP中继,让DHCP服务器为多个子网提供IP地址自动分配服务。在这个案例中,因为只有一台计算机作DHCP服务器,此时“中心交换机”需要支持“DHCP中继”功能,并且需要正确配置。
中心交换机划分了多个 VLAN,下面的楼层交换机分别接到不同的“中心交换机”的端口上,“DCHP服务器”与“防火墙与代理服务器”直接接在“中心交换机”上,单位中的“工作站”(客户端计算机)接到相应的“楼层交换机”的端口上,如图1-4所示。
图1-4 在有多个VLAN的网络中组建DHCP服务器
提示
(1) 通常情况下,可以划分VLAN的三层交换机都支持“DHCP中继”功能。
(2) 目前常用的交换机有“华为”系列和“思科”系列,本节以华为8505“中心交换机”为例进行介绍。
(3) 如果不在“中心交换机”上配置“DHCP中继”功能,各VLAN的计算机将不能从“DHCP服务器”获取IP地址。
(4) 对于只有一个网段的网络来说,不需要配置“DHCP中继”。
在配置“中心交换机”和“DHCP 服务器”之前,需要对网络作统一规划,本节将以表1-1为例,为各VLAN进行规划。
表1-1 各VLAN的IP地址、子网掩码、网关设置一览表
下面是在华为 8505 交换机启用 DHCP 中继的配置,其中 DHCP 服务器的 IP 地址为192.168.0.1。华为8505的配置如下(其他交换机的配置,读者可以查阅相关的技术文档):
<8505B>sys
Enter system view , return user view with Ctrl+Z. [8505B]disp curr # sysname 8505B # # dhcp-server 5 ip 192.168.0.1 dhcp-server detect # interface Vlan-interface 11 ip address 192.168.11.254 255.255.255.0 dhcp-server 5 # interface Vlan-interface 12 ip address 192.168.12.254 255.255.255.0 dhcp-server 5 # interface Vlan-interface 21 ip address 192.168.21.254 255.255.255.0 dhcp-server 5 # interface Vlan-interface 22 ip address 192.168.22.254 255.255.255.0 dhcp-server 5 # interface Vlan-interface 31 ip address 192.168.31.254 255.255.255.0 dhcp-server 5 # interface Vlan-interface 32 ip address 192.168.32.254 255.255.255.0 dhcp-server 5 # interface Vlan-interface 41 ip address 192.168.41.254 255.255.255.0 dhcp-server 5 # interface Vlan-interface 42 ip address 192.168.42.254 255.255.255.0 dhcp-server 5 #
1.3 安装DHCP服务器组件
Windows Server 2003操作系统中内置了DHCP服务器组件,默认情况下没有安装。通常情况下,只要安装Windows Server 2003操作系统的计算机,都可以将其配置成DHCP服务器。
(1) 单击“开始”→“控制面板”→“添加/删除程序”选项,打开“添加/删除程序”对话框。
(2) 单击“添加/删除 Windows 组件”图标,显示“Windows 组件”对话框。在附录列表中选择“网络服务”,如图1-5所示。
图1-5 “Windows组件”对话框
(3) 选择“网络服务”的复选框,单击“详细信息”按钮,显示“网络服务”对话框,选择“动态主机配置协议(DHCP)”复选框,如图1-6所示。
图1-6 安装DHCP服务组件
(4) 单击“确定”按钮返回“Windows组件”对话框,单击“下一步”按钮。安装程序执行配置过程并复制文件,安装过程中提示需要Windows Server 2003的原始安装光盘。
(5) 安装完成后,在“Windows组件向导”对话框中,单击“完成”按钮。
提示
安装完成之后,不需要重启计算机。
1.4 DHCP服务器授权
如果网络使用“Active Directory”管理,则DHCP服务器必须经过“授权”才能工作。在Windows Server 2003的Active Directory域中,如果DHCP服务器没有“授权”,就不能为网络中的客户端计算机分配 IP 地址。在“DHCP”管理控制台窗口中,没有“授权”的 DHCP服务器“计算机图标”有一个红色的“箭头”,表示当前DHCP服务器没有正常工作,处于停止运行状态。经过“授权”的DHCP服务器“计算机图标”将变成绿色“箭头”。
在“Active Directory”服务器上对DHCP服务器授权的具体步骤如下。
(1) 单击“开始”→“管理工具”→“DHCP”选项,启动“DHCP”管理控制台,如图1-7所示。
图1-7 “DHCP”管理控制台
(2) 右击“DHCP”,在弹出的快捷菜单中选择“管理授权的服务器”命令,显示如图1-8所示的“管理授权的服务器”对话框。
图1-8 “管理授权的服务器”对话框
(3) 单击“授权”按钮,显示如图1-9所示的“授权DHCP服务器”对话框。输入DHCP服务器的IP地址,例如192.168.0.1。
图1-9 “授权DHCP服务器”对话框
(4) 单击“确定”按钮,显示如图1-10所示的“确认授权”对话框。
图1-10 “确认授权”对话框
(5) 单击“确定”按钮,完成服务器的授权。如果网络中还有其他的DHCP服务器,可以再次单击“授权”按钮,授权完成其他DHCP服务器。授权完成的服务器如图1-11所示。
图1-11 授权完成的DHCP服务器
(6) 单击“确定”按钮,完成服务器的授权,授权完成后,DHCP的状态如图1-12所示。
图1-12 DHCP的服务器状态
1.5 创建作用域
作用域是网络上可用的IP地址的完整连续范围。作用域通常定义为接受DHCP服务的网络上的单个物理子网。作用域还为网络上的客户端提供服务器对IP地址及任何相关配置参数的分发和指派进行管理的主要方法。在安装Active Directory的网络中,默认情况作用域没有设置,需要经过配置后,才能为网络中的其他客户端计算机提供DHCP服务。
下面将介绍创建作用域的过程。
(1) 单击“开始”→“管理工具”→“DHCP”选项,显示 “DHCP”管理控制台。
(2) 右击DHCP服务器的名称,在弹出的快捷菜单中选择“新建作用域”命令,显示如图1-13所示的“新建作用域向导”对话框。
图1-13 “新建作用域向导”对话框
(3) 单击“下一步”按钮,显示如图1-14所示的“作用域名”对话框。在“名称”文本框中,键入DHCP服务器的显示名称。
图1-14 “作用域名”对话框
(4) 单击“下一步”按钮,显示如图1-15所示的“IP地址范围”对话框。在“起始”和“结束”IP地址段中,键入有效的IP地址,例如192.168.0.1~192.168.0.200。
图1-15 “IP地址范围”对话框
(5) 单击“下一步”按钮,显示如图1-16所示的“添加排除”对话框。在“起始”和“结束”IP地址段中,键入有效的IP地址,例如192.168.0.1~192.168.0.9,这个IP地址段,作为服务器专用的IP地址段,不参与IP地址分配。
图1-16 “添加排除”对话框
(6) 单击“下一步”按钮,显示如图1-17所示的“租约期限”对话框。设置租约的有效时间,默认值为8天。
图1-17 “租约期限”对话框
(7) 单击“下一步”按钮,显示如图1-18所示的“配置 DHCP 选项”对话框。本例中选择“否,我想以后配置这些选项”。
图1-18 “配置DHCP选项”对话框
(8) 单击“下一步”按钮,显示如图1-19所示的“正在完成新建作用域向导”对话框,显示新建作用域的摘要信息
图1-19 “正在完成新建作用域向导”对话框
(9) 单击“完成”按钮,完成DHCP作用域的创建,新建的作用域如图1-20所示。
图1-20 完成的新建作用域
(10) 新建的作用域不能正常使用,“作用域【192.168.0.1】 DHCP”前面的图标显示为红色向下的箭头,需要“激活”后才可以使用。
(11) 右击“作用域【192.168.0.1】 DHCP”,在弹出的快捷菜单中选择“激活”命令,如图1-21所示。
图1-21 功能菜单
(12) 稍等,DHCP服务器将自动激活,DHCP服务器即可提供IP地址分配服务。
1.6 配置DHCP服务器选项
在 DHCP 服务器选项中,用来配置一些“公共”信息,这些信息对各个作用域都生效,例如DNS服务器地址、WINS服务器地址等。如果同时在作用域选项中和服务器选项配置了相同的参数(如DNS服务器),则作用域的选项优先于服务器选项。
下面介绍在服务器选项中配置DNS、WINS服务器地址的方法和步骤。
(1) 打开 DHCP 管理控制台,右击“服务器选项”,从弹出的快捷菜单中选择“配置选项”命令(如图1-22所示)。
图1-22 功能菜单
(2) 显示如图1-23所示的“服务器选项”对话框。选择“006 DNS服务器”复选框,在“IP地址”文本框中输入网络中DNS服务器的IP地址,例如192.168.0.1,单击“添加”按钮。如果网络中有多个DNS,可以再次添加。如果发现DNS服务器的顺序错误,可以单击“下移”或者“上移”按钮调整DNS服务器的顺序。
图1-23 “服务器选项”对话框
(3) 选择“044 WINS/BINS服务器”复选框,添加WINS服务器的地址,如图1-24所示。
图1-24 “044 WINS/BINS服务器”复选框
(4) 选择“046 WINS/BINS节点类型”复选框,并修改节点类型为0x8,如图1-25所示。
图1-25 “046 WINS/BINS节点类型”选项
(5) 单击“确定”按钮,完成服务器选项的设置。配置好的 DHCP 服务器如图1-26所示。
图1-26 配置好的DHCP服务器
1.7 客户端获取地址
客户端计算机启动后,DHCP将自动为链接的客户端计算机分配IP地址,起始的IP地址是192.168.0.10。
(1) 单击“开始”→“运行”,显示“运行”对话框。在“打开”文本框中,键入“cmd”,单击“确定”按钮,显示如图1-27所示的MSDOS命令行窗口。
图1-27 MSDOS命令行窗口
(2) 在命令行提示符下键入如下命令:
ipconfig /all
按 Enter 键确认,命令成功执行,显示如图1-28所示窗口,即可查看当前计算机分配到的IP地址。
图1-28 分配的IP地址