1. 应用场景

随着网络规模的不断扩大,网络复杂度不断提升,网络中的终端设备例如主机、手机、 平板等,位置经常变化。终端设备访问网络时需要配置IP地址、网关地址、DNS服务器  地址等。采用手工方式为终端配置这些参数非常低效且不够灵活。

· IETF于1993年发布了DHCP(Dynamic Host Configuration Protocol,动态主机配置协 议)。DHCP实现了网络参数配置的自动化,降低客户端的配置和维护成本。

手工配置网络参数存在以下问题:

· 灵 活 性 差

· 容 易 出 错

·IP 地址资源利用率低

· 工作量大

· 人员素质要求高

    1. 解决大型网络中手工分配 IP 的低效问题,避免地址冲突,集中管理 IP 资源。

DHCP 协议(动态 IP 分配)

核心作用:自动给大量主机分配 IP 地址、子网掩码、网关等网络参数,避免手动配置的麻烦和 IP 冲突。

工作流程:

发现阶段:客户端发DHCP DISCOVER广播找服务器。

提供阶段:服务器回DHCP OFFER单播,包含可用 IP 和配置。

请求阶段:客户端发DHCP REQUEST广播确认接受(可能续租或重绑定)。

确认阶段:服务器发DHCP ACK单播确认,客户端成功获取 IP。

地址池类型:

接口地址池:直接用设备接口 IP 所在网段分配,例:接口10.1.1.1/24对应地址池10.1.1.0/24。

全局地址池:独立于接口,可跨接口分配,例:创建pool2分配1.1.1.0/24网段。

配置要点:

全局开启 DHCP:dhcp enable。

配置地址池(接口或全局),例:接口模式dhcp select interface,全局模式ip pool pool2+ 声明网段。

排除保留 IP(如dhcp server excluded-ip-address 10.1.1.2)、设置租期(lease day 3)等。

应用场景:大型企业、学校等网络中,为电脑、手机等终端自动分配 IP,减少管理员工作量。

  1. 核心原理
    1. 报文类型:DISCOVER(客户端发现服务器)、OFFER(服务器响应)、REQUEST(请求确认 / 续租)、ACK(确认)、NAK(拒绝)、RELEASE(释放)共 6 种。
    2. 地址分配流程
      1. 首次获取:客户端广播 DISCOVER→服务器单播 OFFER→客户端广播 REQUEST→服务器单播 ACK。
      2. 租期管理:50% 租期时单播 REQUEST 续租,87.5% 租期未响应则广播重绑定,到期未确认则释放地址。

命令含义解析

命令

含义与作用

dhcp enable

全局启用 DHCP 服务,使设备具备 IP 分配能力。

dhcp select interface

接口地址池模式:直接使用接口网段分配 IP,配置简洁,适合单网段。

dhcp select global

全局地址池模式:关联预先定义的地址池(如pool1),支持多网段统一管理。

ip pool <name>

创建全局地址池,用于集中管理 IP 分配策略(网段、网关、DNS 等)。

excluded-ip-address

排除特定 IP(如网关),避免动态分配时冲突。

display dhcp server lease

查看已分配的 IP 租约,验证终端是否成功获取 IP。

  1. 配置命令行

实验流程

  1. 拓扑搭建:ENSP 中连接设备,形成树状网络(AR1 为核心,交换机连接终端)。
  2. DHCP 配置
    • 路由器为两个网段分配 IP,选择接口或全局地址池模式。
    • 交换机默认二层交换,无需复杂配置。
  1. 终端配置:PC 设为 DHCP 模式,自动获取 IP、网关、DNS。
  2. 验证
    • 服务器端:display命令检查租约和地址池状态。
    • 客户端:ipconfig确认 IP 获取,ping 测试连通性(如 PC1 ↔ PC2)。

1. AR1 配置(DHCP 服务器)

system-view  # 进入系统视图,开始全局配置

dhcp enable  # 全局启用DHCP服务,允许分配IP地址

# 配置GE0/0/0接口(连接LSW1,192.168.1.0/24网段)

interface GigabitEthernet0/0/0

ip address 192.168.1.1 24  # 配置接口IP作为网关

dhcp select interface  # 启用接口地址池模式,直接使用接口网段分配IP

dhcp server dns-list 8.8.8.8  # 配置DNS服务器(终端可获取DNS地址)

dhcp server excluded-ip-address 192.168.1.1  # 排除网关IP,不参与分配

quit  # 退出接口视图

# 配置GE0/0/1接口(连接LSW2,192.168.2.0/24网段)

interface GigabitEthernet0/0/1

ip address 192.168.2.1 24  # 配置接口IP作为网关

dhcp select interface  # 启用接口地址池模式

dhcp server dns-list 8.8.8.8  # 配置DNS

dhcp server excluded-ip-address 192.168.2.1  # 排除网关IP

quit  # 退出接口视图

2. 交换机配置(LSW1、LSW2,默认二层交换)

# LSW1 配置(示例,无需复杂设置,默认转发数据帧)

system-view  # 进入系统视图

sysname LSW1  # 重命名交换机(可选,便于管理)

display interface brief  # 查看接口状态(如是否Up,可选验证)

quit  # 退出系统视图

# LSW2 配置(同理,默认二层交换,无需IP配置)

system-view

sysname LSW2

display interface brief

quit

3. 验证命令(AR1 上执行)

display dhcp server lease  # 查看已分配的IP租约,确认终端是否获取IP

display ip pool interface GigabitEthernet0/0/0  # 查看接口地址池状态(已用/空闲地址)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/96290.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/96290.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/96290.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SARibbon的编译构建及详细用法

目录 1.1 源码构建 1.2 搭建项目 1.3 详细用法 1.4 不同风格 1.5 完整代码 引言:SARibbon是一个专门为Qt框架设计的开源Ribbon风格界面控件库,它模仿了微软Office和WPS的Ribbon UI风格,适用于需要复杂菜单和工具栏的大型桌面程序。本文从源码编译构建到详细使用,做了一…

CSS【详解】性能优化

精简 CSS移除未使用的 CSS&#xff08;“死代码”&#xff09;&#xff0c;可借助工具如 PurgeCSS、UnCSS 自动检测并删除未被页面使用的样式。避免重复样式&#xff0c;通过提取公共样式&#xff08;如 mixin 或公共类&#xff09;减少代码冗余。利用预处理器&#xff08;Sass…

Flutter 线程模型详解:主线程、异步与 Isolate

一、主线程&#xff1a;默认的执行环境 所有代码默认运行在主线程。下面的例子展示了一个会阻塞主线程的错误示范&#xff1a; import package:flutter/material.dart;void main() {runApp(const MyApp()); }class MyApp extends StatelessWidget {const MyApp({super.key});ov…

ChartDB:可视化数据库设计工具私有化部署

ChartDB:可视化数据库设计工具私有化部署一、什么是ChartDB ChartDB 是一款基于 Web 的开源数据库可视化工具&#xff0c;专为简化数据库设计与管理流程而开发。以下是其核心特性与功能概述: 1、核心功能 智能查询可视化‌&#xff1a;通过单条 SQL 查询即可生成数据库架构图&a…

单片机-FreeRTOS(ing)

目录 一、基础介绍 1.1 调度策略 1.1.1 调度方式 1.1.2 调度器 1.2 任务以及优先级 1.2.1 任务与协程 1.2.2 任务状态 1.2.3 任务优先级 1.2.4 任务优先级分配方案 1.3 任务间通信 - 信号量 1.3.1 信号量 1.3.2 任务间计数信号量的实现 1.3.3 中断方式计数信号量的…

为什么调用API总返回404,该如何调试

当调用一个应用程序接口&#xff08;API&#xff09;时&#xff0c;持续地收到“404 未找到”的错误&#xff0c;其核心原因在于客户端发起的“请求”&#xff0c;未能成功地&#xff0c;匹配到服务器上任何一个“真实存在”的、可供访问的“资源路径”。这本质上&#xff0c;是…

医疗信息化自主可控转型的实践探索 —— 以常德二院为例

目录 头雁领航 - 激发医疗新质生产力 核心支撑 - 电科金仓奠定数据底座 生态共建 - 携手护航医疗信创发展 信创产业发展是国家经济数字化转型、提升产业链发展的关键&#xff0c;是科技自立自强的核心基座&#xff0c;其本质是实现中国信息化产业的自主可控。医疗信创作为关…

Gin传参和接收参数的方式

Gin查询参数和接收参数的方式 常用 Gin 绑定方法对比方法用途特点c.Bind()自动识别 Content-Type最通用&#xff0c;根据请求头自动选择绑定方式c.ShouldBindJSON()只绑定 JSON强制使用 JSON 格式&#xff0c;类型明确c.ShouldBindXML()只绑定 XML强制使用 XML 格式c.ShouldBin…

MariaDB/MySQL 客户端工具与服务端配置精要指南

文章目录一、客户端与服务端程序二、用户账号管理三、MySQL 客户端命令3.1 命令类型​3.2 使用模式​3.3 常用选项​3.4 提示符定制​四、mysqladmin管理命令​​五、服务端配置​5.1 配置文件​​​5.2 Socket 通信配置​​六、最佳实践总结免费个人运维知识库&#xff0c;欢迎…

自动化项目日报生成工具测评与选型:如何匹配团队日报管理需求

引言在项目管理场景中&#xff0c;手动撰写日报常面临多重效率瓶颈&#xff1a;任务数据分散在协作群、Excel 表格、项目看板等多个平台&#xff0c;汇总时需反复核对&#xff1b;不同成员日报格式不统一&#xff0c;管理层整合分析耗时&#xff1b;任务进度与日报信息不同步&a…

基于SpringBoot+Vue的吴韵苏香文旅小程序(协同过滤算法、Echarts图形化分析、腾讯地图API、二维码识别)

&#x1f388;系统亮点&#xff1a;协同过滤算法、Echarts图形化分析、腾讯地图API、二维码识别&#xff1b;一.系统开发工具与环境搭建1.系统设计开发工具后端使用Java编程语言的Spring boot框架 项目架构&#xff1a;B/S架构 运行环境&#xff1a;win10/win11、jdk17小程序&a…

python numpy.random的基础教程(附opencv 图片转数组、数组转图片)

目录 1.在区间[a,b)随机生成n个整数。 2.在区间[a,b)随机生成n个数。 3.在区间[0,1)生成随机数 4.打乱顺序 5.从指定的列表中选择 NumPy&#xff08;Numerical Python&#xff09;是一个开源的科学计算库&#xff0c;专门用于高效处理多维数组&#xff08;ndarray&#xf…

Vue2.x核心技术与实战(二)

目录 三、Vue2.x:生命周期+工程化开发(组件入门) 3.1 生命周期 3.1.1 生命周期 & 生命周期四个阶段 3.1.2 生命周期钩子 Vue生命周期钩子案例 - 新闻列表 & 输入框自动聚焦 3.2 综合案例:小黑记账清单 3.3 工程化开发入门 3.3.1 工程化开发 & 脚手架Vue …

【鸿蒙心迹】7×24小时极限求生:当Origin_null遇上鸿蒙,我如何用100杯咖啡换一条跨域活路?

文章概要 大家好&#xff0c;我是那个把黑眼圈熬成华为工牌挂绳的倒霉蛋。过去100个夜晚&#xff0c;我在HarmonyOS NEXT的ArkWeb里被Origin:null反复按在地上摩擦——小程序白屏、OPTIONS 400、官方文档沉默三连击。最终&#xff0c;我用C、libcurl、OpenSSL和一堆速溶咖啡&am…

【git】删除一条本地提交的历史commit

在工程中&#xff0c;如果想要删除一条本地提交的历史commit&#xff0c;可以通过droprebase -i HEAD^n的方式。1.情景提交了三条commit&#xff0c;想删掉第二条commit。git logcommit_id_*******1 commit_id_*******2 commit_id_*******32.解决git rebase -i HEAD~2输出&…

软件测试中,JMeter 的作用以及优缺点是什么?

回答重点JMeter 是一款开源的软件测试工具&#xff0c;主要用来对各种软件或服务进行性能测试和负载测试。它可以模拟大量用户同时对服务器、网络或其他资源发起请求&#xff0c;从而测试它们的响应时间、吞吐量等性能指标。优点&#xff1a;1&#xff09; 开源且免费 &#xf…

STM32存储结构

我们在使用Keil编译程序成功后会,有一行各部分占用内存的提示信息,如下Program Size:Code7492 RO-data556 Rw-data72 ZI-data11688,这是stm32代码编译后的提示我们分析一下这个编译输出&#xff1a;- Code: 7492字节 -> 代码部分&#xff08;存放在Flash&#xff09;- RO-da…

手机 浏览器调用摄像头扫描二维码Quagga

注&#xff1a;需用谷歌浏览器才能调用权限1. 引入依赖&#xff1a;npm install ericblade/quagga2<template><el-button color"#188ae2" click"handleScan" class"scan-btn" :disabled"isInitializing || isScanning">{{…

【Oracle篇】伪列之Version Query:全链路追踪行数据变更的所有记录(不仅仅是被修改的最后时间)(第二篇,总共六篇)

&#x1f4ab;《博主主页》&#xff1a;    &#x1f50e; CSDN主页__奈斯DB    &#x1f50e; IF Club社区主页__奈斯、 &#x1f525;《擅长领域》&#xff1a;擅长阿里云AnalyticDB for MySQL(分布式数据仓库)、Oracle、MySQL、Linux、prometheus监控&#xff1b;并对…

代理模式深度解析:从静态代理到 Spring AOP 实现

代理模式是软件开发中一种经典的设计模式&#xff0c;它通过引入 "代理对象" 间接访问目标对象&#xff0c;从而在不修改目标对象代码的前提下&#xff0c;实现功能增强&#xff08;如日志记录、事务管理&#xff09;、权限控制等横切需求。从简单的静态代理到灵活的…