当前位置:首页 > 技术 > 正文内容

利用 eNSP 构建 DHCP 中继服务环境

访客 技术 2026年8月29日 1

一、宿主机网络环境准备

首先需要确保物理机与虚拟机之间的通信通道已建立。将作为 DHCP 服务的虚拟机网卡绑定至 VMware 的仅主机模式网络。

在 VMware 虚拟网络编辑器中配置 VMnet1,确保桥接或仅主机设置正确。

VMnet1 配置截图

编辑 Linux 系统网卡配置文件以设置静态地址。

虚拟网络编辑器
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=10471379-f0e6-49e4-b59a-df82173c9fba
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.90.20
NETMASK=255.255.255.0
GATEWAY=192.168.90.254

保存文件后,通过以下指令重新加载网络接口:

`systemctl restart network`

确认 Windows 宿主机上 VMnet1 适配器已启用并连接。

VMware VMnet1 状态 VMnet1 配置详情

随后重新启动 Linux 虚拟机的网络服务,并使用终端工具进行远程连接测试。

SSH 连接成功示意

二、eNSP Cloud 设备互联配置

在网络仿真软件中添加 Cloud 设备用于连接外部物理网络。双击 Cloud 图标进入属性面板。

Cloud 设备属性窗口

将绑定的物理网卡添加至云设备列表中。

选择 VMnet1

新建一个以太网通道,指定协议为 UDP,并确保入参和出参端口连接方式无误。

UDP 协议通道创建

注意:若 Cloud 未正确关联物理接口,将无法通过二层交换机发现上行链路。

三、整体网络架构拓扑

完整实验拓扑图展示如下,包含三层架构与外部服务器连接关系。

网络拓扑架构图

全部设备就绪后,统一启动各节点进程。

四、接入层交换机(二层)规划

对接入设备进行基础初始化及用户界面设置。

undo terminal monitor
system-view
sysname Access_SW
user-interface console 0
idle-timeout 0 0

配置上行链路为 Trunk 模式,并划分不同业务 VLAN。

undo terminal monitor
system-view
sysname Access_SW
user-interface console 0
idle-time-out 0 0
vlan batch 10 20 100

# 连接上层网关接口
interface GigabitEthernet 0/0/1
 port link-type trunk
 port trunk allow-pass vlan all

# 连接 VLAN 10 终端
interface GigabitEthernet 0/0/2
 port link-type access
 port default vlan 10

# 连接 VLAN 20 终端
interface GigabitEthernet 0/0/3
 port link-type access
 port default vlan 20

# 连接 DHCP 服务器网关段
interface GigabitEthernet 0/0/4
 port link-type access
 port default vlan 100
interface GigabitEthernet 0/0/5
 port link-type access
 port default vlan 100

五、汇聚层交换机(三层)配置

开启 Vlanif 接口作为各子网网关,并允许中继流量通过。

undo terminal monitor
system-view
sysname Core_SW
user-interface console 0
idle-timeout 0 0
vlan batch 10 20 100

interface Vlanif 10
 ip address 192.168.1.254 24
interface Vlanif 20
 ip address 192.168.2.254 24
interface Vlanif 100
 ip address 192.168.90.254 24
interface GigabitEthernet 0/0/1
 port link-type trunk
 port trunk allow-pass vlan all

六、连通性验证

从 Linux DHCP 服务器侧发起 ping 测试,验证能否到达各个三层交换虚接口的网关地址。

七、部署 Linux DHCP 服务

由于当前处于离线或仅主机模式,采用 RPM 包本地安装方式进行服务部署。

# 挂载 ISO 镜像
mount /dev/sr0 /mnt

# 定位 DHCP 安装包
cd /mnt/Packages/
rpm -qi dhcp
rpm -ivh dhcp-4.2.5*

# 检查服务状态
systemctl status dhcpd

备份原有配置文件并进行初始化操作:

cd /etc/dhcp && mv dhcpd.conf dhcpd.conf.bak
cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/
mv dhcpd.conf.example dhcpd.conf

八、定义地址池与全局选项

编辑主配置文件,指定域名与 DNS 解析服务。

vim /etc/dhcp/dhcpd.conf
dhpcd.conf 内容片段
option domain-name "Internal-Lab.local";
option domain-name-servers 114.114.114.114;

针对不同网段定义作用域范围:

subnet 192.168.90.0 netmask 255.255.255.0 {
  range 192.168.90.100 192.168.90.150;
  option routers 192.168.90.254;
}
subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.100 192.168.1.150;
  option routers 192.168.1.254;
}
subnet 192.168.2.0 netmask 255.255.255.0 {
  range 192.168.2.100 192.168.2.150;
  option routers 192.168.2.254;
}

修改配置后生效服务:

systemctl restart dhcpd
服务启动日志

九、客户端获取地址验证

在仿真软件中将 PC 设置为自动获取 IP 模式。

PC 接口设置

务必点击"应用"按钮以提交更改。

配置生效提示

此时 PC3 能够正常获得 IP 地址,但跨网段设备如 PC1 和 PC2 仍无法请求到资源,原因是缺乏中继机制。

十、配置 DHCP 中继代理

在汇聚层三层交换机上启用中继功能并指向实际服务器地址。

dhcp enable

interface Vlanif 10
 dhcp select relay
 dhcp relay server-ip 192.168.90.20

interface Vlanif 20
 dhcp select relay
 dhcp relay server-ip 192.168.90.20

interface Vlanif 100
 dhcp select relay
 dhcp relay server-ip 192.168.90.20

配置完成后,所有终端均可成功获取对应网段的 IP 地址信息。

PC1 IP 获取结果 PC2 IP 获取结果

相关文章

Linux crontab 详解

1) crontab 是什么cron 是 Linux 的定时任务守护进程;crontab 是用来编辑/查看“按时间周期执行命令”的表(cron table)。常见两类:用户 crontab:每个用户一份(crontab -e 编辑)系统级 crontab / cron.d:可指定执行用户(/etc/crontab、/etc/cron.d/*)2) crontab 时间...

富文本里可以允许的 HTML 属性

一、所有标签默认允许的安全属性(极少)class        (可选)id           (通常建议禁用)title️ 注意:id 容易被滥用做锚点注入,很多系统直接禁用class 允许的话最好只允许固定前缀(如 editor-*)二、a 标签允许属性<a href="" t...

Dom\HTML_NO_DEFAULT_NS 的副作用:自动加闭合标签

在使用Dom\HTMLDocument时,Dom\HTML_NO_DEFAULT_NS 将禁止在解析过程中设置元素的命名空间, 此设置是为了与DOMDocument向后兼容而存在的。当使用它时,已知的一个副作用就是:自动加闭合标签例如 </img> 为什么会这样?当你使用:Dom\HTML_NO_DEFAULT_NS文档会变成 无命名空间模式,此时内部更接近 XML...

Laravel 事件和监听器创建

在 Laravel 中,使用 Artisan 命令创建 Events(事件) 和 Listeners(监听器) 是非常高效的。你可以通过以下几种方式来实现:1. 手动创建单个 Event如果你只想创建一个事件类,可以使用 make:event 命令:Bashphp artisan make:event UserRegistered执行后,文件将生成在 app/Even...

自定义域名解析神器 dnsmasq

什么是 dnsmasq?dnsmasq 是一个轻量级、功能强大的网络服务工具,专为小型和中等规模网络设计。它是一个综合的网络基础设施解决方案[1]。dnsmasq 能做什么?功能说明应用场景DNS 转发与缓存将 DNS 查询转发到上游服务器(ISP、Google DNS 等),并在本地缓存结果加快 DNS 查询速度,减少外部 DNS 流量本地 DNS解析本地网络设备的主机名,无需编辑&n...

linux screen 用法详情 (nohup 的替代方案)

一、screen 是什么?能干嘛?screen 是一个终端复用器,可以:在一个 SSH 会话中开多个“虚拟终端”SSH 断线后,程序仍然在后台运行随时重新连接到原来的会话特别适合:nohup 的替代方案跑脚本 / 爬虫 / 训练模型运维、远程开发二、安装 screen# CentOS / Rocky / Almayum install -y screen# Debian / Ubuntuapt i...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。