网络服务器配置与管理教辅书 Help

5-1 搭建dhcpd服务

介绍

DHCP协议: (Dynamic Host Configuration Protocol)动态主机配置协议。避免了手工配置静态IP的麻烦,自动获取局域网IP,局域网的路由器就自带了dhcpd服务。

路由器后台界面,从中可以看到dhcp服务相关的参数,一些同学也在家中设置过路由器:

5-1路由器后台界面

实验设计

  • 服务端:CentOS 上安装dhcp-server服务

  • 客户端(任选一个):

    • 客户端1:机房自带的Windows Server 2016

    • 客户端2: 从CentOS虚拟机完整克隆(在安装dhcp前克隆,虚拟机列表/CentOS 8-鼠标右键/电源/🟥关闭客户机。)

    • 客户端3: Ubuntu虚拟机

服务端和客户端虚拟机都在NAT模式,确保互通。不能为桥接模式,否则客户机会走学校路由器的dhcp服务中得到IP。 这里其实有两个DHCP服务器,一个是VMware NAT网卡自带的(一台虚拟机启动后有IP就是从VMware自带的DHCP服务中得到IP)。
一个是充当服务端的CentOS虚拟机,我们自己安装的dhcp-server软件。所以要禁用掉VMware自带的,让客户端自动走我们自建的服务,如果确实分配到了配置文件中的网段中的IP,则为成功。

网络环境准备

服务端CentOS虚拟机客户端Windows Server虚拟机必须都在NAT模式,这样它们是互通的,客户机开机时可以访问到服务端上的DHCP服务。

  1. (学校机房中)确认宿主机Windows中的VMware虚拟机网卡启用中:
    Vmware Workstation安装后会生成对应三种网络模式的网卡,本地物理网卡 桥接/vmnet1 仅主机/vmnet8 NAT。 机房电脑因为还安装有虚拟化软件VirtualBox、为了防止冲突禁用了VMware的网卡,需要启用。
    1)Windows宿主机系统设置/网络和Internet/更改适配器选项,选中virtualbox网卡/鼠标右键-禁用。
    2)Windows宿主机系统设置/网络和Internet/更改适配器选项,选中vmnet8网卡 /鼠标右键-启用。
    3)Windows宿主机系统设置/网络和Internet/更改适配器选项,选中vmnet1网卡 /鼠标右键-启用。

    5 1
  2. VMware编辑虚拟网卡(virtual network editor), 禁用VMware网卡自带的DHCP服务
    因为要测试自建的DHCP服务,防止客户机启动后自动从VMnet8自带的DHCP服务自动获取IP,因此要关闭VMware虚拟网卡自带的dhcp服务。
    Vmware软件界面顶部菜单栏-编辑/编辑虚拟网络。
    1)先选中VMnet8 NAT网卡。(如果灰色不能编辑,先进行Windows账户授权)。
    2)然后取消勾选 ✅使用本地DHCP为虚拟机分配IP 。这样就禁用了。
    3)(可选但建议)设置网卡网段 192.168.1.0 ,方便后面书写。(后面配置dhcpd.conf文件时的网段应该与此处网段保持一致)

    5 1

    (以描述中的NAT8网卡为准,图片是中的NAT1网卡是旧图)

  3. 服务机开机前设置使用NAT网卡:
    虚拟机列表鼠标右键/编辑设置/网络适配器,选择到🔘NAT 。(截图用的仅主机网卡和离线安装方式,现在以步骤描述为准。)

    5 1

  4. (可选)重启虚拟机中网卡:
    如果虚拟机已经开启,然后又修改了VMnet8的设置,那么虚拟机中的网卡需要开关以加载最新配置。

设置静态IP

因为以下原因,需要为服务端设置静态IP:

  • VMnet8自带的DHCP服务已经被禁用,服务机CentOS启动后无法获取IP地址,无法联网安装软件。

  • 作为服务端应该有一个固定IP,客户机才好访问。

  • dhcpd.service服务进程启动时必须绑定一个网卡,监听来自同网段广播的请求。

  1. 设置静态IP(图形界面): 选择手动并填入信息如下图。

    • IP: 192.168.1.100(这个网段内的任意值都行) 掩码:255.255.255.0

    • 网关: 192.168.1.2 (⚠️注意VMware的VMnet8网卡默认网关是2,而不是常用的1或254,如果设置不正确,表现为局域网没问题但不能连互联网)

    • DNS: 114.114.114.114

    5 1 ip
  2. 验证静态ip符合网卡网段:
    打开网卡开关,显示已连接。信息显示ip在vmnet8设置网段中,无自动分配的dns地址。

    5 1 ip
  3. 验证互联网访问: ping www.baidu.com

在线安装

软件名: 服务端dhcp-server,客户端dhcp-client。(老版本CentOS中叫dhcp。)

  1. 换源。

    sed -i -e "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-* sed -i -e "s|#baseurl=http://mirror.centos.org|baseurl=https://mirrors.cloud.tencent.com|g" /etc/yum.repos.d/CentOS-* yum makecache
  2. 在线安装

    yum install dhcp-server

(跳过)离线安装

  1. 老师下发离线安装包到学生机桌面。宿主机中复制,虚拟机中图形化文件管理器中粘贴,即下载安装包到/root目录下。

  2. 解压缩解包

# 解压缩 tar -zxvf dhcp-installer.tar.gz # 安装 rpm -iv --nodeps --force ./dhcp-installer/*.rpm # 验证安装 rpm -r dhcp

配置

  1. (可选)阅读模板文件cat /usr/share/doc/dhcp-server/dhcpd.conf.example

  2. 编辑配置文件dhcpd.conf(⚠️注意是dhcpd.conf不是dhcp.conf):

    nano /etc/dhcp/dhcpd.conf

    添加如下内容

    # 注意配置文件是 dhcpd.conf 不是 dhcp.conf。 # 不要抄写注释,在一些配置文件中不允许行内注释。 # ⚠️格式解析式严格,该用空格的地方用空格,该用tab的时候用tab。 option domain-name "example.com"; # 不重要,因为没有搭建dns服务器,这个域名是逻辑上的管理者。 option domain-name-servers ns.example.com; default-lease-time 600; # 租约时间 max-lease-time 7200; authoritative; # 权威服务器,即此配置有效 # 核心设置 subnet 192.168.1.0 netmask 255.255.255.0 { # 客户端子网网段、掩码 range dynamic-bootp 192.168.1.10 192.168.1.20; # 客户端可以获取的IP池范围,这里限制一个小范围,方便后面测试验证结果 option broadcast-address 192.168.1.255; # 广播地址 option routers 192.168.1.2; # 网关 } # 其它设置,略,自己实验,例如根据网卡MAC地址给老板的电脑分配固定IP防止IP经常变动。
  3. 检查配置

    dhcpd -t

启动服务

  1. 启动服务

    systemctl start dhcpd systemctl status dhcpd # 如果配置修改需要重启服务使生效 # systemctl restart dhcpd
  2. 查看服务状态

    systemctl status dhcpd
  3. 关闭防火墙

    systemctl stop firewalld

=== 以下为客户端 ===

客户端测试

这里使用同一台宿主机下的Windows虚拟机做客户端。

  1. 客户机选择仅主机网卡: 客户端网卡适配器调整为仅主机模式。这样客户端与服务端处于同一虚拟网卡下,可以互通,可以ping服务端ip测试。

  2. 客户机重启网卡: 桌面右下角网络图标(鼠标右键打开网络设置)/高级网络设置-更改适配器选项/以太网卡-鼠标右键选禁用-鼠标右键选启用

  3. 验证成功: Windows以太网卡能分配到ip地址192.168.1.10 (与配置文件中范围一致)、在服务端配置的地址段中, dhcp服务器IP显示为服务机IP ,掩码、网关、无dns服务器,这些特征都与服务端dhcpd.conf中一致,为成功🎉。 Windows Server 2016

    5 1windowsserver

    CentOS 8

    5 1centos8

    Windows 10

    5 1windows10
  4. (可选)服务端管理:

# 服务机上查看释放的ip cat /var/lib/dhcpd/dhcpd.leases # 返回信息可见分配出去的ip、租约剩余时间,与客户机中的信息一致。

思考题

(真实发生)有同学使用了桥接网卡进行实验,一些教室发现出现无法控制学生机无法批量开关学生机的现象,分析原因。

23 十月 2025