DHCP原理和配置

news2025/1/16 13:53:10

1、DHCP原理

(1)什么是DHCP

  • DHCP(Dynamic HostConfiguration Protocol,动态主机配置协议):给网络内的客户机自动分配IP地址
  • 由internet工作任务小组设计开发口专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议
  • DHCP采用的是UDP作为传输协议,有两个端口67和68,DHCP客户端发送请求消息给服务端的67号端口,DHCP服务端回应响应消息给客户端的68端口

(2)DHCP的好处

  • 减少管理员的工作量
  • 避免输入错误的可能
  • 避免IP地址冲突
  • 当更改IP地址时,不需要重新配置每个用户的IP地址
  • 提高了IP地址的利用率
  • 方便客户端的配置

(3)DHCP的分配方式

  • 自动分配:分配到一个IP地址后永久使用
  • 手动分配:由DHCP服务器管理员专门指定IP地址
  • 动态分配:使用完释放该IP,供其他客户使用

(4)DHCP的工作原理

客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程

分为四个步骤

(1)客户端通过广播发送DHCP Discover报文寻找DHCP服务端
(2)服务端通过广播发送DHCP Offer报文向客户端提供从地址池挑选的可用IP等信息
(3)客户端只接受第一个收到的DHCP Offer报文并提取IP地址,然后通过广播发送DHCP Request报文告知服务端要使用该IP地址
(4)服务端通过广播发送DHCP ACK报文告知客户端该IP地址是合法可用的,并提供租约信息

DHCP客户机每次登录网络时,不需要再发送DHCP Discover信息,而是直接发送包含前一次分配的IP地址的DHCP Request请求信息。如果IP地址可用,DHCP会发送DHCP ACK确认消息。如果IP地址不可用,DHCP服务器会发送DHCP Nack否认消息,此时DHCP客户端需要重新发送DHCP Discover报文寻找DHCP服务端

linux、windows客户端和服务端都是以广播方式发送消息
华为设备客户端以广播方式发送消息,服务端以单播的方式发送消息


2、配置DHCP实验

(1)实验目的

模拟DHCP自动获取IP地址

(2)实验准备

三台虚拟机:一台完好的linux虚拟机来当DHCP服务端,一台完好的linux虚拟机来当DHCP客户端1,一台完好的windows虚拟机来当DHCP客户端2

(3)实验要求

两台客户端虚拟机能通过服务端虚拟机来自动获取到IP地址

(4)实验步骤

1)服务端虚拟机初始化操作

将网络连接调至仅主机模式(如用nat模式,需将其本地的dhcp服务给关闭)

如果使用仅主机模式,需将电脑里网络连接的vmnet1(仅主机使用的)里的ipv4

协议属性进行修改

关闭防火墙,设置其立即开机不自启

临时关闭selinux防火墙,然后永久关闭

补充

SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。
selinux(security enhanced linux)安全强化的linux,它是一个linux内核模块,也是linux的一个安全子系统

SELinuxd的工作模式

enforcing强制模式,违反 SELinux 规则的行为将被阻止并记录到日志中
permissive
宽容模式,违反 SELinux 规则的行为只会记录到日志中。一般为调试用。
disabled
关闭 SELinux。

2)安装dhcp服务

有两种方式安装

第一种:rpm -ivh RPM包文件

第二种:yum -y install dhcp(需检查本地yum源有没有配好)

3)修改dhcp配置文件

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

由于etc/dhcp/dhcpd.conf的文件是没有什么内容的,我们需将usr/share/doc/dhcp-4.2.5/dhcpd.conf.example这个模版文件复制过来

启动dhcp服务并查看

如果启动报错,可以查看日志文件/var/log/messages或通过journalctl -xe

4)打开客户机查看验证

两台客户端虚拟机都得把网络状态设置为仅主机模式

windows客户端验证

linux客户端验证

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数字图像处理笔记】Matlab实现离散傅立叶变换 (二)

💌 所属专栏:【数字图像处理笔记】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! &#x…

离线语音模块初步学习——LSYT201B(深圳雷龙发展)

一 、产品简介 首先简单介绍下该离线语音模块,官方给出的介绍是:YT2228 是根据智能语音交互市场需求及思必驰算法的发展方向定义开发的 “芯片算法”人工智能人机语音交互解决方案,具有高性能、低功耗等特点。该芯片通过软硬融合的方法&…

流量代理第一弹:入门使用

定义 “流量代理是一种网络通信技术,它充当网络通信的中间人,将流量从一个地方传递到另一个地方。通常用于实现网络隧道、网络加速、访问控制和隐私保护等功能。“ 上面是来自chatGPT的回答。从这个回答中,我们不难看出,流量代理…

专利视角下的量子竞赛:《2024全球专利格局白皮书》

2024年1月,欧洲量子产业联盟(QuIC)发布了题为《全球量子技术专利格局描述》的综合白皮书。 该文件以透明的视角展示了当今的知识产权格局,包括知识产权持有人的地理分布。该文件由 QuIC 知识产权(IP)与贸易…

【学习笔记】Python 使用 matplotlib 画图

文章目录 安装中文显示折线图、点线图柱状图、堆积柱状图坐标轴断点参考资料 本文将介绍如何使用 Python 的 matplotlib 库画图,记录一些常用的画图 demo 代码 安装 # 建议先切换到虚拟环境中 pip install matplotlib中文显示 新版的 matplotlib 已经支持字体回退…

Linux Docker下载镜像更改默认存储位置/usr/lib/docker

用于解决docker默认存储位置磁盘空间不足,切换存储位置 1、执行下面命令查看 现在docker的存储位置 docker info | grep "Docker Root Dir" 1.2、如果之前已经下载过镜像可以用mv命令把原来的镜像复制到新的地址 mv /var/lib/docker /data/docker 2、…

vue3中的ref、isRef、shallowRef、triggerRef和customRef

1.ref 接受一个参数值并返回一个响应式且可改变的 ref 对象。 ref 对象拥有一个指向内部值的单一属性 .value property &#xff0c;指向内部值。 例&#xff1a;此时&#xff0c;页面上的 str1 也跟着变化 <template><div><button click"handleClick&quo…

RK3588构建ubuntu22.04根文件系统

前言 RK系列的平台提供了buildroot和debian的系统&#xff0c;使用脚本可以直接构建出来&#xff0c;但是没有提供ubuntu的系统&#xff0c;很多厂商只提供一个rootfs.img的固件包&#xff0c;没有将方法开源出来。本文实现了从ubuntu官网开始构建一个ubuntu22.04根文件系统。…

python数字验证码自动识别

&#x1f47d;发现宝藏 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 在网络上&#xff0c;许多网站和应用程序使用验证码&#xff08;Completely Automated Publ…

Vue2 —— 学习(十一)

目录 一、路由 vue-router &#xff08;一&#xff09;路由与路由器 &#xff08;二&#xff09;vue-router 理解 &#xff08;三&#xff09;SPA 理解 &#xff08;四&#xff09;路由 理解 &#xff08;五&#xff09;小案例 1.About.vue 2.Home.vue 3.index.js 4…

移动端应用(APP)如何设计测试用例?

为 APP 设计测试用例需要考虑移动设备的特殊性&#xff0c;如不同的操作系统、设备尺寸、硬件特性以及应用程序自身的特定功能。 以下是为APP设计测试用例时要考虑的内容&#xff1a; 1. 理解需求 熟悉APP的功能需求、用户故事和设计文档。 确定APP的目标用户群体、使用场景…

12.Blender 界面介绍(上)及物体基础编辑操作

设置语言 首先在菜单栏打开编辑-Preferences-界面-翻译&#xff0c;可以修改语言 这里使用的是Steam上下载的4.1版本 工具栏 左边的工具栏&#xff0c;按T就会出现&#xff0c;再按T就会隐藏 右边的工具栏是按N&#xff0c;按N显示&#xff0c;再按N隐藏 旋转画面 长按鼠…

MySQL基础之单表操作(定义DDL,增删改DML,查DQL)

目录 一、概述1.1 什么是数据库1.2 连接MySQL1.3 数据模型1.4 SQL语句的分类1.5 数据类型 二、数据库设计-DDL2.1 数据库层面2.2 数据表层面创建表约束查询修改add,modify,change,drop,rename(表)删除 三、数据库操作-DML3.1 添加数据insert3.2 修改数据update3.3 删除数据dele…

做外贸与其质疑,不如脚踏实地做事

小莉说最近好多自媒体添加WhatsApp的客户都是非洲的&#xff0c;有些打电话过来都不想接&#xff0c;因为他们都是没钱的主&#xff0c;接着还截图了一个客户头像给我&#xff0c;很不耐烦地说&#xff1a;像这种抽烟的客户头像&#xff0c;一看就不是正经人&#xff0c;无论他…

土压力计:监测地下压力变化的必备工具

在土木工程、地质勘探和地下建筑等领域&#xff0c;地下土壤的力学特性对工程的稳定性和安全性起着至关重要的作用。而土压力计作为一种重要的监测设备&#xff0c;能够准确地测量地下土壤的压力变化&#xff0c;为工程设计和施工提供关键数据。本文将探讨土压力计的原理、应用…

CRAFT文字检测算法解析和基于C++和TensorRT的推理实现

本文讲解了CVPR 2019的一篇文字检测算法《Character Region Awareness for Text Detection》的原理&#xff0c;并给出我使用C和TensorRT重新实现的推理&#xff0c;速度比原版代码快12倍。 论文&#xff1a;https://arxiv.org/pdf/1904.01941.pdf 官方代码&#xff1a;https:…

echarts地图记录

小记录&#xff1a; 如果调整地图大小不管用的时候&#xff0c;看一下map的值是否为china 当值为china的时候&#xff0c;地图会加上“南海诸岛”部分&#xff0c;尝试修改map的值

Netfilter漏洞提权利用(CVE-2023-35001)

前言 Netfilter是一个用于Linux操作系统的网络数据包过滤框架&#xff0c;它提供了一种灵活的方式来管理网络数据包的流动。Netfilter允许系统管理员和开发人员控制数据包在Linux内核中的处理方式&#xff0c;以实现网络安全、网络地址转换&#xff08;Network Address Transl…

centos7搭建maven私服nexus

1.nexus Nexus Repository Manager&#xff08;通常简称 Nexus 或 Nexus RM&#xff09;是由Sonatype公司开发的一款开源的、强大的软件仓库管理工具&#xff0c;主要用于企业级的二进制组件&#xff08;如Java库、Node.js模块、Python包等&#xff09;存储、管理和分发。 官方…

定序器导出fbx到max里对位k动作

可以把场景移动到原点去k动作&#xff0c;然后可以恢复到ue4的位置 -- 定义全局变量 global CenterPoint undefined global averageCenter [0,0,0]-- 定义对话框 rollout restoreRollout "定序器>FBX>MAX" (button CreateButton "建立中心点" wid…