文章目录

  • IP地址荷官——DHCP(动态主机配置协议)
    • 前言
    • 一、什么是DHCP?
    • 二、DHCP的优势
    • 三、DHCP的配置原理
      • DHCP分配的三种模式
      • DHCP地址池
      • DHCP配置特殊应用场景
    • 四、DHCP工作原理
      • DHCP租约
      • 更新租约
      • 私有地址168.254.0.0/16
      • DHCP协议报文
        • 1.客户端请求IP地址(Discover)
        • 2.服务器响应(offer)
        • 3.客户机选择IP地址(request)
    • 小结

IP地址荷官——DHCP(动态主机配置协议)

前言

日常生活中,在我们上网的时候,都会需要一个IP地址,那这些IP地址是如何来的呢?目前我们知道的是静态IP地址和自动分配IP地址,那自动分配IP地址又是如何分配的呢?今天我们就来简单了解一下这位IP地址的荷官——DHCP动态主机配置协议。

一、什么是DHCP?

DHCP(Dynamic Host Configuration Protocol):动态主机配置协议,是由Internet工作任务小组设计开发的,专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议,是一个应用层协议,使用UDP67和68端口。

DHCP的前身是BOOTP协议(BootstrapProtocol),BOOTP呗创建出来为链接到网络中的设备自动分配地址,后来被DHCP取代了,DHCP比BOOTP更加复杂,功能更强大。(如果使用wireshark抓包过滤协议是使用bootp而不是dhcp)

DHCP是典型的C/S模式:在网络中架设一台专用的DHCP服务器,负责集中分配各种网络地址参数(主要包括 IP地址、子网页码、默认网关地址、DNS服务器地址、广播地址),其他主机作为DHCP客户机,将网卡配置为自动获取地址,即可与DHCP服务器进行通信,完成自动配置过程。

二、DHCP的优势

由于上网时间的不确定性以及人员的技术水平不同,为每一位用户分配一个固定的IP地址,不仅造成了IP地址的浪费,也会为ISP服务商带来高额的维护成本,而使用DHCP服务则有以下好处:

1.减少管理员的工作量

2.避免输入错误的可能

3.避免IP地址的冲突

4.当网络更改IP地址段时,不需要再重新配置每个用户的IP地址

5.提高了IP地址的利用率

6.方便客户端的配置

DHCP服务避免了因手动设置IP地址所产生的的错误,同时也避免了把一个IP地址分配给多台工作站所造成的地址冲突。DHCP提供了安全、可靠且简单的TCP/IP网络设置,降低了配置IP地址的负担。

三、DHCP的配置原理

DHCP分配的三种模式

1.手动配置——static:静态配置,例:防火墙,打印机,门禁

2.自动分配——DHCP:使用完后释放该IP,供其它客户机使用

3.指定主机MAC地址分配DHCP:分配到一个IP地址后永久使用

DHCP地址池

地址池指的是DHCP服务器可以为客户端分配的所有IP地址的集合。除IP地址外,地址池内还可以配置租期、子网掩码、默认网关等网络参数。在DHCP服务器为客户端分配IP地址时,这些网络参数也一并分配给客户端。主要分配以下入网参数:

①IP地址/子网掩码/广播地址

②默认网关地址、DNS服务器地址

③PXE引导设置(TETP服务器地址、引导文件名)

DHCP配置特殊应用场景

在某些环境中不一定只有一个DHCP,当client端比较多的时候,可能需要多台DHCP服务器来进行IP地址的分配或冗余,例如在公司环境中不同部门之间的子网

如上图,其中不同子网的IP地址优先选择离自己近的DHCP服务器获取IP地址。

四、DHCP工作原理

DHCP租约

我们的设备获取到DHCP分配的IP地址后,并不是可以永久使用此地址,而是有一个使用期限,这个期限就是DHCP的租约,但是我们在日常使用中可以发现,即使我们的设备联网时间超过这个租约时间还是可以正常联网的,而且IP并没有改变,这是怎么回事呢?

实际上我们的设备获取到IP地址后,就会同时获取到租约的时长,在经过租约的“1/2时长”和“7/8时长”的时候就会联系DHCP服务器申请延续租约,一旦申请成功那么租约期限就会延长,如果经过两次申请却没有回应的话,那么设备就需要重新获取IP地址,如果没有获取到新IP地址就有可能会有断网的情况。

由于路由器需要对所有连接的设备的地址进行管理,DHCP的租约就有利于清理掉那些不再使用的IP以分配给新设备,所以在公共场合的路由器就可以将租约设置得更短一些,以便更快得清理不再使用得IP,而在家庭使用的情况下由于连接设备相对固定,不需要频繁更新IP地址,可以将租约设置得更长一些。

更新租约

当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约。

客户机直接向提供租约的服务器发送DHCP request包,要求更新现有的地址租约。

私有地址168.254.0.0/16

为什么会获得169.254.0.0/16网段的地址?

一开始,DHCP客户机初始化TCP/IP,通过UDP端口67向网络中发送一个DHCP DISCOVER广播包,请求租用IP地址。任何接收到DHCP DISCOVER广播包并且能够提供IP地址的DHCP服务器,都会通过UDP端口68给客户机回应一个DHCP OFFER广播包,提供一个IP地址。但是,DHCP客户机在发出IP租用请求的DHCP DISCOVER广播包后,将花费1秒钟的时间等待DHCP服务器的回应,如果1秒钟没有服务器的回应,它会将这一广播包重新广播四次(以2,4,8和16秒为间隔,加上1~1000毫秒之间随机长度的时间)。四次之后,如果仍未能收到服务器的回应,则运行1dows的DHCP客户机将从169.254.0.0/16这个自动保留的私有IP地址(APIPA)中选用一个IP地址,而运行其他操作系统的DHCP客户机将无法获得IP地址。

DHCP协议报文

DHCP既然是动态主机配置协议,那相对应的协议就有报文,DHCP的报文如下图:

如图可以看出DHCP报文一共有四个步骤:

1.客户端请求IP地址(Discover)

当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址,此时DHCP客户机以广播的方式发送DHCP Discover发现信息来寻找DHCP服务器。

2.服务器响应(offer)

DHCP服务器接收到来自客户机请求IP地址分信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机。如果有,则DHCP服务器将此IP地址坐上标记,加入到DHCP offer的消息中,然后广播一则DHCP offer消息。

3.客户机选择IP地址(request)

DHCP客户机从接收到的第一个DHCP offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机。

4.确认租约和重新登陆(ACK/NAK)

DHCP客户机每次重新登陆网络时,不需要再发送DHCP Discover信息,而是直接发送好汉前一次所分配的IP地址的DHCP request请求信息。

小结

1.物理网卡自身集成了DHCP的功能为了请求获取合法可用的IP

次所分配的IP地址的DHCP request请求信息。

END

IP地址荷官——DHCP(动态主机配置协议)简介相关推荐

  1. OpenWrt之DHCP(动态主机配置协议)

    OpenWrt之DHCP(动态主机配置协议) DHCP简介 在TCP/IP网络上,每台主机在访问网络及其资源之前,都必须进行基本的网络信息配置,包含IP地址.子网掩码.默认网关和DNS等.在大型网络中 ...

  2. 自动为计算机配置ip的协议,电脑自动获取IP地址----DHCP动态主机配置协议

    电脑主机要接入网络中就需要有三层IP地址,静态IP地址采用的是管理员手工配置的配置方式,这种方式在设备较少的情况下可以很好控制地址的分配,但是在设备较多的情况下手工配置的方式变得繁琐,而且当分出去的地 ...

  3. dhcp动态主机配置协议

    dhcp简介:         动态主机设置协议(Dynamic Host Configuration Protocol,DHCP)是一个局域网的网络协议,使用UDP协议工作,计算机网络应用层协议. ...

  4. Telnet,命令级别,DHCP (动态主机配置协议),DHCP租期, 地址池,全局配置,接口配置,DHCP中继代理,网络三要素,路由项匹配算法

    Telnet Tcp协议 自带mac 缺少ip 手动配置ip 客户端配置: System-view //进入系统模式 interface GigabitEthernet 0/0/0 //进入端口 ip ...

  5. 动态主机配置协议服务器不能提供,计算机网络基础课程—动态主机配置协议(Dhcp)...

    原标题:计算机网络基础课程-动态主机配置协议(Dhcp) DHCP(RFC 2131,2132)是对BOOTP的扩展,这种扩展体现在两个方面: 能在一个DHCP消息中为客户提供所有的网络配置信息,如I ...

  6. 域名系统DNS、文件传送协议FTP、动态主机配置协议DHCP、远程登录协议TELNET、电子邮件协议(SMTP/POP3/IMAP)、常用端口

    1.DNS域名系统 Domain Name System DNS 是一个分布式数据库,提供了主机名和 IP 地址之间相互转换的服务. 这里的分布式数据库是指,每个站点只保留它自己的那部分数据. 域名具 ...

  7. 网际协议:动态主机配置协议(DHCP)和NAT

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

  8. 计算机网络实验(华为eNSP模拟器)——第八章 动态主机配置协议(DHCP)

    目录 前言 一.DHCP的定义 二.接口模式的 DHCP 命令 (1)开启DHCP配置功能 (2)开启接口的DHCP功能 (3)设置排除地址 (4)设置地址池ip租用有效期 (5)设置DNS地址 (6 ...

  9. 动态主机配置协议DHCP

    动态主机配置协议----DHCP协议(Dynamic Host Configure Protocol)允许新加入网络的计算机快速.动态地获取IP地址. DHCP的工作过程如下: ①只要有新计算机连到网 ...

最新文章

  1. OneAPM挂牌新三板,资本市场一片看好!
  2. 手工编译Android程序
  3. java小编程---最长公共前缀
  4. java 三个点_Java,参数中的3个点
  5. 飞鸽传书内部排序算法的性能比较
  6. Linux Linux常用命令二
  7. [原创]RedisDesktopManager工具使用介绍
  8. hdoj1465错排公式的应用(递推)
  9. 20200408_W_水波理论和波浪载荷
  10. 微分方程模型_天生一对,硬核微分方程与深度学习的「联姻」之路
  11. js对H5链接url进行解密实现过程(vue)
  12. Exchange ProxyShell复现
  13. linux 模拟误码率,基于System View的比特误码率测试的仿真研究
  14. 天梯L1-015 跟奥巴马一起画方块 (15 分)(Java)
  15. 冷笑话 企鹅与北极熊
  16. 9.27通则康威技术面
  17. 牢骚:各种奇奇怪怪的问题。。。
  18. QQ是如何实现好友桌面快捷方式的?
  19. 链路聚合的手工与LACP配置
  20. 浏览器地址栏javascript

热门文章

  1. CMMI的5个成熟度等级
  2. deepin显卡驱动管理器在哪_deepin20 安装英伟达闭源驱动的步骤详解
  3. 豪华钟表江诗丹顿将使用区块链溯源
  4. 学习VUE第七天课程(VUE之组件(基础、分类、命名))
  5. 工程机械——起重机导电滑环
  6. SAI+Ps日漫漫画培训视频教程
  7. 推荐11本对程序员最有影响力的书籍
  8. 【深度学习】预训练语言模型-BERT
  9. 可重构优化c语言,第八章 可重构计算处理器技术_魏少军.pdf
  10. html语言的td合并,table标签合并单元格(包括行和列的合并)的方法