DHCP部署与安全详解
文章目录
- 一、DHCP是什么?
- 二、DHCP相关概念
- 三、DHCP优点
- 四、DHCP原理
- 1. 客户机发送DHCP Discovery广播包(发现谁是DHCP服务器)
- 2. 服务器响应DHCP Offer广播包
- 3. 客户机发送DHCP Request广播包
- 4. 服务器发送DHCP ACK广播包
- 五、DHCP续约
- 六、部署DHCP服务器
- 1. IP地址固定(服务器必须固定IP地址)
- 2. 安装DHCP服务插件
- 3. 新建作用域及作用域选项
- 4. 激活
- 5. 客户机验证
- 七、地址保留
- 八、选项优先级
- 九、DHCP备份
一、DHCP是什么?
DHCP(Dynamic Host Configuration Protocol)动态主机配置协议,是 RFC 2131定义的标准协议,该协议允许服务器向客户端动态分配 IP 地址和配置信息,作用说通俗点就是自动分配IP地址。为什么要自动分配呢?主要是因为除了专业的网络工程师,很多普通人是不会配置IP的,所以有这个协议,就很方便普通人去使用互联网。
二、DHCP相关概念
地址池/作用域:(IP、子网掩码、网关、DNS、租期),DHCP协议端口是UDP 67/68
三、DHCP优点
减少工作量、避免IP冲突、提高地址利用率
四、DHCP原理
DHCP原理也称为DHCP租约过程,分为4个步骤:
1. 客户机发送DHCP Discovery广播包(发现谁是DHCP服务器)
客户机广播请求IP地址(包含客户机的MAC地址)
2. 服务器响应DHCP Offer广播包
服务器响应提供的IP地址(但无子网掩码、网关等参数)
3. 客户机发送DHCP Request广播包
客户机选择IP(也可认为确认使用哪个IP)
4. 服务器发送DHCP ACK广播包
服务器确定了租约,并提供网卡详细参数IP、掩码、网关、DNS、租期等
五、DHCP续约
当租期50%过后,客户机会再次发送DHCP Request包,进行续约,如服务器无响应,则继续使用并在87.5%再次发送DHCP Request包,进行续约,如仍然无响应,则客户机释放IP地址,重新发送DHCP Discovery广播包来获取IP地址
当无任何服务器响应时,自动给自己分配一个169.254.x.x/16,属于全球统一无效地址,用于临时内网通信
六、部署DHCP服务器
1. IP地址固定(服务器必须固定IP地址)
如果要将某主机设置为DHCP服务器,则该IP地址必须固定,否则无法设置为DHCP服务器。同理,所有的服务器IP地址必须是固定的,试想,如果我们访问的百度、京东等网站IP地址经常变换,用户还能用吗
2. 安装DHCP服务插件
以Windows2003服务器为例,DHCP服务插件的安装过程如下:
- 双击打开2003的镜像光盘,如下图所示
- 鼠标点击【安装可选的Windows组件】,如下图
- 往下滑动找到【网络服务】,然后鼠标双击打开
- 找到【动态主机配置协议(DHCP)】,并且勾选上,然后点击【确定】、【下一步】安装即可
5.验证DHCP服务插件是否安装好,cmd命令打开控制台,输入命令:netstat -an,然后回车,可以看到如下图所示,其中端口号为67和68的就是DHCP服务端口号,证明该服务已开启
3. 新建作用域及作用域选项
DHCP服务打开之后,还无法为用户提供服务,因为没有IP地址池,接下来要创建地址池,也就是作用域(在Linux系统中称为地址池,在Windows系统中称为作用域)。
新建作用域的步骤如下:
- 鼠标点击左下角【开始】,然后点击【管理工具】,找到上一步安装好的【DHCP】插件,然后点击打开
- 进入DHCP服务页面,鼠标右键点击DHCP服务器名,在下拉列表中选择【新建作用域】
- 点击【下一步】
- 这里的作用域名和描述,自己随便写,如果在实际生产场景中,一般是写公司名,然后【下一步】
- 定义地址范围,准备给客户机的可用地址范围区间,比如下图所示,范围区间从10.1.1.21-10.1.1.250。以及子网掩码长度用以决定网段。然后点击【下一步】
- 用以排除的IP地址范围,也就是不给客户机使用的IP地址范围。如下图所示,排除了10.1.1.222,也就是该地址不予分配。然后点击【下一步】
- 定义租期,也就是IP地址使用时间,如下图租期设定为1小时。然后点击【下一步】
- 该页面是询问是否要现在开始给IP配置对应的网关,DNS等其他参数,这里点击【是】,然后点击【下一步】
- 配置网关,要咨询公司工程师,网关地址是多少,不配置的话,可以内部通信,但是无法上网,配置好之后,点击【下一步】
- 配置DNS服务器,页面中的【父域】不用管,只需配置DNS服务器的IP地址。DNS的IP地址要首先知道自己公司的网络运营商是哪家,比如电信、移动等等,然后网上查询所在城市该运营商的DNS服务器地址,配置进来即可,也可以如下图所示,配置两个服务器IP,如果第一个出现故障无法使用,则默认使用第二个替补。然后点击【下一步】
- 如下图所示wins服务器是早期的一种古老服务器,它是DNS服务器的上一代产品,现在市面已经淘汰,不做使用,所以这里直接跳过,点击【下一步】
4. 激活
- 是否要现在激活地址池(作用域),因为我们现在是做实验,所以直接激活即可。如果是现实工作中,先不要激活,可以先检查一遍作用域有没有配置正确,没问题再激活。如果没有激活的话,即使配置好了,但是其他客户机也是无法使用的,一旦激活,是可以正常使用的。然后点击【下一步】
- 点击【完成】,配置完毕
- 然后回到DHCP服务页面,则可以看到服务器名下方多了作用域,点开即可看到刚才配置的所有参数
5. 客户机验证
ipconfig /release 释放IP(取消租约,或者改为手动配置IP,也可以释放租约)
ipconfig /renew 重新获取IP(有IP时,发送request续约,无IP时发送Discovery重新获取)
七、地址保留
针对指定的MAC地址,动态分配固定IP地址。假如公司老板喜欢168这个数字,就想要10.1.1.168这个IP,那该怎么办呢?
有的小伙伴可能会说:那就直接把IP手动配置成10.1.1.168不就行了。那就坏事了,老板回家之后发现上不了网,第二天回来大发雷霆。很简单,回到家里,和公司根本不在一个局域网,家里是没有10.1.1.168这个IP的,所以就上不了网了。
所以这里就要用到动态地址保留了,什么意思呢?就是IP地址还是动态分配,但是只要该电脑接入该局域网,则给他专门分配10.1.1.168这个IP地址,而不是随机给他一个。而因为是自动分配的模式,所以回到家依然可以上网。
地址保留配置步骤如下:
- 鼠标右键点击【保留】,然后在下拉列表中点击【新建保留】
- 保留名称任意定义,IP地址就填写10.1.1.168,然后MAC地址要填写需要固定保留IP地址的那台电脑的MAC地址,这样就把IP地址和那台电脑捆绑在一起了,比如老板的电脑MAC地址。MAC地址查找方式是cmd,在控制台里面输入ipconfig /all命令,即可看到MAC地址,描述这里可以不填写,然后点击【添加】
- 添加完了之后,即可看到保留选项里面就有了设置好的保留地址,如下图
- 验证一下,如下图所示
八、选项优先级
上一步我们配置了保留IP地址,也就是10.1.1.168,但是大家应该注意到我是没有给这个IP配置网关、DNS等参数,那该IP地址有这些参数吗?答案是有的,我们可以点开该保留IP可以看到如下图所示
那为什么会有这些参数呢?其实是因为保留IP也是在该作用域当中,所以会继承该作用域所有配置选项,比如我们可以点开作用域选项,如下图所示,和上面的保留IP配置是一样的。
现在做个小实验:假设公司有两个作用域(地址池),比如10、20网段开头的作用域,我希望公司所有人都从我这台服务器上拿IP,那我就在这里创建2个作用域,先把原来的作用域删掉,逐个开始创建新的。
先创建第一个作用域,名称就叫IT,也就是公司IT部门
IP范围设置为10开头的网段,配置如下图所示,然后点击【下一步】
排除这里也不写了,直接【下一步】
租约这里也是默认,直接【下一步】
设置选项这里点击【否】,也就是我们暂时不给该作用域设置网关、DNS等参数,然后点击【下一步】
点击【完成】
然后鼠标右键点击【作用域】,在下来列表中点击【激活】,激活该作用域
我们点开【作用域选项】,可以看到没有任何东西,因为刚才除了IP,其他的都没有配置。如果客户机从这台服务器上获取IP的话,将只有IP地址和子网掩码,没有网关和DNS,那我们就必须在作用域选项中添加网关和DNS配置信息,这里呢先不添加
然后回到服务器,再右键新建作用域,名字就叫财务,就是给财务部门做的网段,点击【下一步】
IP地址配置为20开头的网段,配置如下图,点击【下一步】
后面都是【下一步】,直到最后,配置选项页面,更改为【否】,也就是先不配置网关、DNS等,然后【下一步】,【完成】
也把该作用域激活一下,可以看到该【作用域选项】也是为空
可以看到两个【作用域选项】都为空,然后下面有个【服务器选项】,鼠标右键点击【服务器选项】,在下拉列表中点击【配置选项】,来配置服务器选项
往下滑动,找到【DNS服务器】,勾选上,然后在IP地址中配置进来DNS服务器IP地址,点击【添加】,点击【确定】
我们可以看到在【服务器选项】里面指定了一个DNS服务器IP参数,如下图
然后分别右键点击两个作用域的【作用域选项】,在下拉列表中点击【刷新】,如下图
刷新之后,可以看到两个作用域选项里面都有了刚才给【服务器选项】配置的DNS参数
看到这里我们就明白了,【作用域选项】是继承自【服务器选项】的。也就意味着,如果该服务器上作用域特别多的话,我们不必单独给每个作用域都设置参数,只需给【服务器选项】设置一次,其他都有了这些配置参数。其实这些部门都是隶属于一家企业,所以指向的DNS服务器一般都是同一台。
那么问题来了:不同的网段可以指向同一个网关吗?比如10开头的和20开头的网段可以指向同一个网关吗?肯定不可以,只能回到每个【作用域选项】单独来配置网关。鼠标右键点击【作用域选项】,在下拉列表中点击【配置选项】
然后勾选【路由器】,配置网关IP地址
现在问题又来了:假设IT部门不想用222.146.129.80这台DNS服务器,就想用114.114.114.114这台服务器做DNS。那怎么办呢?
那就在IT部门所在的网段作用域中单独配置【作用域选项】,鼠标右键点击【作用域选项】,在下拉列表中点击【配置选项】,然后进去下滑,找到【DNS服务器】并勾选,将IP配置为114.114.114.114,然后【添加】,点击【确定】
就可以看到IT部门的【作用域选项】这里就改成了114.114.114.114
也就是说,如果我的【作用域选项】没有配置的话,直接使用的就是【服务器选项】配置好的,如果我的【作用域选项】配置了,那就使用我自己的,不再使用【服务器选项】配置的。总结就是:【作用域选项】的优先级高于【服务器选项】的优先级
九、DHCP备份
在企业工作中经常免不了要在DHCP上配置多个地址池,每个里面配置参数都各有不同,配置的工作量就比较大。如果某天该服务器突然坏了,那我们就要重新配置所有地址池,这样会非常麻烦。所以我们可以对DHCP服务器进行备份,如果服务器出了问题,若要修复的话,直接还原原有备份就行。
做备份步骤如下:
1.鼠标右键点击服务器名称,在下拉列表中点击【备份】
- 在【浏览文件夹】窗口中选择指定要存放备份数据的目录,如没有,也可以点击【新建文件夹】来创建目录,然后点击【确定】
- 打开对应的目录就可以看到已经备份好了
- 鼠标右键点击【作用域】,在下拉列表中点击【删除】,然后点击【是】,点击【是】,删除刚才配置好的作用域
- 删除之后如下图所示,作用域已经没有了
- 鼠标右键点击服务器名称,在下拉列表中点击【还原】
- 在文件夹窗口中选中刚才备份数据的所在目录,然后点击【确定】,点击【是】,开始还原
- 可以看到已经还原好了,所有配置完好如初
相关文章:

DHCP部署与安全详解
文章目录 一、DHCP是什么?二、DHCP相关概念三、DHCP优点四、DHCP原理1. 客户机发送DHCP Discovery广播包(发现谁是DHCP服务器)2. 服务器响应DHCP Offer广播包3. 客户机发送DHCP Request广播包4. 服务器发送DHCP ACK广播包 五、DHCP续约六、部…...
华为数通HCIP-PIM原理与配置
组播网络概念 组播网络由组播源,组播组成员与组播路由器组成。 组播源的主要作用是发送组播数据。 组播组成员的主要作用是接收组播数据,因此需要通过IGMP让组播网络感知组成员位置与加组信息。 组播路由器的主要作用是将数据从组播源发送到组播组成员。…...

linux 权限
一个文件的权限 我们知道一个文件分为两个部分:1. 文件的内容。 2. 文件的属性 我们对一个文件的操作也就存在以下的一些属性: 这个文件可以被你看到--------- 可读–read—r这个文件可以被你修改----------可写–write–w这个文件可以被编译器编译并执…...

SQL基础使用
SQL的概述 SQL全称: Structured Query Language,结构化查询语言,用于访问和处理数据库的标准的计算机语言。 SQL语言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统SystemR上实现。 经过多年发…...

金蝶云星空任意文件读取漏洞复现(0day)
0x01 产品简介 金蝶云星空是一款云端企业资源管理(ERP)软件,为企业提供财务管理、供应链管理以及业务流程管理等一体化解决方案。金蝶云星空聚焦多组织,多利润中心的大中型企业,以 “开放、标准、社交”三大特性为数字…...
linux中readelf命令详解
readelf 用于显示elf格式文件的信息 补充说明 readelf命令 用来显示一个或者多个elf格式的目标文件的信息,可以通过它的选项来控制显示哪些信息。这里的elf-file(s)就表示那些被检查的文件。可以支持32位,64位的elf格式文件,也支持包含elf…...

Python 教程之标准库概览
概要 Python 标准库非常庞大,所提供的组件涉及范围十分广泛,使用标准库我们可以让您轻松地完成各种任务。 以下是一些 Python3 标准库中的模块: 「os 模块」 os 模块提供了许多与操作系统交互的函数,例如创建、移动和删除文件和…...
MySQL~数据库的基本概念
一、数据库的基本概念 1、数据库的英文单词: DataBase 【 DB】 2、什么数据库? 用于存储和管理数据的仓库。 3、数据库的特点: 持久化存储数据的 数据库就是一个文件系统 方便存储和管理数据 使用统一的方式操作数据库 -- SQL 4、常…...
uniapp文件下载
使用uniapp提供给我们的uni.downloadFile、uni.saveFile和uni.openDocument三个API就可以了 也很简单,直接贴一下代码,安修修改一下即可 <template><view><image tap"pdfDownLoad" style"width: 35rpx;height: 35rpx;&…...
让GPT人工智能变身常用工具-下
...

el-table 表格头部合并
<el-table v-loading"listLoading" :key"tableKey" :data"list" stripe border fit highlight-current-rowstyle"width: 100%;" size"mini"><el-table-column label"第一行" align"center">…...

【机器学习】Linear Regression
Model Representation 1、问题描述2、表示说明3、数据绘图4、模型函数5、预测总结附录 1、问题描述 一套 1000 平方英尺 (sqft) 的房屋售价为300,000美元,一套 2000 平方英尺的房屋售价为500,000美元。这两点将构成我们的数据或训练集。面积单位为 1000 平方英尺&a…...
STM32 中断优先级管理(二)
NVIC中断管理相关函数主要在HAL库关键文件stm32f1xx_hal_cortex.c中定义。 中断优先级分组函数 void HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup);这个函数的作用是对中断的优先级进行分组,这个函数在系统中只需要被调用一次。 void HAL_NVIC_SetPrio…...
17-汽水瓶
题目 某商店规定:三个空汽水瓶可以换一瓶汽水,允许向老板借空汽水瓶(但是必须要归还)。 小张手上有n个空汽水瓶,她想知道自己最多可以喝到多少瓶汽水。 数据范围:输入的正整数满足 1≤n≤100 注意&…...

Mindar.JS——实现AR图像追踪插入图片或视频
Mindar.JS使用方式 注意:此篇文章需要启动https才可调用相机权限 图像追踪示例 需要用到两个js库 <script src"./js/aframe.min.js"></script><script src"./js/mindar-image-aframe.prod.js"></script>下面看一下标签…...

JVM源码剖析之JIT工作流程
版本信息: jdk版本:jdk8u40思想至上 Hotspot中执行引擎分为解释器、JIT及时编译器,上篇文章描述到解释器过度到JIT的条件。JVM源码剖析之达到什么条件进行JIT优化 这篇文章大致讲述JIT的编译过程。在JDK中javac和JIT两部分跟编译原理挂钩&a…...

【投资笔记】(23/7/31)下半年消费复苏的机会来了?
本文为本人投资逻辑验证,不作为任何建议; 政策面 汽车:(一)优化汽车购买使用管理(二)扩大新能源汽车消费,重点在于新能源汽车;房地产:(三&#x…...
MySQL二进制日志(binlog)配置、二进制日志binlog查看、mysqlbinlog查看二进制日志、二进制日志binlog清理等详解
提示:MySQL 中的日志比较重要的有 binlog(归档日志)、redo log(重做日志)以及 undo log,那么跟我们本文相关的主要是 binlog,另外两个日志松哥将来有空了再和大家详细介绍。 文章目录 1、二进制…...
Python内存管理解析:高效利用资源的关键
推荐阅读 AI文本 OCR识别最佳实践 AI Gamma一键生成PPT工具直达链接 玩转cloud Studio 在线编码神器 玩转 GPU AI绘画、AI讲话、翻译,GPU点亮AI想象空间 引言 在当今互联网时代,Python已经成为最受欢迎的编程语言之一。它的简洁、灵活和强大的生态系统使其成为…...

解决Debian10乱码以及远程连接ssh的问题
文章目录 解决Debian10乱码Debian10配置ssh 解决Debian10乱码 下载locales apt-get install locales配置语言 dpkg-reconfigure locales输入上述命令后会进入到以下页面【空格为选中,回车下一个页面】 在这个页面里我们按空格选中如图的选项,然后回…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...

基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)
上一章用到了V2 的概念,其实 Fiori当中还有 V4,咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务),代理中间件(ui5-middleware-simpleproxy)-CSDN博客…...

并发编程 - go版
1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

【网络安全】开源系统getshell漏洞挖掘
审计过程: 在入口文件admin/index.php中: 用户可以通过m,c,a等参数控制加载的文件和方法,在app/system/entrance.php中存在重点代码: 当M_TYPE system并且M_MODULE include时,会设置常量PATH_OWN_FILE为PATH_APP.M_T…...
LangFlow技术架构分析
🔧 LangFlow 的可视化技术栈 前端节点编辑器 底层框架:基于 (一个现代化的 React 节点绘图库) 功能: 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...
Vue 模板语句的数据来源
🧩 Vue 模板语句的数据来源:全方位解析 Vue 模板(<template> 部分)中的表达式、指令绑定(如 v-bind, v-on)和插值({{ }})都在一个特定的作用域内求值。这个作用域由当前 组件…...