是一个应用层的网络协议,指的是由服务器控制一段IP地址范围,客户机登录服务时就可以自动获得服务器分配的IP地址和子网掩码,当我们将客户主机IP地址设置为动态获取方式时,DHCP服务器就会根据DHCP协议给客户端分配IP,使得客户机能够利用这个IP上网

背景:1 终端上网需要有地址信息;2 地址信息可以手动配置;3 手动配置存在比较多的问题

作用目标:实现以动态的·方式给网络当中的主机配置IP地址及其上网必须的地址信息

DHCP作用以及特点

DHCP可以自动分配IP、子网掩码、网关、DNS

DHCP客户端使用的端口是88,服务端端口是67,使用的UDP应用层的协议

DHCP一般不为服务器分配IP,因为他们要使用固定的IP,所有一般只为办公环境的主机分配IP

DHCP服务器和客户端需要在一个局域网内,在位客户端分配IP的时候需要进行多次广播,但DHCP也可以为其网段内的主机分配IP,只要连接二个网段中间的路由器能转发DHCP配置请求即可,担着要求路由配置中继功能

DHCP服务器IP分配三种方式

自动分配方式,DHCP服务器为主机指定一个永久的IP地址,一旦DHCP客户端第一次成功从DHCP服务器端租用到IP地址后,就可以永久性的使用该地址

动态分配方式,DHCP服务器给主机指定一个具有时间限制的IP地址,时间到期或者主机明确表示放弃该地址时,该地址可以被其他主机使用

手工分配方式,客户端的IP地址是由网络管理员指定的,DHCP服务器只是将指定的IP地址告诉客户端主机

DHCP协议工作流程

客户端首先会发起请求,寻找服务器获取IP地址

发现(discover):广播 发现网络中的DHCP服务器,并且报告自己的需要

提供(offer):单薄 服务器发现有用户想我请求IP地址信息,服务器会直接在地址池中选取IP地址进行响应,给定到客户端

请求(request):广播 以自己获取到的IP地址进行请求,确定这个IP地址是否给自己使用

确认(ack):单播 表名这个地址确实是给这个客户端使用的

DHCP续租

在使用租期过去50%时刻处,客户端向服务发送单播DHCP REQUEST吧报文续约租期

如果收到服务器的DHCP ACK报文,则租期相应向前延长,续租成功,如果没有收到DHCP ACK报文,则客户端继续使用这个IP地址。在使用租期过去87.5%时刻处,向服务器发送广播DHCP REQUEST报文续延租期。

如果收到服务器的DHCP ACK报文,则租期相应向前延长,续租成功。如果没有收到DHCP ACK报文,则客户端继续使用这个IP地址。在使用租期到期时,客户端自动放弃使用这个IP地址,并开始新的DHCP过程。

DHCP中继

DHCP的作用:可以实现在不同子网和物理网段之间处理和转发处理DHCP信息的功能。如果DHCP客户机与DHCP服务器在同一物理网段,则客户机可以正确地获得动态分配的IP地址。如果不在同一个物理网段,则需要DHCP Relay Agent(中继代理)

中继代理必须具有固定的IP地址,同时还保存有DHCP服务器的IP地址,因为中继代理已经拥有IP地址,所以可以直接向DHCP服务器发送数据包,或者接受来自DHCP服务器的数据包,由于中继代理与DHCP客户端位于相同的网络上,也就意味着它可以通过广播与DHCP客户端进行通信

中继代理会在UDP端口监听广播,当中继代理检测到DHCP请求时,就将这个请求转发给DHCP服务器,当代理收到DHCP服务器的响应时,就将响应在本地网段上广播

通常是通过路由器提供DHCP服务器的功能,在大多数网络中,这样都可以减少对DHCP中继代理的需求,在大型的网络中,可能会存在多个子网,DHCP客户机通过网络广播消息获得DHCP服务器的响应后得到IP地址,但广播消息是不能跨越子网。因此,如果DHCP客户机和服务器在不同的子网内,客户机还能不能向服务器申请IP地址呢?这就要用到DHCP中继代理,DHCP中继代理实际上是一种软件技术,安装了DHCP中继代理的计算机称为DHCP中继代理服务器,它承担不同子网间的DHCP客户机和服务器的通信任务。

如果存在多个网段,那么DHCP服务器如何区分不同的请求,从而为不同网段的PC分配不同的IP地址?

不同的网段内的DHCP请求广播报文被网关交换机的SVI接口接收到后,会对DHCP报文进行中继(单播方式发送给DHCP服务器),同时将本SVI地址填充在Relay agent IP address字段。DHCP服务器收到后将这个字段的IP地址与地址池网段进行匹配,如果匹配成功,则为该DHCP请求从该地址池中分配相应的IP地址

DHCP协议(动态主机配置协议)的更多相关文章

  1. DHCP:动态主机配置协议

    DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络服务供应商自动分配IP ...

  2. 动态主机配置协议DHCP

    一.什么是DHCP DHCP,动态主机配置协议,提供一种称为“即插即用连网”的机制,允许一台计算机加入新的网络和获取IP地址而不用手工配置. 二.DHCP工作原理和工作流程 DHCP服务器被动打开UD ...

  3. <TCP/IP>DHCP动态主机配置协议

    坚持是一种好习惯 大家都知道,为了上网我们是需要提交一些配置信息的,如IP地址,子网掩码,DNS服务器等,这些是一个主机能够在Internet上运行并给用户提供常用服务(比如web和Email)的基本 ...

  4. 计算机网络之动态主机配置协议DHCP

    为了将软件协议做成通用的和便于移植,协议软件的编写者不会把所有细节都固定在源代码中,而是把协议软件参数化,这就使得在很多台计算机上使用同一个经过编译的二进制代码成为可能. 一台计算机和另一台计算机的区 ...

  5. 【RL-TCPnet网络教程】第25章 DHCP动态主机配置协议基础知识

    第25章      DHCP动态主机配置协议基础知识 本章节为大家讲解DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),通过前面章节对TCP和UDP ...

  6. 第9章 应用层(2)_动态主机配置协议(DHCP)

    2. 动态主机配置协议(DHCP) 2.1 静态地址和动态地址的应用场景 (1)静态地址应用场景 ①IP地址不经常更改的设备(如服务器地址) ②使用有规律的IP地址以便于管理(如学校机房为方便教师管理 ...

  7. DHCP(动态主机配置协议)工作流程

    一.DHCP的作用 我们先来看一下什么是DHCP,DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)它可以为客户机自动分配IP地址.子网掩码以及缺省网 ...

  8. DHCP动态主机配置协议

    1.DHCP简述 某组织一旦获得了一个地址,它就可以为本组织内的主机与路由器接口逐个分配IP地址.系统管理通常可以手工配置路由器中的IP地址(静态分配).但这项任务目前通常更多是使用动态主机配置协议( ...

  9. 【网络协议】动态主机配置协议DHCP

    动态主机配置协议DHCP 当某组织获得一块地址后,就可以为本组织内的主机或者路由器分配IP地址.这个分配工作可以由系统管理员手动通过网络管理工具来完成.也可以由动态主机配置协议(Dynamic Hos ...

  10. 动态主机配置协议-DHCP

    一.DHCP 概述 当局域网中有大量的PC时.如果我们逐个为每台PC去手动配置IP.那这就是一个吃力也未必讨好的办法 累死你 而DHCP 刚好可以解决这个问题.DHCP全称(动态主机配置协议).使用的 ...

随机推荐

  1. SharpIco:用纯C#打造零依赖的.ico图标生成器,支持.NET9与AOT编译

    前言 最近一直在完善我今年的两款桌面软件:视频剪辑工具 Clipify 和 AI 文章创作工具 StarBlogPublisher 虽然界面是基本完善了,但图标还是默认的,显得很不专业 于是我打算给这 ...

  2. Servlet中过滤器、监听器和拦截器的区别

    基本概念   过滤器(Filter):当你有一堆东西的时候,你只希望选择符合你要求的某一些东西.定义这些要求的工具,就是过滤器.就是对请求起到过滤的作用:在监听器之后servlet之前对请求进行过滤. ...

  3. Java 生成随机字符串的六种方法

    目录 前言 生成随机字符串 结束语 Reference 一套优秀的随机字符串生成机制不仅需要确保全局唯一性,还需要考虑到性能等问题.翻看了之前写过的一篇生成三位整数随机数的博文<Java 生成三 ...

  4. 如何在Mac系统上把U盘分成2个区?

    插入U盘后,使用命令行执行如下命令: diskutil partitionDisk /dev/disk8 GPT MS-DOS TESLAMUSIC 7% ExFAT TESLADRIVE 93% 第 ...

  5. 1 分钟生成架构图?程序员 AI 绘图保姆级教程

    大家好,我是鱼皮.作为一名程序员,画图可以说是工作中的家常便饭了.无论是给领导汇报时画架构图.还是写文档时画流程图.或者头脑风暴时画思维导图,画图能力直接体现出我们的专业水平. 以前画图需要自己费时费 ...

  6. java的5种异常的语法

    1 try{}catch(){} ​ 2 try{}catch(){}catch(){} ​ 3 try{}catch(){}finally{} ​ 4 try{}catch(){}catch(){} ...

  7. Centos7.x根分区扩容

    背景说明 我们在部署好的系统中,随着数据的不断增加, 发现根分区频繁出现满载问题,这种情况下,我们需要对根分区进行扩容. 方案说明 • 使用空闲磁盘扩容到根分区 • 使用空闲的分区扩容到根分区 • 使 ...

  8. 超实用!10 个 Excel 数据验证技巧,轻松解决数据录入难题

    [Excel基础系列之十二] 嗨,宝子们,我是社会牛马"表哥"--EETools. 在数据管理与日常办公中,Excel 数据验证如同一位 "数据质检员",从源头 ...

  9. pont生成api涉及泛型问题

    背景 pont是一款很好用的api生成工具. 我最近在用其生成swagger3的前端接口文件时,发现了个问题. 就是当我后端接口返回的是复杂类型的泛型的时候,生成的def类型有问题: 会直接写死泛型! ...

  10. leetcode 483 最小好二进制

    简介 对于困难的题目, 一般好像是不会一下子得出答案, 需要进行一定的数学分析, 然后才可以得出答案. 官房给出了数学的证明, 但是一般人数学早丢了, 还是二分法有用. 参考大神的, 思路简单来说就是 ...