当前位置: 首页 > news >正文

计算机网络 —— 应用层(DHCP)

计算机网络 —— 应用层(DHCP)

  • 什么是DHCP
  • DHCP工作过程
    • DHCP DISCOVER
    • DHCP OFFER
    • DHCP RQUEST
    • DHCP ACK
  • DHCP租约机制
  • 中继代理
      • 工作原理
      • 功能与优势

我们今天来计网的DHCP:

什么是DHCP

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一种网络管理协议,主要功能是自动为连接到网络中的设备分配IP地址以及其他的网络配置参数,如子网掩码、默认网关、DNS服务器地址等。这一过程大大简化了网络管理任务,尤其是在大型网络环境中,避免了手动配置每一台设备的网络设置。

DHCP的工作流程大致如下:

  1. DHCP Discovery:当一台新设备加入网络时,它会以广播形式发送一个DHCP DISCOVER报文,请求网络中的DHCP服务器为其分配IP地址和配置信息。
  2. DHCP Offer:接收到DHCP DISCOVER报文的DHCP服务器会响应一个DHCP OFFER报文,报文中包含服务器准备分配给客户端的IP地址和其他网络配置信息。
  3. DHCP Request:客户端从接收到的一个或多个DHCP OFFER中选择一个,并发送一个DHCP REQUEST报文,广播给所有DHCP服务器,请求分配在OFFER中指定的IP地址。
  4. DHCP ACK:最初提供该IP地址的DHCP服务器收到DHCP REQUEST后,会发送一个DHCP ACK报文,确认该IP地址以及其他配置信息正式分配给客户端。客户端随后配置这些网络设置,完成网络接入。

如果分配的IP地址已经被占用或其他问题导致无法分配服务器可能会返回DHCP NAK报文,拒绝分配,客户端则需要重新开始发现过程

DHCP协议基于UDP,使用两个知名的端口号:服务器监听67号端口,客户端使用68号端口。此外,DHCP支持租约机制,即分配给客户端的IP地址有一个有效期限,到期后客户端需要请求续租或重新获取新的IP地址。

在这里插入图片描述

DHCP工作过程

DHCP DISCOVER

如果主机要申请IP地址配置信息,会以广播形式,发送DHCP DISCOVER(因为不知道哪台DHCP服务器会有自己的配置信息):
在这里插入图片描述报文里会有事务ID和自己的MAC地址,事务ID是用于后序处理要确定身份的标识。

DHCP OFFER

如果有DHCP愿意提供配置信息给相应的客户端,DHCP会以自己掌握的信息,封装DHCP OFFER报文段给客户端:
在这里插入图片描述
这里要注意,这里IP地址的选择,会先用ARP来检查该IP地址是否被占用。

DHCP RQUEST

如果有多个DHCP OFFER,客户端会选择一个服务器端,并向选择的DHCP服务器发送DHCP RQUSET

在这里插入图片描述

DHCP ACK

如果服务器端确认,则会发送一个DHCP ACK给客户端进行确认
在这里插入图片描述这个时候,又会使用ARP来检测IP地址是否被使用。

这个时候,客户端就可以使用DHCP服务器端提供的信息,配置自己的信息。

DHCP租约机制

DHCP协议支持一种称为“租约”的机制。这一机制是用来管理IP地址分配的有效期限。以下是DHCP租约机制的一些关键点:

  1. 租约分配:当DHCP客户端首次连接到网络并成功获取IP地址及其他网络配置信息时,DHCP服务器会为这个分配设定一个有效期,这就是租约时间。租约时间可以是几分钟到几年不等,具体取决于网络管理员的配置和需求。
  1. 租约续订:在租约有效期即将结束之前,客户端会自动尝试续订其IP地址租约。续订过程通常在租约时间过半时开始,客户端会发送DHCP REQUEST报文给服务器,请求延长当前IP地址的使用期限。如果服务器同意,会回复DHCP ACK报文确认续租。
  1. 租约重绑定:如果初始续租尝试没有得到回应,客户端会在租约即将到期时进入重绑定阶段,这时它会更积极地尝试联系任何可用的DHCP服务器来续订租约。
  1. 租约终止与回收:如果租约到期且没有成功续订,客户端必须停止使用该IP地址,并可能开始新的DHCP发现过程来获取新的地址。同时,DHCP服务器可以回收该IP地址,重新分配给其他客户端使用,从而高效利用有限的IP地址资源。

具体情况如下:
在这里插入图片描述
整体流程如下:
在这里插入图片描述

中继代理

DHCP 中继代理(DHCP Relay Agent 或 DHCP Helper)是在网络架构中扮演重要角色的一个组件,主要用于扩展DHCP服务的覆盖范围,使其能够跨越不同的网络段或子网工作。由于DHCP协议基于广播,通常限制在同一局域网(LAN)内操作,中继代理的存在克服了这一限制,使得客户端即使与DHCP服务器不在同一物理网段,也能获得IP地址和其他网络配置信息。以下是中继代理的基本工作原理和功能:

工作原理

  1. 跨子网转发DHCP消息:当DHCP客户端发出广播请求(如DHCPDISCOVER或DHCPREQUEST)时,由于广播不能跨越路由器,位于不同子网的DHCP服务器原本无法接收到这些请求。中继代理位于客户端所在子网的边缘路由器或交换机上,它监听这些广播消息,并将它们转换成单播报文,然后转发给配置好的DHCP服务器
  1. 修改和插入信息:中继代理在转发DHCP消息时,会在报文中插入一些额外的信息,如中继代理本身的IP地址(作为giaddr字段,即Gateway IP Address),以便DHCP服务器能够识别请求的来源,并通过中继代理将响应发送回客户端所在的子网。
  1. 响应转发:DHCP服务器处理中继代理转发的请求后,会将DHCP ACK或DHCP NAK等响应消息发送给中继代理,而不是直接广播到原始子网。中继代理再将这些单播响应转发回客户端,确保客户端能够接收到必要的网络配置信息。

功能与优势

  • 扩展DHCP服务范围:允许在一个复杂的多子网网络中集中管理IP地址分配,不必在每个子网部署DHCP服务器。
  • 提高网络效率与安全性:减少对广播通信的依赖,降低网络广播流量,同时通过集中管理DHCP服务增强了网络的安全性控制。
  • 灵活性与管理便利:便于网络管理员集中管理和调整网络配置,包括IP地址池、租约时间等,无需对每个物理网段单独配置。

在这里插入图片描述

综上所述,DHCP中继代理是实现跨子网DHCP服务的关键技术,对于大型企业网络或复杂的网络架构而言尤为重要。

相关文章:

计算机网络 —— 应用层(DHCP)

计算机网络 —— 应用层(DHCP) 什么是DHCPDHCP工作过程DHCP DISCOVERDHCP OFFERDHCP RQUESTDHCP ACK DHCP租约机制中继代理工作原理功能与优势 我们今天来计网的DHCP: 什么是DHCP DHCP(Dynamic Host Configuration Protocol&…...

Linux ComfyUI安装使用;Stable Diffusion 3使用

1、Linux ComfyUI安装使用 参考: https://zhuanlan.zhihu.com/p/689021495 安装步骤: ## 1、下载ComfyUI git clone https://github.com/comfyanonymous/ComfyUI ## 2、进入ComfyUI,安装依赖包 cd ComfyUI pip install -r requirements.txt ## 3\安装插件 cd custom_nodes…...

JavaScripts数组里的对象排序的24个方法

1. 使用 Array.prototype.sort() 这是最基本、也是最常用的方法。sort() 方法会原地修改数组,并返回排序后的数组。你需要传入一个比较函数来定义排序逻辑。 const array [{ name: Alice, age: 25 },{ name: Bob, age: 22 },{ name: Charlie, age: 30 } ];// 按照…...

Mongodb介绍及window环境安装

本文主要内容为nosql数据库-MongoDB介绍及window环境安装。 目录 什么是MongoDB? 主要特点 MongoDB 与Mysql对应 安装MongoDB 下载MongoDB 自定义安装 创建目录 配置环境变量 配置MongoDB服务 服务改为手动 启动与关闭 安装MongoDB Shell 下载安装包 …...

Spring响应式编程之Reactor核心组件

Reactor核心组件 Flux和Mono组件(1)Flux组件(2)Mono组件 Flux和Mono组件 Reactor 框架提供了两个核心组件来发布数据,分别是 Flux 和 Mono 组件。两者都是实现Publisher接口的高级抽象,可以说是应用程序开…...

动手学深度学习(Pytorch版)代码实践 -计算机视觉-37微调

37微调 import os import torch import torchvision from torch import nn import liliPytorch as lp import matplotlib.pyplot as plt from d2l import torch as d2l# 获取数据集 d2l.DATA_HUB[hotdog] (d2l.DATA_URL hotdog.zip,fba480ffa8aa7e0febbb511d181409f899b9baa5…...

视频监控平台:支持交通部行业标准JT/T905协议(即:出租汽车服务管理信息系统)的源代码的函数和功能介绍及分享

目录 一、视频监控平台介绍 (一)概述 (二)视频接入能力介绍 (三)功能介绍 二、JT/T905协议介绍 (一)概述 (二)主要内容 1、设备要求 2、业务功能要求…...

【jenkins1】gitlab与jenkins集成

文章目录 1.Jenkins-docker配置:运行在8080端口上,机器只要安装docker就能装载image并运行容器2.Jenkins与GitLab配置:docker ps查看正在运行,浏览器访问http://10....:8080/2.1 GitLab与Jenkins的Access Token配置:不…...

边缘计算设备有哪些

边缘设备是指那些位于数据源附近,能够执行数据处理、分析和决策的计算设备。这些设备通常具有一定的计算能力、存储能力和网络连接能力,能够减少数据传输到云端的需要,从而降低延迟、节省带宽并提高数据处理的效率。以下是一些常见的边缘设备…...

C++初学者指南第一步---7.控制流(基础)

C初学者指南第一步—7.控制流(基础) 文章目录 C初学者指南第一步---7.控制流(基础)1.术语:表达式/语句Expressions表达式Statements语句 2.条件分支3.Switching(切换):基于值的分支4.三元条件运算符5.循环迭代基于范围的循环   C…...

MFC学习--CListCtrl复选框以及选择

如何展示复选框 //LVS_EX_CHECKBOXES每一行的最前面带个复选框//LVS_EX_FULLROWSELECT整行选中//LVS_EX_GRIDLINES网格线//LVS_EX_HEADERDRAGDROP列表头可以拖动m_listctl.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_CHECKBOXES | LVS_EX_GRIDLINES); 全选,全…...

如何与PM探讨项目

我曾在2020年撰写过一篇名为对产品经理的一些思考的文章,紧接着在2021年,我又写了一篇对如何分析项目的思考。在这两篇文章中,我提出了一个核心观点:“船长需要把控所有事情,但最核心的是:需要知道目标是什…...

今年618各云厂商的香港服务器优惠活动汇总

又到了一年618年中钜惠活动时间,2024年各大云服务器厂商都有哪些活动呢?有哪些活动包括香港服务器呢?带着这些问题,小编给大家一一讲解各大知名厂商的618活动有哪些值得关注的地方,如果对你有帮助,欢迎点赞…...

Android平台下VR头显如何低延迟播放4K以上超高分辨率RTSP|RTMP流

技术背景 VR头显需要更高的分辨率以提供更清晰的视觉体验、满足沉浸感的要求、适应透镜放大效应以及适应更广泛的可视角度,超高分辨率的优势如下: 提供更清晰的视觉体验:VR头显的分辨率直接决定了用户所看到的图像的清晰度。更高的分辨率意…...

WHAT - NextJS 系列之 Rendering - Server Components

目录 一、Server Components1.1 Server Components特点使用 1.2 Client Components特点使用 1.3 综合使用示例1.4 小结 二、Server Components 优势三、Streaming 特性3.1 基本介绍和使用Streaming的理解工作原理使用示例服务器端组件客户端组件页面流程解释 3.2 HTTP/1.1和HTT…...

Web项目部署后浏览器刷新返回Nginx的404错误对应解决方案

data: 2024/6/22 16:05:34 周六 limou3434 叠甲:以下文章主要是依靠我的实际编码学习中总结出来的经验之谈,求逻辑自洽,不能百分百保证正确,有错误、未定义、不合适的内容请尽情指出! 文章目录 1.源头2.排错3.原因4.解…...

视频与音频的交响:探索达摩院VideoLLaMA 2的技术创新

一、简介 文章:https://arxiv.org/abs/2406.07476 代码:https://github.com/DAMO-NLP-SG/VideoLLaMA2 VideoLLaMA 2是由阿里巴巴集团的DAMO Academy团队开发的视频大型语言模型(Video-LLM),旨在通过增强空间-时间建模…...

更改ip后还被封是ip质量的原因吗?

不同的代理IP的质量相同,一般来说可以根据以下几个因素来进行判断: 1.可用率 可用率就是提取的这些代理IP中可以正常使用的比率。假如我们无法使用某个代理IP请求目标网站或者请求超时,那么就代表这个代理不可用,一般来说免费代…...

【Oracle】调用HTTP接口

Oracle调用http接口 前情提要1.创建HTTP请求函数2.创建ACL并授予权限3.测试HTTP请求函数其他操作 一点建议参考文档 前情提要 公司唯有oracle被允许访问内外网,因此在oracle中发起HTTP请求。 1.创建HTTP请求函数 CREATE OR REPLACE FUNCTION HTTP_REQUEST(v_url …...

Minillama3->sft训练

GitHub - leeguandong/MiniLLaMA3: llama3的迷你版本,包括了数据,tokenizer,pt的全流程llama3的迷你版本,包括了数据,tokenizer,pt的全流程. Contribute to leeguandong/MiniLLaMA3 development by creating an account on GitHub.https://github.com/leeguandong/MiniLL…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

Unit 1 深度强化学习简介

Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)

目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关&#xff0…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...

Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?

在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...

从面试角度回答Android中ContentProvider启动原理

Android中ContentProvider原理的面试角度解析,分为​​已启动​​和​​未启动​​两种场景: 一、ContentProvider已启动的情况 1. ​​核心流程​​ ​​触发条件​​:当其他组件(如Activity、Service)通过ContentR…...