DHCP—动态主机配置协议

news2024/11/15 17:32:38

动态主机配置协议DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是RFC 1541(已被RFC 2131取代)定义的标准协议,该协议允许服务器向客户端动态分配IP地址和配置信息。
DHCP协议支持C/S(客户端/服务器)结构,主要分为两部分:
1、DHCP客户端:通常为网络中的PC、打印机等终端设备,使用从DHCP服务器分配下来的IP信息,包括IP地址、DNS等。
2、DHCP服务器:所有的IP网络设定信息都由DHCP服务器集中管理,并处理客户端的DHCP请求。
DHCP采用UDP作为传输协议,客户端发送消息到DHCP服务器的的67号端口,服务器返回消息给客户端的68号端口。

DHCP的报文种类及其作用

DHCP在工作过程中涉及到的报文种类及其作用如下:
1、DHCP DISCOVER:客户端开始DHCP过程的第一个报文,是请求IP地址和其它配置参数的广播报文。
2、DHCP OFFER:服务器对DHCP DISCOVER报文的响应,是包含有效IP地址及配置的单播(或广播)报文。
3、DHCP REQUEST:客户端对DHCP OFFER报文的响应,表示接受相关配置。客户端续延IP地址租期时也会发出该报文。
4、DHCP DECLINE:当客户端发现服务器分配的IP地址无法使用(如IP地址冲突时),将发出此报文,通知服务器禁止使用该IP地址。
5、DHCP ACK :服务器对客户端的DHCP REQUEST报文的确认响应报文。客户端收到此报文后,才真正获得了IP地址和相关的配置信息。
6、DHCP NAK:服务器对客户端的DHCP REQUEST报文的拒绝响应报文。客户端收到此报文后,会重新开始新的DHCP过程。
7、DHCP RELEASE:客户端主动释放服务器分配的IP地址。当服务器收到此报文后,则回收该IP地址,并可以将其分配给其它的客户端。
8、DHCP INFORM:客户端获得IP地址后,发送此报文请求获取服务器的其它一些网络配置信息,如DNS等。

DHCP一般工作流程


向DHCP服务器申请一个IP地址的基本操作步骤:
(1)当DHCP客户机第一次登录网络的时候,该客户机没有任何IP数据设定,它将向网络发出一个DHCP Discover封包。由于客户端还不知道自己属于哪一个网络,所以封包的源地址为0.0.0.0,其目的地址则为255.255.255.255,向网络进行广播。
(2)一般默认DHCP Discover的等待时间为1s,当客户机将第一个DHCP Discover封包送出去之后,在1s之内没有得到响应的话,它就会进行第二次DHCP Discover广播。客户端最多有4次广播,除了第一次会等待1s之外,其余3次的等待时间分别是9s、13s、16s。如果都没有得到DHCP服务器的响应,客户端则会显示错误信息,宣告DHCP Discover失败。之后,系统会继续在5min之后再重复一次DHCP Discover过程。
(3)当DHCP服务器监听到客户端发出的DHCP Discover广播后,将会对客户机作出应答。它会通过UDP端口回应客户一个DHCP Offer广播包,提供一个IP地址。该广播包的源IP地址为DHCP服务器的IP地址,目标IP地址为255.255.255.255;包中还包含提供给客户机的IP地址、子网掩码及租期等信息。
(4)DHCP协议允许网络上配置多台DHCP服务器,客户机将会收到网络上多台DHCP服务器的响应,但它只会挑选其中一个DHCP Offer,通常都是最先抵达的那个,然后客户机向网络发送一个DHCP Request广播封包,告诉所有DHCP服务器它将接受哪一台服务器提供的IP地址。同时,客户端还会向网络发送一个ARP封包,确认网络上是否有其他机器在使用该IP地址;如果发现该IP已经被占用,客户机则会发出一个DHCP Decline封包给DHCP服务器,拒绝接受其DHCP Offer并重新发送DHCP Discover信息。
(5)当DHCP服务器接收到客户端的DHCP Request封包之后,向客户端发出一个DHCP ACK 响应,确认该IP租约的正式生效。
(6)客户在收到DHCP ACK包后,会使用该广播包中的信息来配置自己的TCP/IP,至此租用申请过程结束,客户机可以在网络中通信。

DHCP续约


续约一客户机直接执行第3步==(执行ipconfig/renew)==
DHCP续租的工作流程描述如下:

  1. 在使用租期过去50%时刻处, 客户端向服务器发送单播DHCP REQUEST报文续延租期。
  2. 如果收到服务器的DHCP ACK报文,则租期相应向前延长,续租成功。如果没有收到DHCP ACK报文,则客户端继续使用这个IP地址。在使用租期过去87.5%时刻处,向服务器发送广播DHCP REQUEST报文续延租期。
  3. 如果收到服务器的DHCP ACK报文,则租期相应向前延长,续租成功。如果没有收到DHCP ACK报文,则客户端继续使用这个IP地址。在使用租期到期时,客户端自动放弃使用这个IP地址,并开始新的DHCP过程。

DHCP释放后重获地址


执行ipconfig/release和ipconfig/renew
当Windows计算机在 DHCP(动态主机配置协议)模式下发生IP地址冲突、无法访问网络等情况时,可以使用以下步骤重新获取 IP 地址:

打开命令提示符:按下Windows+R键打开运行窗口,输入cmd并按下回车键,即可打开命令提示符窗口。
输入ipconfig /release命令,按下回车键,释放当前分配的IP地址。
输入ipconfig /renew命令,按下回车键,重新获取IP地址。
如果成功获取到新的IP地址,系统会显示IP地址、子网掩码、默认网关等信息。
需要注意的是,在使用ipconfig /release命令释放IP地址后,计算机将无法访问网络,直到使用ipconfig /renew命令重新获取IP地址。

DHCP相关的配置命令

路由器上DHCP服务器的配置
(1)IP地址池的建立
配置方法在全局模式下使用“ip dhcp pool <name>”命令为地址池赋予一个名称,其中<name>是为所建的地址池提供的名称,可以是一组字符串或数字。一台路由器上可以建立多个地址池。
(2)IP地址池的子网地址与子网掩码的配置。
IP地址池建立后,便进入地址池配置模式,在该模式下可进行IP子网地址和子网掩码的配置,用于设定DHCP服务器可以分配的IP地址的范围。配置的方法是在IP地址池配置模式下,执行“network <网络地址> <子网掩码>”命令,其中,<子网掩码>可采用标准的子网掩码表示(如255.255.255.0)或使用掩码前缀长度表示(如/24)。
(3)排除不用于动态分配的IP地址。
实际应用中,在所配置的子网中,可能会有一些特殊地址需要保留,不用于动态分配,此时就需要在DHCP服务中进行相应配置,配置方法为在全局配置模式下,使用“ip dhcp excluded-address low-adress [high-address]"命令,其中“low-address [high-address]”表示要排除的IP地址的范围,若只排除一个地址,则可直接在命令后输入这个地址便可。
(4)配置默认网关。
动态分配IP地址时,还需要同时为客户端指定默认网关,以便客户端TCP/IP协议正常工作。配置方法为在地址池配置模式下,执行“default-rouler address [address2…address8]”命令,其中默认网关的地址,最多可以设置8个,而客户端一般只使用一个在同一子网中的路由器的端口地址。
(5)配置IP地址池的域名系统。
如同我们在客户端机器手动配置IP地址一样,要访问外部网络,通常还需指定用于域名解析的域名服务器(DNS),另外在路由器DHCP服务器中还可以设置客户端域名,为动态地址的客户端指定所属的域的名称。域名服务器的配置方法为在地址池配置模式下使用“dns-server address”命令,该命令允许最多配置8个域名服务器地址,但是在实际应用中,域名服务器一般只有两个或三个;IP地址池中客户端域名的配置方法为在DHCP地址池配置模式下,使用“domain-name <name >"命令,其中<name>为指定的域名名称。
(6)IP地址租用时间。
IP地址租用时间是指用户端在获得一个IP地址后,可以占用这个地址的最长时间,若需要的话可以对其进行更改。配制方法为在DHCP地址池配置模式下,使用“lease {day [hours] [minutes]|[infinite]}”命令,其参数可以包含天数、小时数以及分秒数,还可以设置为永不过期。

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

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

相关文章

如何在Ubuntu的Linux系统上搭建nacos集群

官方给出的集群部署架构图 集群部署说明 (nacos.io)3个或3个以上nacos节点才能构成集群当前示例中包含3个nacos节点&#xff0c;同时一个负载均衡器代理3个nacos&#xff0c;本示例中负载均衡器可使用的是nginx 准备并安装好正常运行的nginx&#xff0c;本示例略准备并安装好正…

自己动手写数据库: select 查询语句对应查询树的构造和执行

首先我们需要给原来代码打个补丁&#xff0c;在SelectScan 结构体初始化时需要传入 UpdateScan 接口对象&#xff0c;但很多时候我们需要传入的是 Scan 对象&#xff0c;因此我们需要做一个转换&#xff0c;也就是当初始化 SelectScan 时&#xff0c;如果传入的是 Scan 对象&am…

浅谈故障注入的主要功能是什么?

随着现代软件系统的复杂性不断增加&#xff0c;保障系统的可靠性变得愈发重要。在这一背景下&#xff0c;故障注入技术崭露头角&#xff0c;成为优化系统稳定性和鲁棒性的关键手段。本文将探讨故障注入的主要功能以及在提高系统可靠性方面的作用。 1. 故障模拟与验证 故障注入技…

项目管理系统在律师案件管理中的应用与策略

法律案件管理软件可以帮助律师事务所自动化其日常工作流程&#xff0c;例如查看任务、跟踪计费时间和日历。这有助于公司提高效率并最大化收入&#xff0c;从而发展业务。 使用Zoho Projects项目管理系统进行律师案件管理可以帮助您更好地组织和跟踪案件进程、提高团队协作效率…

【论文精读ICCV_2023】BlendFace: Re-designing Identity Encoders for Face-Swapping

【论文精读ICCV_2023】BlendFace: Re-designing Identity Encoders for Face-Swapping 一、前言Abstract1. Introduction2. Related Work3. Attribute Bias in Face Recognition Models3.1. Identity Distance Loss3.2. Analysis of Identity Similarity 4. BlendFace4.1. Pre-…

中低压MOS 适用于电子烟等产品—— 较小的开关损耗 过流能力好

工作原理&#xff1a; 当用户在吸嘴处抽吸时&#xff0c;气流经过进气孔&#xff0c;穿 过电路板上方的咪头&#xff0c;咪头即产生电信号&#xff0c;驱 动芯片板&#xff0c;让电池供电给雾化芯&#xff0c;雾化芯中的 发热丝将电能转化成热能&#xff0c;当温度达到雾化液…

Zibll子比主题最新学习版

Zibll子比主题5.7.1是一款为WordPress平台设计的优秀主题。它具有独特而富有吸引力的设计风格&#xff0c;同时提供了丰富的功能和卓越的性能&#xff0c;使您的网站在众多网站中脱颖而出。以下是对Zibll子比主题5.7.1的详细介绍。 &#xff08;这是我在“布谷鸟网址导航”上看…

C++ - 哈希

在顺序结构以及平衡树中&#xff0c;由于元素关键码与其存储位置之间没有对应的关系&#xff0c;因此在查找一个元素时&#xff0c;必须要经过关键码的多次比较&#xff1b;比如顺序表中需要从表头开始依次往后比对寻找&#xff0c;查找时间复杂度为 O(N)&#xff0c;平衡树中需…

通俗理解什么是 LSTM 神经网络

大家好啊&#xff0c;我是董董灿。 刚开始做程序开发时&#xff0c;在公司提交代码前&#xff0c;都需要让大佬们 review(评审)&#xff0c;大佬们看完&#xff0c;总会在评论区打出一串"LGTM"。 当时作为小白的我&#xff0c;天真地以为大佬觉得我提交的代码还不错…

浮动的魅力与挑战:如何在前端设计中巧妙运用浮动(下)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

【UE5.1 MetaHuman】使用mixamo_converter把Mixamo的动画重定向给MetaHuman使用

目录 前言 效果 步骤 一、下载mixamo_converter软件 二、Mixamo动画重定向 三、导入UE 四、动画重定向 五、使用重定向后的动画 前言 上一篇&#xff08;【UE5】初识MetaHuman 创建虚拟角色&#xff09;中我们已经制作了一个MetaHuman&#xff0c;本篇博文将介绍如何…

Unity 关于Rigidbody刚体组件的理解

一、基本了解 刚体Rigidbody因具体物理相关的属性&#xff0c;使得实际应用中更有真实感。应用也多&#xff1a; Rigidbody它可以受到重力、碰撞或者力的作用&#xff0c;所以我们可以用它模拟物体的真实物理行为&#xff0c;如受到重力的作用、与其他刚体对象进行碰撞&#…

【infiniband】ibdump抓包

ibdump用于捕获和转储InfiniBand网络的流量。 这种工具通常用于调试和分析InfiniBand网络问题&#xff0c;包括性能瓶颈和配置错误。ibdump工具在Mellanox InfiniBand环境中较为常用&#xff0c;现由NVIDIA提供支持。 使用ibdump的基本步骤 请注意&#xff0c;您需要在安装了…

11.关注、取消关注 + 关注列表、粉丝列表

目录 1.关注、取消关注 1.1 把数据存到 Redis 中&#xff0c;构造 key 1.2 开发业务层 1.3 开发表现层 1.4 显示正确的关注数据 2.关注列表、粉丝列表 2.1 业务层 2.2 表现层 1.关注、取消关注 需求&#xff1a;开发关注、取消关注功能&#xff1b;统计用户的关注数…

飞天使-docker知识点5-资源限制与容器的不同状态

文章目录 cpu和内存的限制内存限制的部分参数容器的不同状态docker images 的分层docker registry制作镜像 cpu和内存的限制 默认情况下&#xff0c;容器没有资源限制&#xff0c;可以使用主机内核调度程序允许的尽可能多的 给定资源&#xff0c;Docker 提供了控制容器可以限制…

wordpress 修改社交图标

要去掉标记的图标&#xff0c;死活找不到在那里配置。后来找到了&#xff0c;下图&#xff08;wordpress 小白&#xff0c;特此记录&#xff09;

【开源软件】最好的开源软件-2023-第17名 Gravite

自我介绍 做一个简单介绍&#xff0c;酒架年近48 &#xff0c;有20多年IT工作经历&#xff0c;目前在一家500强做企业架构&#xff0e;因为工作需要&#xff0c;另外也因为兴趣涉猎比较广&#xff0c;为了自己学习建立了三个博客&#xff0c;分别是【全球IT瞭望】&#xff0c;【…

事务--03---TCC空回滚、悬挂、幂等解决方案

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 Seata TCC 模式设计思路TCC存在的问题1、空回滚以及解决方案解决方案&#xff1a; 2、幂等问题以及解决方案解决方案&#xff1a; 3、悬挂问题以及解决方案解决方案…

档案馆数字化建设实施方案

档案馆数字化建设实施方案主要包括以下几个方面的内容&#xff1a; 1. 目标与规划&#xff1a;明确数字化建设的目标和规划&#xff0c;确定数字化建设的优先领域和重点工作&#xff0c;制定长期和短期的发展规划。 2. 技术设施建设&#xff1a;建设专久智能数字化档案管理系统…

gradle-5.4.1-all下载时出现了Connect timed out

问题描述&#xff1a;最近在学习如何在手机端部署YOLO&#xff0c;出现了许多错误&#xff0c;其中之一的错误&#xff1a;gradle-5.4.1-all下载时出现了Connect timed out&#xff0c;大家都知道这是从国外网站下载网络问题导致的。 解决办法: 在我们创建项目中的一个路径下…