HCIA-DHCP
1、定义:DHCP即动态主机配置协议,通过C/S模型架构,无需主机配置IP地址,自动分配网络配置参数的网络协议。
2、作用
| 对比项目 | 无 DHCP | 有 DHCP |
|---|---|---|
| 配置难度 | 配置多,容易出错 | 自动为客户端分配 IP 地址及其他网络配置参数(如子网掩码、默认网关、DNS 服务器地址等),简化网络配置 |
| 工作量 | 需要提前规划地址网段,手动逐台配置设备网络参数,工作量大 | 集中管理网络配置信息,减轻管理员工作量,提升工作效率 |
| 对工作地点不稳定设备的支持 | 工作地点不稳定时,需要多次配置 IP 地址 | 对于移动设备,在不同网络间切换时,可自动分配新网络配置参数,无需手动操作 |
| IP 地址利用率 | 地址利用率过低 | 动态分配 IP 地址,设备离线时收回其占用地址,可再分配给其他设备,避免地址浪费,提高地址资源利用率 |
3、相关概念
①DHCP服务器:运行DHCP服务的网络设备,负责管理地址池,地客户端分配网络配置参数。
②DHCP客户端:使用DHCP服务获取网络配置参数的设备,如手机、电脑等。
③IP地址池:DHCP服务器中可分配IP的地址范围,用于给客户端分配地址。
④租期:DHCP服务器分配的IP地址使用期限。
4、工作模式
①自动分配:DHCP服务器给客户端配置固定的IP,客户端每次获取地址都是该地址。
②动态分配:客户端从服务器中获取临时IP,租期内正常使用,到期后服务器收回重新分配。
③手工分配:需要管理员手动在服务器上为客户端指定一个固定IP。
5、工作原理
①发现阶段:客户端广播发送 DHCP Discover 报文找 DHCP 服务器,报文含客户端硬件地址。
②提供阶段:DHCP 服务器收到 Discover 报文,从地址池选择未分配 IP地址,通过 DHCP Offer 报文给客户端,包含子网掩码、租约期限等。
③请求阶段:客户端可能收到多个DHCP Offer 报文,通常选择第一个报文,且广播发 DHCP Request 报文,向对应服务器请求使用分配到 IP 、掩码等配置,根据报文中服务器 IP 可以表明是哪个服务器分配的配置。
④确认阶段:DHCP 服务器收到 Request 报文,检查 IP 是否可用。若可用发送DHCP Ack 报文确认,客户端获取网络配置信息进行通信;若IP不可用,发送DHCP Nak 报文告知失败,客户端需重发请求 。
6、DHCP中继
①作用:在网络中有多个子网时,当服务器与客户端不在同一个网段时,需要通过 DHCP 中继代理来转发 DHCP 报文,使客户端能够获取到地址
②工作原理:中继设备收到客户端的 DHCP Discover 报文,修改跳数、网关 IP 等字段后,转发给 DHCP 服务器所在子网。服务器处理报文后,把响应发给中继设备,中继代理再转给客户端。
7、DHCP安全问题
| 攻击类型 | 原理 | 危害 |
|---|---|---|
| DHCP 欺骗攻击 | 攻击者部署假 DHCP 服务器,抢在真服务器前响应客户端请求,分配错误网络配置参数 | 客户端连错网络,无法访问合法资源,还可能遭中间人攻击致信息被盗 |
| IP 地址耗尽攻击 | 攻击者用工具向 DHCP 服务器发大量请求,耗尽 IP 地址资源 | 合法客户端无法获 IP,不能接入网络,网络服务中断 |
| IP 地址冲突攻击 | 攻击者设与合法设备相同 IP 或让 DHCP 服务器分配重复 IP | 网络出现 IP 冲突,设备网络连接异常,通信受影响 |
| 信息泄露风险 | DHCP 交互时客户端发的含 MAC 地址等信息的报文,可能因网络漏洞被窃 | 攻击者收集信息进行网络拓扑发现、用户行为分析,实施针对性攻击 |
| 恶意 DHCP 选项注入 | 攻击者在 DHCP 报文中注入如错误路由、非法 DNS 地址等恶意选项字段 | 客户端按恶意选项配置后,网络访问异常,可能遭钓鱼攻击 |
防范措施
①网络设备安全配置
- 启用 DHCP Snooping:在交换机等设备启用,建信任列表,只许合法服务器报文通过,防非法服务器接入。
- 端口安全设置:配置网络端口,限制连接数、绑定 MAC 地址,防攻击者耗尽端口资源与 MAC 地址欺骗。
②DHCP 服务器安全配置
- 地址池管理:按网络规模需求合理规划地址池,留备用地址,定期检查清理,保证分配合理有效。
- 认证与授权:用用户名、密码或数字证书等认证客户端,通过后才能获取配置参数。
③网络监测与审计
- 部署网络监测工具:用网络流量分析、入侵检测系统等,实时监测 DHCP 流量和异常,及时告警安全威胁。
- 日志审计:详记审计 DHCP 服务器和网络设备日志,追溯安全事件,发现潜在问题和攻击。
相关文章:
HCIA-DHCP
1、定义:DHCP即动态主机配置协议,通过C/S模型架构,无需主机配置IP地址,自动分配网络配置参数的网络协议。 2、作用 对比项目无 DHCP有 DHCP配置难度配置多,容易出错自动为客户端分配 IP 地址及其他网络配置参数&…...
wxWidgets GUI 跨平台 入门学习笔记
准备 参考 https://wiki.wxwidgets.org/Microsoft_Visual_C_NuGethttps://wiki.wxwidgets.org/Tools#Rapid_Application_Development_.2F_GUI_Buildershttps://docs.wxwidgets.org/3.2/https://docs.wxwidgets.org/latest/overview_helloworld.htmlhttps://wizardforcel.gitb…...
OmniParser技术分析(一)
1.引言 通过上篇文章介绍 OmniParser:下一代纯视觉UI自动化测试先驱相信大家已经对OmniParser有初步了解,接下来详细介绍下OmniParser使用了哪些技术模型实现了对UI纯视觉的检测和理解。 2.整体方案 通过阅读OmniParser提供的运行Demo代码知道,其实整…...
什么是hive
Apache Hive 是一个基于 Hadoop 生态系统构建的数据仓库工具,主要用于处理和分析大规模的结构化数据。它允许用户通过类似 SQL 的查询语言(HiveQL)进行数据操作,而无需直接编写复杂的 MapReduce 程序。以下是 Hive 的核心特点和应…...
PyTorch系列教程:Tensor.view() 方法详解
这篇简明扼要的文章是关于PyTorch中的tensor.view()方法的介绍与应用,与reshape()方法的区别,同时给出示例进行详细解释。 Tensor基础 Tensor(张量)的视图是一个新的Tensor,它与原始Tensor共享相同的底层数据,但具有不同的形状或…...
从零开始了解Manus(文末附教程)
大家好,我是樱木。 《从零开始了解Manus》,这个教程对于想了解 Manus的同学,全部都在里面了! Manus 是一款能像真人一样帮你干活的AI助手,运行在云端,不占电脑内存。 它可以自动完成复杂任务,…...
不同开发语言之for循环的用法、区别总结
一、Objective-C (1)标准的c风格 for (int i 0; i < 5; i) {NSLog("i %d", i); } (2)for in循环。 NSArray *array ["apple", "banana", "orange"]; for (NSString *fruit in …...
CentOS 7 aarch64上制作kernel rpm二进制包 —— 筑梦之路
环境说明 centos 7 aarch64 gcc 8.3.1 kernel 5.4.290 准备编译制作 # 安装必要的工具和包yum install rpm-devel rpmdevtools yum groupinstall "Development Tools"yum install ncurses-devel bc elfutils-libelf-devel openssl-devel # 安装gcc 8.3.1# 修改…...
Cursor 使用经验,一个需求开发全流程
软件开发中 Cursor 的使用经验成为关注焦点,尤其是处理大型数据集的需求。用户提到“Cursor 使用经验,一个需求开发全流程”,但“Cursor”可能指数据库游标,涉及逐行处理数据。本文将详细探讨开发一个需求的完整流程,包…...
2025-03-08 学习记录--C/C++-PTA 习题9-2 计算两个复数之积
合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻 一、题目描述 ⭐️ 二、代码(C语言)⭐️ #include <stdio.h>struct complex{int real;int imag; …...
DeepSeek-R1本地化部署(Mac)
一、下载 Ollama 本地化部署需要用到 Ollama,它能支持很多大模型。官方网站:https://ollama.com/ 点击 Download 即可,支持macOS,Linux 和 Windows;我下载的是 mac 版本,要求macOS 11 Big Sur or later,Ol…...
【时时三省】(C语言基础)赋值语句
山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 赋值语句 在C程序中,最常用的语句是:赋值语句和输入输出语句。其中最基本的是赋值语句程序中的计算功能大部分是由赋值语句实现的,几乎每一个有实用价值的程序都包括赋值语句。有的程序中的大部分语句都是赋值…...
如何提取图片文字
如何分析图片风格: 分析下图片是什么风格,用即梦AI的提示语描述。我要使用描述语去即梦生成同样的图...
3.3.2 用仿真图实现点灯效果
文章目录 文章介绍Keil生成.hex代码Proteus仿真图中导入.hex代码文件开始仿真 文章介绍 点灯之前需要准备好仿真图keil代码 仿真图参考前文:3.3.2 Proteus第一个仿真图 keil安装参考前文:3.1.2 Keil4安装教程 keil新建第一个项目参考前文:3.1…...
BGP 基本配置实验
实验拓扑 实验需求 按照图示配置 IP 地址,R1 和 R5 上使用环回口模拟业务网段,R2,R3,R4 的环回口用于配置 Router-id 和建立 IBGP 邻居AS 200 运行 OSPF 实现内部网络互通R1,R2,R4,R5 运行 BGP…...
关于 QPalette设置按钮背景未显示出来 的解决方法
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/146047054 长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV…...
## DeepSeek写水果记忆配对手机小游戏
DeepSeek写水果记忆配对手机小游戏 提问 根据提的要求,让DeepSeek整理的需求,进行提问,内容如下: 请生成一个包含以下功能的可运行移动端水果记忆配对小游戏H5文件: 要求 可以重新开始游戏 可以暂停游戏 卡片里的水果…...
P8662 [蓝桥杯 2018 省 AB] 全球变暖--DFS
P8662 [蓝桥杯 2018 省 AB] 全球变暖--dfs 题目 解析讲下DFS代码 题目 解析 这道题的思路就是遍历所有岛屿,判断每一块陆地是否会沉没。对于这种图的遍历,我们首先应该想到DFS。 代码的注意思想就是,在主函数中遍历找出所有岛屿,…...
opentitan riscv
OpenTitan是一个开源的硅根信任(Root of Trust, RoT)项目,旨在使硅RoT的设计和实现更加透明、可信和安全,适用于企业、平台提供商和芯片制造商。该项目由lowRISC CIC管理,作为一个协作项目,旨在生产高质量…...
数据结构篇——串(String)
一、引入 在计算机中的处理的数据内容大致可分为以整形、浮点型等的数值处理和字符、字符串等的非数值处理。 今天我们主要学习的就是字符串数据。本章主要围绕“串的定义、串的类型、串的结构及其运算”来进行串介绍与学习。 二、串的定义 2.1、串的基本定义 串(s…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...
涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
CSS | transition 和 transform的用处和区别
省流总结: transform用于变换/变形,transition是动画控制器 transform 用来对元素进行变形,常见的操作如下,它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...
9-Oracle 23 ai Vector Search 特性 知识准备
很多小伙伴是不是参加了 免费认证课程(限时至2025/5/15) Oracle AI Vector Search 1Z0-184-25考试,都顺利拿到certified了没。 各行各业的AI 大模型的到来,传统的数据库中的SQL还能不能打,结构化和非结构的话数据如何和…...
年度峰会上,抖音依靠人工智能和搜索功能吸引广告主
上周早些时候举行的第五届年度TikTok World产品峰会上,TikTok推出了一系列旨在增强该应用对广告主吸引力的功能。 新产品列表的首位是TikTok Market Scope,这是一个全新的分析平台,为广告主提供整个考虑漏斗的全面视图,使他们能够…...
c++算法学习3——深度优先搜索
一、深度优先搜索的核心概念 DFS算法是一种通过递归或栈实现的"一条路走到底"的搜索策略,其核心思想是: 深度优先:从起点出发,选择一个方向探索到底,直到无路可走 回溯机制:遇到死路时返回最近…...
