项目 3 DHCP 服务器 【学习目标】 本章将系统介绍DHCP 服务器的理论知识、DHCP 服务器的安装和基础配置、DHCP 客户端的配置和DHCP 中继的配置。 通过本章的学习,读者应完成以下目标: ● 了解DHCP 服务器的理论知识; ● 了解DHCP 服务器的基础配置; ● 了解DHCP 客户端的配置和测试; ● 了解DHCP 中继代理的配置; ● 了解DHCP 服务器的备份和还原。 3.项目背景 1 五桂山公司新建了两个工作室,现进行IP 地址规划,如果采用手工配置,则工作量大且 不方便管理;如果用户擅自修改网络参数,则还有可能造成IP 地址冲突等问题。使用动态 主机配置协议DHCP 分配IP 地址可解决以上问题,通过动态地址的分配向这两个工作室 所在的员工提供自动接入的配置,其中董事长计算机分配的IP 地址是固定的。为了节约成 本和提高管理效率,该公司只提供一个DHCP 服务器(8/24 )。DHCP 的 IP 地址为10.65. 基础模型如图3-1所示,网络拓扑描述如表3-1所示。 2. 图3-1 DHCP 基础模型 表3- 1 网络拓扑描述 序号服务名称IP 地址操作系统 1 DHCP 服务器10.2.65.8/24 Linux7.4 2 客户机A 10.2.65.10/24 Windows 3 客户机B 10.2.65.11/24 Windows 网络服务配置与管理———Red Hat Linux 7 52 3.2 知识引入 3.2.1 DHCP的概念与作用 DHCP(DynamicHostConfigurationProtocol,动态主机配置协议)是一个局域网的网 络协议,它使用UDP协议工作,端口号为服务端67、客户端68,通常应用在大型局域网络环 境,主要作用是集中管理及分配IP 地址,使网络环境中的主机动态获得IP 地址、网关 (gateway)地址、DNS服务器地址等信息,能够提高地址的使用率。 当使用DHCP服务器动态分配IP地址时,一旦有客户端接入网络,客户端就会发出IP 地址请求(request),DHCP服务器会从地址池中临时分配一个IP地址给客户端。当客户 端断开与服务器的连接时,DHCP服务器会把该IP地址收回,并把它分配给其他需要地址 的客户端,从而有效节约了IP地址的资源。 3.2.2 DHCP的工作原理 DHCP服务器负责监听客户端的请求,并向客户端发送预定的网络参数,管理员在 DHCP服务器上必须配置要提供给客户端的相关网络参数、自动分配地址的范围、地址租 约时间等参数,客户端只需要把IP参数设置为自动获取即可。DHCP的工作原理如图3-2 所示,其中(1)~(4)步为第一次获取地址的必要步骤。 图3-2 DHCP的工作原理 DHCP客户端获取IP地址的工作过程如下。 (1)DHCP发现(discover)。当客户端第一次登录网络时,客户端以广播的形式(源地 址为0.0.0.0,目的地址为255.255.255.255)发送一个DHCPdiscover请求,并附加DHCP发 现信息的广播数据包。 (2)DHCP提供(offer)。当DHCP服务器接收到DHCPdiscover后,服务器自动检查 动态地址范围,选取一个空闲地址,(以华为单播、cisco广播的方式)发送一个DHCPoffer 项目3 DHCP 服务器 53 响应,其中包含即将要给客户端下发的地址信息(包含主要信息+次要信息),主要信息为前 缀+掩码+网关;次要信息为租期+已用的地址信息+特殊保留的地址信息+DNS信 息等。 (3)DHCP请求(request)。当客户端收到DHCPoffer封包后(若同时收到若干个 DHCPoffer包,则客户端默认选择收到的第一个服务器所提供的IP地址),会发出一个 DHCPrequest广播封包,表示它接收服务器所提供的IP地址,同时发出一个ARP请求,确 认该地址未被其他客户端使用。 (4)DHCP应答(ack)。当服务器收到DHCPrequest包后,发送一个DHCPack回应 (以华为单播、cisco广播的方式),表示地址租约生效,客户端开始对此地址和网络配置进行 工作,DHCP工作完成。其他DHCP服务器在收到DHCPrequest包(广播)后撤销提供的 IP地址。 (5)DHCP拒绝(nak)。服务器对客户端的DHCPrequest报文的拒绝响应报文(广 播),如服务器对客户端分配的IP地址已超过使用租借期限或客户端移到了另一个新的 网络。 (6)DHCP地址错误(decline)。当客户端发现服务器分配给它的IP地址发生冲突时, 会通过发送此报文通知服务器,并会重新向服务器申请地址。服务器下发地址前,先将下发 的地址ping2次,若ping不通,则代表没人用;客户端收到服务器给出的DHCPack,查看 这些地址信息并将其设置为实验地址,先发送免费ARP,如果有应答,则显示地址冲突,客 户端给服务器发送decline,告知地址冲突并回收地址信息。 (7)DHCP释放(release)。客户端可通过发送此报文主动释放服务器分配给它的IP 地址,当服务器收到此报文后,可将这个IP地址分配给其他客户端。 (8)如果客户端重新登录,则不需要发送discover包,只需要从request请求开始即可。 如果客户端不是第一次登录该网络,而是地址租约到期,则客户端就要重新进行一次如上过 程,否则客户端就会用上次获得的地址配置进行工作。当客户端不能联系到DHCP服务器 或租用失败时,将会使用自动私有IP地址(168.254.0.1~169.254.255.254地址段)进行配 置,这个机制可以使DHCP服务在不可使用时客户端仍能进行通信,同时管理员也可以从 客户端的IP地址判断DHCP是否成功。 3.2.3 DHCP服务的相关概念 (1)作用域(scope)。通过DHCP服务租用或指派给DHCP客户端的IP地址范围。 一个范围可以包括单独子网中的所有IP地址(有时也将一个子网再划分成多个作用域)。 例如10.2.65.1~10.2.65.254,DHCP服务器只能将作用域中定义的IP地址分配给DHCP 客户端,因此必须创建作用域才能让DHCP服务器给客户端分配地址。此外,DHCP服务 器会根据接收到的DHCP客户端租约请求的网络接口决定哪个DHCP的作用域为DHCP 客户端分配IP地址。 (2)排除范围(exclusionrange)。在DHCP作用域中,从DHCP服务中排除小范围内 的一个或多个IP地址。使用排除范围的作用是保留这些地址永远不会被DHCP服务器提 供给客户端。 (3)地址池(addresspool)。DHCP作用域中可用的IP地址范围。 网络服务配置与管理———Red Hat Linux 7 54 (4)租约期限(lease)。DHCP客户端使用动态分配IP地址的时间。在租用时间过期 后,客户端必须续订租用或使用DHCP获取新的租用。租约期限是DHCP中最重要的概 念,DHCP服务器并不给客户端提供永久的IP地址(正常情况下),而是只允许客户端在某 个指定时间范围内(租约期限内)使用某个IP地址。租约期限可以是几分钟、几天、几个月 甚至是永久(不推荐使用),用户可以根据不同的情况使用不同的租约期限。 (5)保留(reservation)。为特定DHCP用户租用而永久保留在一定范围内的特定IP 地址。例如局域网中的DNS服务器和FTP服务器、董事长的IP地址等。 (6)选项类型(optiontypes)。DHCP服务器在配置DHCP客户端时可以进行配置的 参数类型。常见的参数类型有子网掩码、默认网关和DNS服务器等。每个作用域可以具有 不同的选项类型。当服务器选项与作用域选项都配置时,应用的是作用域选项的配置。 3.3 项目过程 3.3.1 任务1 DHCP服务器的安装与配置文件 1.任务分析 五桂山公司需要给内网分配IP地址,如果采用手工配置,则工作量大且不方便管理,因 此使用DHCP分配IP地址,配置一台DHCP服务器(10.2.65.8/24),在此服务器上安装 DHCP服务器功能以满足需求。 图3-3 虚拟机光盘图标 2.任务实施过程 (1)连接光盘(虚拟机右下角右击连接),如图3-3 所示。 (2)创建文件夹(挂载路径),挂载后进入挂载的文件 夹查看相关的安装包。 [root@localhost /]#mkdir wgs [root@localhost /]#mount /dev/cdrom /wgs //挂载 mount: /dev/sr0 is write-protected, mounting read-only [root@localhost /]#mount //查看挂载,此处只显示最后几行 (ro,nosuid,nodev,relatime,uid=1000,gid=1000,iocharset=utf8,mode=0400,dmode=0500, uhelper=udisks2) /dev/sr0 on /wgs type iso9660 //挂载的位置 (ro,relatime,uid=1000,gid=1000,iocharset=utf8,mode=0400,dmode=0500) [root@localhost wgs]#cd /wgs [root@localhost wgs]#ll //查看详细信息 total 812 …d r-xr-xr-x. 2 wgs wgs 774144 May 7 2014 Packages … [root@localhost wgs]#cd Packages/ //进入Packages [root@localhost Packages]#find dhcp* //查看DHCP 相关文件 dhcp-4.2.5-27.el7.x86_64.rpm dhcp-common-4.2.5-27.el7.x86_64.rpm dhcp-libs-4.2.5-27.el7.i686.rpm 项目3 DHCP 服务器 55 dhcp-libs-4.2.5-27.el7.x86_64.rpm [root@localhost Packages]#rpm -qa | grep dhcp //查看已安装的全部DHCP 文件 dhcp-libs-4.2.5-27.el7.x86_64 dhcp-common-4.2.5-27.el7.x86_64 dhcp-4.2.5-27.el7.x86_64 (3)以上软件包的用途如下。 ● dhcp-libs-4.2.5-27.el7.x86_64:包含ISCdhcpclient和dhcpserver使用的共享库服 务器。 ● dhcp-common-4.2.5-27.el7.x86_64:DHCP依赖库,即用于安装DHCP服务的基础 包,包括服务端和客户端进行沟通时需要用到的一些文件。 ● dhcp-4.2.5-27.el7.x86_64:DHCP主程序包,包括DHCP服务和中继代理程序,安装 该软件包进行相应配置,即可为客户机动态分配IP地址及其他TCP/IP信息。 (4)安装DHCP。安装DHCP服务器可以使用rpm 方式和yum 方式,读者可以根据 习惯任选一种进行。 方法一:rpm 安装。 [root@localhost Packages]#rpm -ivh dhcp-4.2.5-27.el7.x86_64.rpm //安装DHCP 文件,-ivh 为显示安装进度 方法二:yum 安装。 配置本地yum源文件,首先将/etc/yum.repos.d/下的文件移走,然后创建local.repo文件。 [root@localhost network-scripts]#mv /etc/yum.repos.d/* /media [root@localhost network-scripts]#cd /etc/yum.repos.d/ [root@localhost yum.repos.d]#ll 总用量0 [root@localhost yum.repos.d]#vi local.repo [wgs] //代表库的名称,必须是唯一的 name=wgs //是这个库的说明,无太大意义 baseurl=file:///wgs //说明采用什么方式进行传输,具体路径在哪里,有file:///、ftp://、http://等 gpgcheck=0 //表示使用gpg 文件检查软件包的标签名 enabled=1 //说明启用这个更新库,0 表示不启用 [root@localhost yum.repos.d]#yum -y install dhcp //-y 表示确定安装 已加载插件: langpacks, product-id, search-disabled-repos, subscription-manager This system is not registered with an entitlement server. You can use subscription-manager to register. 正在解决依赖关系 --> 正在检查事务 ---> 软件包dhcp.x86_64.12.4.2.5-58.el7 将被安装 --> 解决依赖关系完成 依赖关系解决 ======================================================================= Package 架构 版本 源 大小 ======================================================================= 正在安装: dhcp x86_64 12:4.2.5-58.el7 wgs 513 k 事务概要 ======================================================================= 安装 1 软件包 网络服务配置与管理———Red Hat Linux 7 56 总下载量: 513 k 安装大小: 1.4 M …正 在安装 : 12:dhcp-4.2.5-58.el7.x86_64 1/1 wgs/productid | 1.6 kB 00:00:00 验证中 : 12:dhcp-4.2.5-58.el7.x86_64 1/1 已安装: dhcp.x86_64 12:4.2.5-58.el7 完毕! (5)安装完成后,默认的配置文件为/etc/dhcp/dhcpd.conf。这个文件中没有任何内容,有 两种方式,一种是自行编写,另一种需要将/usr/share/doc/dhcpd-*/dhcpd.conf.sample复 制到/etc/dhcp/dhcpd.conf中。复制dhcpd.conf.sample到/etc/dhcp/dhcpd.conf。 [root@localhost /]#cd /usr/share/doc/dhcp-* [root@localhost dhcp-4.2.5]#ll -rw-r--r--. 1 root root 3306 Jan 24 2014 dhcpd6.conf.sample -rw-r--r--. 1 root root 3262 Nov 19 2012 dhcpd.conf.sample drwxr-xr-x. 2 root root 67 Sep 28 11:10 ldap [root@localhost dhcp-4.2.5]#cp dhcpd.conf.sample /etc/dhcp/dhcpd.conf //复制 cp: overwrite '/etc/dhcp/dhcpd.conf'? y //是否覆盖,输入y 3.3.2 任务2 创建作用域 1.任务分析 现需要将一台Linux系统的计算机充当服务器(10.2.65.8/24),两台充当客户端,一台 自动获取动态地址10.2.65.31~10.2.65.200,一台获取DHCP服务器分配的保留地址10.2. 65.127。 (1)dhcpd.conf介绍。dhcpd.conf包含全局配置和局部配置,全局配置包含参数或选 项,该部分对整个DHCP服务器生效;局部配置通常由声明部分表示,该部分仅对局部生 效,如只对一个IP作用域生效。dhcpd.conf文件的格式如下。 #全局配置 //“# ”号表示注释 参数或选项; //全局生效,“;”号结束 #局部配置 声明{ 参数或选项; //局部生效 } //注意大括号是成对的 (2)参数介绍如表3-2所示。 (3)IP地址绑定。在DHCP中需要分配一个固定的IP地址给指定用户,例如董事长 的IP地址。 ● host主机名{…},给保留主机配置的名称。 ● hardware类型硬件地址,要保留的主机的MAC地址。 ● fixed-addressIP地址,要保留给主机的IP地址。 项目3 DHCP 服务器 57 表3-2 参数介绍 参 数作 用 ddns-update-style[类型] 定义DNS服务器动态更新的类型,类型有none(不支持动态 更新)、interim(互动更新模式)、ad-hoc(特殊更新模式) [allow|ignore]client-updates 允许/忽略客户端更新DNS记录 default-lease-time[时间] 默认超时时间,单位为秒 max-lease-time[时间] 最大超时时间,单位为秒 optiondomain-name-servers[IP地址] 定义DNS服务器地址 optiondomain-name“域名” 定义DNS服务器域名 range[开始IP地址][结束IP地址] 定义用于分配的IP地址池(注意中间的空格) optionsubnet-mask[掩码] 定义客户端的子网掩码 optionrouters[网关IP] 定义客户端的网关地址 broadcast-address[广播地址] 定义客户端的广播地址 ntp-server[ntp地址] 定义客户端的网络时间服务器[ntp]地址 nis-servers[nis地址] 定义客户端的NIS域服务器地址 Hardwarexx:xx:xx:xx:xx:xx 指定网卡接口类型与MAC地址 server-namemydhcp.smile.com 向客户端通知DHCP的主机名 Fixed-address[固定的IP地址] 将某个固定的IP地址分配给指定的主机(由MAC地址确定 该主机) time-offset[偏移误差] 指定客户端与格林尼治时间的偏移差 2.任务实施过程 (1)在名称框中右击“设置”按钮,选择网络类型(服务器和客户机都一样),如图3-4 所示。 图3-4 网络类型 网络服务配置与管理———Red Hat Linux 7 58 (2)设置DHCP服务器的IP地址。 [root@localhost dhcp]#vi /etc/sysconfig/network-script/ifcfg-ens33 //ens33 不同版本的名称不同,可先cd /etc/sysconfig/network-script 后再ls 查看以ifcfg 开头的文件 BOOTPROTO=static //配置静态地址 NAME=ens33 //名称 UUID=8d6971e3-030e-4d28-8b39-e5b53be40d52 //由MAC 地址产生的唯一标识符 DEVICE=ens33 ONBOOT=yes //系统启动时是否激活 IPADDR=10.2.65.8 //IP 地址 PREFIX=24 //掩码 (3)为了方便,这里采用dhcpd.conf自行配置方式。其中,hardwareethernet项可在保 留对象主机上的cmd窗口下通过执行ipconfig/all命令获取。 [root@localhost dhcp]#vi dhcpd.conf //注意路径,这里已经在/etc/dhcp 的目录下 ddns-update-style none; //全局配置 subnet 10.2.65.0 netmask 255.255.255.0 { range 10.2.65.31 10.2.65.200; //分配给客户端的IP 网段 option routers 10.2.65.1; //网关 option domain-name-servers 10.2.65.1; //DNS 服务器的IP 地址 option domain-name "dns.wgs.com"; //DNS 服务器的域名 default-lease-time 600; //默认超时时间 max-lease-time 7200; //最大超时时间 host client2 { hardware ethernet 00:0c:29:f2:ff:5d; //客户端的MAC 地址 fixed-address 10.2.65.127; //给客户端保留的地址 } } //注意括号是成对的 (4)重启dhcpd服务,有两种方式,任选一种即可。 [root@localhost dhcp]#systemctl start dhcpd //修改配置文件需重启dhcpd,默认不启动 (5)关闭防火墙,默认开启。 [root@localhost dhcp]#systemctl stop firewalld (6)查看端口状态。 [root@localhost dhcp]#netstat -anp | grep :67 //查看端口67 的状态 udp 0 0 0.0.0.0:67 0.0.0.0:* 35704/dhcpd (7)客户端测试。测试前可通过执行ipconfig/release命令释放缓存地址,然后执行 ipconfig/renew命令以获取地址。执行ipconfig/all命令可查看DHCP客户端获取的主要 和次要信息,如图3-5所示。 图3-5 客户端获取地址 项目3 DHCP 服务器 59 (8)查看client2发现获取到保留的地址,如图3-6所示;dhcpd.conf的hardware参数 为client2的MXC地址,如图3-7所示。 图3-6 客户端详细地址 图3-7 查看详细信息 (9)查看服务器租约数据库文件(DHCP的分配信息)。 [root@localhost dhcp]#cat /var/lib/dhcpd/dhcpd.leases #The format of this file is documented in the dhcpd.leases(5) manual page. #This lease file was written by isc-dhcp-4.2.5 lease 10.2.65.31 { starts 5 2020/10/09 10:57:03; ends 5 2020/10/09 11:07:03; cltt 5 2020/10/09 10:57:03; binding state active; next binding state free; rewind binding state free; hardware ethernet 00:0c:29:37:68:e5; uid "\001\000\014)7h\345"; client-hostname "zhou"; } (10)在配置过程中,如果有报错,则可查看日志文件。 [root@localhost dhcp]#cat /var/log/messages 网络服务配置与管理———Red Hat Linux 7 60 3.3.3 任务3 DHCP多网卡多作用域 1.任务分析 现有有限网络IP地址,需要向网络中添加更多的IP地址,并使用新的IP地址进行扩 充,小型网络可以对设备进行重新分配,而大型网络的重新分配操作烦琐,如果操作不当,则 可能会造成通信中断,通过多网卡多作用域可实现IP地址扩充的目的。DHCP多网卡多作 用域的模型如图3-8所示,网络拓扑描述如表3-3所示。 五桂山公司原先规划了10.2.65.0/24网段,在任务2的基础上又新增了200台计算机, 现需要用多作用域创建一个10.2.66.0/24网段的IP地址,给新增的200台计算机分配IP 地址。 图3-8 DHCP多网卡多作用域模型 表3-3 网络拓扑描述 序号服务名称IP地址网络区段操作系统 1 DHCP服务器10.2.65.8/24 server1 10.2.66.8/24 server2 Linux 2 client1 10.2.65.0/24 server1 Windows 3 client2 10.2.66.0/24 server2 Windows 2.任务实施过程 (1)右击DHCP服务器虚拟机的标题栏,在弹出的对话框中,在“硬件”列表中选择“网 络适配器”(网卡2)选项,单击“添加”按钮,新增一块网卡。 (2)在“网络连接”框中选择“LAN 区段”单选项,再单击“LAN 区段”按钮,添加 server1、server2网络区段,其中网卡1与client1为server1网络类型,网卡2与client2为 server2网络类型,如图3-9所示,最后单击“确定”按钮。 (3)配置网卡2的IP 地址,执行ifconfig命令将其配置为临时配置,注意重启后会 失效。 [root@localhost etc]#ifconfig ens38 10.2.66.8 netmask 255.255.255.0 [root@localhost etc]#ifconfig //查看IP ens33: flags=4163< UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 项目3 DHCP 服务器 61 inet 10.2.65.8 netmask 255.255.255.0 broadcast 10.2.65.255 inet6 fe80::20c:29ff:fe3c:3989 prefixlen 64 scopeid 0x20< link> ether 00:0c:29:3c:39:89 txqueuelen 1000 (Ethernet) RX packets 3568 bytes 384033 (375.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 2112 bytes 294748 (287.8 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ens38: flags=4163< UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.2.66.8 netmask 255.255.255.0 broadcast 10.2.66.255 ether 00:0c:29:3c:39:93 txqueuelen 1000 (Ethernet) RX packets 67 bytes 11363 (11.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 14 bytes 2240 (2.1 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 图3-9 网络类型设置 (4)配置dhcpd.conf文件,这里可以使用复制快捷键。 ● 复制一行:进入命令模式,在要复制的句子开头输入yy,在要粘贴的位置输入p。 ● 复制多行:进入命令模式,在要复制的句子开头输入y,再输入要复制的行数,在要粘 贴的位置输入p。 ● 删除整行:进入命令模式,在要删除的句子开头输入dd。 ● 恢复删除的操作:输入u。 ddns-update-style none; subnet 10.2.65.0 netmask 255.255.255.0 { //网卡1 的作用域 range 10.2.65.31 10.2.65.200; option routers 10.2.65.1; option domain-name-servers 10.2.65.1; 网络服务配置与管理———Red Hat Linux 7 62 option domain-name "dns.wgs.com"; option time-offset -18000; default-lease-time 600; max-lease-time 7200; } //因为此时client 模拟66 网段的主机,不能被作为保留的主机MAC 地址,所以删除host subnet 10.2.66.0 netmask 255.255.255.0 { //网卡2 的作用域 range 10.2.66.1 10.2.66.200; option routers 10.2.66.1; option domain-name-servers 10.2.66.1; option domain-name "dns.wgs2.com"; option time-offset -18000; default-lease-time 600; max-lease-time 7200; } (5)重启dhcpd服务。 [root@localhost Desktop]#systemctlrestart dhcpd //重启dhcpd 服务 (6)测试客户端,如图3-10和图3-11所示。 图3-10 客户端获取地址 图3-11 客户端获取地址 3.3.4 任务4 DHCP超级作用域 1.任务分析 五桂山公司建立了DHCP服务器,规划了10.2.65.0/24网段的单作用域结构。随着规 模的扩大,现有IP地址的不足。现需要使用超级作用域增加IP地址,在DHCP服务器上 项目3 DHCP 服务器 63 添加新的作用域,使用10.2.66.0扩张网络IP地址的范围。 超级作用域是DHCP服务器的一种管理功能,使用超级作用域可以将多个作用域组合 为一个管理实体,进行统一管理。DHCP超级作用域的模型如图3-12所示,网络拓扑描述 如表3-4所示。 图3-12 DHCP超级作用域模型 表3-4 网络拓扑描述 序号服务名称IP地址操作系统 1 DHCP服务器10.2.65.8/24 Linux 2 client1 10.2.65.0/24 Windows 3 client2 10.2.66.0/24 Windows (1)超级作用域的功能如下: ● 为客户端提供多个作用域的IP配置; ● 当地址有限,需要更多的IP地址,最初的作用域无法满足需求时,使用新的作用域 IP地址扩展范围; ● 客户端需要从原有的作用域迁移到新的作用域。 (2)超级作用域的格式如下。 ddns-update-style none; shared-network wgs { //wgs 为超级作用域的名称 subnet 10.2.65.0 netmask 255.255.255.0 { } subnet 10.2.66.0 netmask 255.255.255.0 { } } 2.任务实施过程 (1)要求一台DHCP服务器和两台客户机都在同一个LAN 中。服务器的dhcpd.conf 配置文件中的一个作用域可设IP地址的数量为1,另一个任意,则使用两台客户端进行测 试,一个获取到数量为1的作用域,另一个获取另一个作用域即可。 网络服务配置与管理———Red Hat Linux 7 64 (2)向DHCP服务器配置文件添加以下内容。 ddns-update-style none; shared-network wgs { option time-offset -18000; //超级作用域中的参数为全局参数 default-lease-time 600; max-lease-time 7200; subnet 10.2.65.0 netmask 255.255.255.0 { range 10.2.65.10 10.2.65.10; //模拟一个IP 地址 option routers 10.2.65.1; option domain-name-servers 10.2.65.1; option domain-name "dns.wgs.com"; } subnet 10.2.66.0 netmask 255.255.255.0 { range 10.2.66.100 10.2.66.200; option routers 10.2.66.1; option domain-name-servers 10.2.66.1; option domain-name "dns.wgs2.com"; } } //share 的结束符 (3)重启dhcpd服务。 [root@localhost Desktop]#systemctlrestart dhcpd (4)第一个客户端测试,如图3-13所示。 图3-13 客户端获取地址 (5)第二个客户端测试,因为前面设置65网段的作用域只有一个IP地址,被获取后则 后面的客户端都从新的作用域(66网段)获取IP地址,如图3-14所示。 图3-14 客户端获取地址 项目3 DHCP 服务器 65 3.3.5 任务5 DHCP的中继 1.任务分析 五桂山公司存在两个子网,分别为10.2.65.0/24和10.2.66.0/24,现在需要通过DHCP 服务器为这两个子网分配IP地址。需要两台Linux操作系统的计算,一台作为DHCP服 务器(10.2.65.8/24),另一台作为中继(10.2.65.10/24和10.2.66.10/24),客户机可以是一台 或两台(若一台,则按情况更改网络类型即可)。 一台服务器要想跨网段给客户端分配IP地址,就需要借助中继再转发,ISCDHCP软 件中提供的中继代理程序为dhcrelay。DHCP的中继模型如图3-15所示,网络拓扑描述如 表3-5所示。 图3-15 DHCP中继模型 表3-5 网络拓扑描述 序号服务名称IP地址网络区段操作系统 1 DHCP服务器10.2.65.8/24 server Linux 2 DHCP中继服务10.2.65.10/24 server 10.2.66.10/24 server2 Linux 3 client 10.2.66.0/24 server2 Windows 注意:中继器的IP地址为下发给客户端的网关,需配置双网卡。 若使用的是Linux7.0版本,网卡名称可以修改。修改网卡名称的方法是编辑网络配 置文件。 vi /etc/sysconfig/network-script/ifcfg-ens33 NAME=eth0 DEVICE=eth0 [root@localhost network-scripts]mv ifcfg-eno16777736 ifcfg-eth0 //修改配置文件的名称 [root@ localhost network- scripts]# sed - i 's/rhgb/net.ifnames= 0 biosdevname= 0 &/' /etc/ default/grub [root@localhost network-scripts]#grub2-mkconfig -o /boot/grub2/grub.cfg 2.任务实施过程 (1)配置DHCP服务器的地址为10.2.65.8/24。 (2)右击DHCP中继器虚拟机的标题栏,在弹出的对话框中,在“硬件”列表中选择“网 络适配器”(网卡2)选项,单击“添加”按钮,新增一块网卡。 (3)在“网络连接”框中选择“LAN 区段”单选框,再单击“LAN 区段”按钮,添加 网络服务配置与管理———Red Hat Linux 7 66 server1、server2网络区段,其中网卡1 与DHCP 服务器为server网络类型,IP 网段为 10.2.65.0/24。网卡2与客户端为server2网络类型,IP网段为10.2.66.0/24。 (4)配置DHCP中继服务器的IP地址。 [root@localhost Desktop]#vi /etc/sysconfig/network-scripts/ifcfg-ens33(网卡的名称) ONBOOT=yes IPADDR=10.2.65.10 GATEWAY=10.2.65.8 //注意网关是连接对端的服务器IP 地址 PREFIX=24 [root@localhost Desktop]#ifconfigens38 10.2.66.10 netmask 255.255.255.0 [root@localhost Desktop]#systemctl restart network (5)配置中继代理服务器转发数据包,有两种方式,其中一种通过配置网关实现互联, 另一种通过配置路由实现互联,第一种网关互联类似于添加静态路由协议,第二种类似于添 加动态路由协议。 方式一:配置网关。 配置DHCP服务器的IP地址。特别注意,服务器的网关是连接中继代理服务器的IP 地址,这时可尝试ping中继LAN2网卡的IP地址,ping通则可进入下一步。 [root@localhost Desktop]#vi /etc/sysconfig/network-scripts/ifcfg-ens33 ONBOOT=yes IPADDR=10.2.65.8 PREFIX=24 GATEWAY=10.2.65.10 [root@localhost Desktop]#systemctl restart network //重启网络让其生效 方式二:配置路由协议(可选)。 在DHCP服务器不添加网关指向中继服务器10.2.65.10的情况下,服务器ping不通中 继的LAN2网段,需要服务器添加路由,同时在中继代理器上开启IPv4的转发功能,并设 置net.Ipv4.ip_forward为1。 [root@localhost Desktop]#ip route add 10.2.66.0/24 via 10.2.65.10 [root@localhost system]#vim /etc/sysctl.conf net.Ipv4.ip_forward=1 (6)DHCP服务器配置dhcpd.conf文件,服务器为LAN1和LAN2的客户机分配IP地 址,需要声明两个作用网段,也就是两个作用域,其中,作用域中的网关设置为中继的IP地址。 dns-update-style none; option time-offset -18000; //全局配置 default-lease-time 600; max-lease-time 7200; subnet 10.2.65.0 netmask 255.255.255.0 { //局部配置 range 10.2.65.31 10.2.65.200; option routers 10.2.65.10; option domain-name-servers 10.2.65.10; option domain-name "dns.wgs.com"; }s ubnet 10.2.66.0 netmask 255.255.255.0 { range 10.2.66.1 10.2.66.200; option routers 10.2.66.10; 项目3 DHCP 服务器 67 option domain-name-servers 10.2.66.10; option domain-name "dns.wgs2.com"; } [root@localhost Desktop]#systemctlrestart dhcpd //重启dhcp 服务 (7)DHCP中继服务器安装了DHCP服务,配置中继代理,中继代理计算机默认不转 发DHCP客户机的请求,需要使用dhcrelay指定DHCP的服务器位置。 [root@localhost /]#systemctl enable dhcrelay //开启dhcrelay 会提示 Created symlink from /etc/systemd/system/multi-user.target.wants/dhcrelay.service to /usr/lib/systemd/system/dhcrelay.service. //按照提示复制 [root@localhost system]#cp /etc/systemd/system/multi-user.target.wants/dhcrelay.service /etc/systemd/system/ [root@localhost /]#cd /etc/systemd/system [root@localhost system]#vim dhcrelay.service [Service] ExecStart=/usr/sbin/dhcrelay -d --no-pid 10.2.65.8 //指定DHCP 服务器的位置 [root@localhost system]#systemctl --system daemon-reload //重载配置信息 [root@localhost system]#systemctl restart dhcrelay //重启中继服务 [root@localhost system]#systemctl status dhcrelay //查看dhcrelay 的状态 dhcrelay.service-DHCP Relay Agent Daemon Loaded: loaded (/etc/systemd/system/dhcrelay.service; enabled) Active: active (running) since Mon 2020-10-12 03:08:26 EDT; 6s ago Docs: man:dhcrelay(8) Main PID: 3987 (dhcrelay) Status: "Dispatching packets..." CGroup: /system.slice/dhcrelay.service └─3987 /usr/sbin/dhcrelay -d --no-pid 10.2.65.8 (8)客户端网络类型为LAN2,检测客户端获取地址,如图3-16所示。 图3-16 客户端获取地址 3.3.6 任务6 DHCP的备份和还原 1.任务分析 如果在中型网络中管理上百台计算机,一旦DHCP服务器出现了问题,则可能导致客 网络服务配置与管理———Red Hat Linux 7 68 户端获取不到正确的IP地址。为解决这个问题,应配置两台以上的DHCP服务器,如果其 中一台出现问题,则另一台服务器会自动承担分配IP地址的任务。为避免发生客户端IP 地址冲突的现象,多台DHCP服务器提供的IP地址的范围也应不同。 五桂山公司的两个子网中各有一台DHCP服务器,一个为LAN1:10.2.65.0/24分配 IP地址,另一个为LAN2:10.2.66.0/24分配IP地址,互相提供备份的DHCP设置。 2.任务实施过程 (1)DHCP1的dhcpd.conf配置文件。 dns-update-style none; subnet 10.2.65.0 netmask 255.255.255.0 { range 10.2.65.1 10.2.65.99; option routers 10.2.65.1; }s ubnet 10.2.66.0 netmask 255.255.255.0 { range 10.2.66.1 10.2.66.99; option routers 10.2.66.1; } (2)DHCP2的dhcpd.conf配置文件。 dns-update-style none; subnet 10.2.65.0 netmask 255.255.255.0 { range 10.2.65.100 10.2.65.200; option routers 10.2.65.1; }s ubnet 10.2.66.0 netmask 255.255.255.0 { range 10.2.66.100 10.2.66.200; option routers 10.2.66.1; } (3)客户端验证,如图3-17所示。 图3-17 客户端测试获取IP地址 (4)关闭DHCP1服务,测试客户机获取IP地址正常。 3.3.7 任务7 DHCP服务在无线中的应用 1.任务分析 五桂山公司计划加入无线网络的扩建,现在需要使用外接DHCP服务器(10.2.65.8/ 24)为客户端提供IP地址。无线网络是一类利用无线电技术传输数据网络的总称。根据 项目3 DHCP 服务器 69 网络覆盖范围、网络应用场合和网络架构的不同等,可以将无线网络划分为不同的类别,根 据覆盖范围的不同可以划分为无线广域网(WirelessWideAreaNetwork,WWAN)、无线局 域网(WirelessLocalAreaNetwork,WLAN)、无线城域网(Wireless MetropolitanArea Network,WMAN)和无线个人局域网(WirelessPersonalAreaNetwork,WPAN)。无线局 域网是计算机网络与无线通信技术相结合的产物,其逻辑拓扑如图3-18所示,ensp拓扑如 图3-19所示,网络拓扑描述如表3-6所示。此任务的实验环境需要华为模拟器ensp软件, ensp模拟器中的AC6005充当AC,AP2050充当AP(注:若ensp版本过低,则没有AC和 AP模拟机),Linux7.4充当外接DHCP服务器。该任务需要一定的无线互联和网络互联 的知识,具体知识可参考相关书籍。 图3-18 逻辑拓扑图 图3-19 ensp拓扑图 网络服务配置与管理———Red Hat Linux 7 70 表3-6 网络拓扑描述 序号服务名称IP地址VLAN/网络类型设备名称操作系统 1 STA的DHCP服务器10.2.65.8/24 仅主机模式Linux7.4 2 DHCP中继/汇聚交换机 10.1.2.254/24 VLAN2 10.1.8.254/24 VLAN8 10.1.101.254/24 VLAN101 10.1.100.254/24 VLAN100 10.1.65.254/24 VLAN200 S5700 ensp1.3.00.100 3 云/物理机网卡10.2.65.7/24 Cloud ensp1.3.00.100 4 AP的DHCP服务器10.1.2.1/24 VLAN2 AR2240 ensp1.3.00.100 5 AC 10.1.8.1/24 VLAN8 AC6005 ensp1.3.00.100 6 AP 自动获取VLAN100 AP2050 ensp1.3.00.100 7 客户机(STA) 自动获取PC ensp1.3.00.100 2.任务实施过程 步骤一:实现DHCP与无线设备的互联。 (1)在关闭物理机防火墙的情况下实现模拟器ensp和与虚拟机中的DHCP服务器的 互联。因为需要和本机的ensp互联,所以服务器的“网络连接”选项应选择“仅主机模式”, 如图3-20所示。 图3-20 网络类型