认识认识DHCP

news2024/11/24 16:22:06

文章目录

  • 认识认识DHCP
    • 一、什么是DHCP?
      • 1.1、为什么要使用DHCP?
      • 1.2、DHCP是怎么工作的?
        • 1.2.1、客户端首次接入网络的工作原理
        • 1.2.2、客户端重用曾经使用过的地址的工作原理
        • 1.2.3、客户端更新租期的工作原理
    • 二、配置DHCP Server,为用户分配IP地址
      • 2.1、实验准备
      • 2.2、C-7-1设置静态IP地址
      • 2.3、C-7-1安装dhcp软件包
      • 2.4、C-7-1编辑配置文件
        • 1.全局配置部分
        • 2.网段配置部分
        • 3.指定客户端固定IP
      • 2.5、启动服务、关闭防火墙
      • 2.6、客户机测试
        • 2.6.1、C-7-2
        • 2.6.2、win 10

认识认识DHCP

一、什么是DHCP?

动态主机配置协议DHCP(Dynamic Host Configuration Protocol)是一种网络管理协议,用于集中对用户IP地址进行动态管理和配置。

DHCP于1993年10月成为标准协议,其前身是BOOTP协议。DHCP协议由RFC 2131定义,采用客户端/服务器通信模式,由客户端(DHCP Client)向服务器(DHCP Server)提出配置申请,DHCP Server为网络上的每个设备动态分配IP地址、子网掩码、默认网关地址,域名服务器(DNS)地址和其他相关配置参数,以便可以与其他IP网络通信。

1.1、为什么要使用DHCP?

在IP网络中,每个连接Internet的设备都需要分配唯一的IP地址。DHCP使网络管理员能从DHCP服务中监控和分配IP地址。当某台计算机移到网络中的其它位置时,能自动收到新的IP地址。DHCP实现的自动化分配IP地址不仅降低了配置和部署设备的时间,同时也降低了发生配置错误的可能性。

DHCP的优势:

  • 准确的IP配置

  • 减少IP地址冲突

  • IP地址管理的自动化

  • 高效的变更管理

1.2、DHCP是怎么工作的?

DHCP协议采用UDP作为传输协议,DHCP客户端发送请求消息到DHCP服务器的68号端口,DHCP服务器回应应答消息给DHCP客户端的67号端口。

只有跟DHCP客户端在同一个网段的DHCP服务器才能收到DHCP客户端广播的DHCP DISCOVER报文。当DHCP客户端与DHCP服务器不同网段时,必须部署DHCP中继来转发DHCP客户端和DHCP服务器之间的DHCP报文。

1.2.1、客户端首次接入网络的工作原理

在这里插入图片描述

DHCP客户端首次接入网络的工作原理
  1. 发现阶段

    客户端通过广播发送DHCP Discover报文寻找服务器端

  2. 提供阶段

    服务器端通过广播发送DHCP offer 报文向客户端提供IP地址等网络信息,从IP地址池中挑选一个尚未分配的Ip地址分配给客户端

  3. 选择阶段

    如果有多台DHCP服务器向该客户端发来DHCP-offer报文,客户端只接受第一个收到的DHCP-offer报文并提取IP地址,然后客户端通过广播发送DHCP Request 报文告知服务器端本地选择使用该IP地址

  4. 确认阶段

    服务器通过单播发送DHCP Ack报文告知客户端IP地址是合法可用的,并在选项字段中增加IP地址的使用租期信息

1.2.2、客户端重用曾经使用过的地址的工作原理

在这里插入图片描述

DHCP客户端重用曾经使用过的地址的工作原理
  1. 选择阶段

    客户端广播发送包含前一次分配的IP地址的DHCP REQUEST报文,报文中的Option50(请求的IP地址选项)字段填入曾经使用过的IP地址。

  2. 确认阶段

    DHCP服务器收到DHCP REQUEST报文后,根据DHCP REQUEST报文中携带的MAC地址来查找有没有相应的租约记录,如果有则返回DHCP ACK报文,通知DHCP客户端可以继续使用这个IP地址。否则,保持沉默,等待客户端重新发送DHCP DISCOVER报文请求新的IP地址。

1.2.3、客户端更新租期的工作原理

在这里插入图片描述

DHCP客户端更新租期的工作原理
  1. 当租期达到50%(T1)时,DHCP客户端会自动以单播的方式向DHCP服务器发送DHCP REQUEST报文,请求更新IP地址租期。如果收到DHCP服务器回应的DHCP ACK报文,则租期更新成功(即租期从0开始计算);如果收到DHCP NAK报文,则重新发送DHCP DISCOVER报文请求新的IP地址。

  2. 当租期达到87.5%(T2)时,如果仍未收到DHCP服务器的应答,DHCP客户端会自动以广播的方式向DHCP服务器发送DHCP REQUEST报文,请求更新IP地址租期。如果收到DHCP服务器回应的DHCP ACK报文,则租期更新成功(即租期从0开始计算);如果收到DHCP NAK报文,则重新发送DHCP DISCOVER报文请求新的IP地址。

  3. 如果租期时间到时都没有收到服务器的回应,客户端停止使用此IP地址,重新发送DHCP DISCOVER报文请求新的IP地址。

二、配置DHCP Server,为用户分配IP地址

实验说明:准备两台CentOS 7虚拟机(C-7-1、C-7-2),一台Windows 10虚拟机(win 10)。实验机在“vlan 10”,其中**"C-7-1"为服务器**,“C-7-2”、"win 10"为客户机

2.1、实验准备

在这里插入图片描述

C-7-1-网卡设置

在这里插入图片描述

C-7-2-网卡设置

在这里插入图片描述

WIN-10-网卡设置

2.2、C-7-1设置静态IP地址

vim /etc/sysconfig/network-scripts/***        ##修改网卡配置,***以自己网卡为实际
    ONBOOT=yes   #设置网卡是否在 Linux 操作系统启动时激活
    BOOTPROTO=static    #设置网卡的配置方式,“static”表示使用静态IP地址,“dhcp”时表示动态获取地址
    IPADDR=192.168.10.2   #设置网卡的 IP 地址
    NETMASK=24        #设置网卡的子网掩码
    GATEWAY=192.168.10.1      #设置网卡的默认网关地址

systemctl restart network         #重启所有的网卡 

在这里插入图片描述

在这里插入图片描述

2.3、C-7-1安装dhcp软件包

yum makecache                ##检查yum仓库

yum install -y dhcp           ##安装dhcp软件

在这里插入图片描述

2.4、C-7-1编辑配置文件

可以参考/usr/share/doc/dhcp*/dhcpd.conf.example文件进行配置

*是安装的dhcp软件版本号

1.全局配置部分
vim /etc/dhcp/dhcpd.conf
    default-lease-time 3600;                                     #租约为 1小时,单位为秒
    max-lease-time 43200;                                         #最大租约为 12 小时,单位为秒
    option domain-name "benet.com";                             #指定默认域名
    option domain-name-servers 114.114.114.114,8.8.8.8;     #指定 DNS 服务器地址
    ddns-update-style none;                                     #禁用 DNS 动态更新

在这里插入图片描述

2.网段配置部分
subnet 192.168.10.0 netmask 255.255.255.0 {            #声明要分配的网段地址
  range 192.168.10.10 192.168.10.80;                #设置地址池
  option routers 192.168.10.1;                    #指定默认网关地址
}

在这里插入图片描述

3.指定客户端固定IP

指定win 10的IP地址为192.168.10.18

查看win 10的MAC地址

## 同时按win键+R键,(先win后R),调出“运行”对话框,然后输入cmd,点确定。

ipconfig/all        ##查看本机所有网卡配置

 物理地址. . . . . . . . . . . . . : 00-0C-29-BF-F3-54        ##找到连接网卡的物理地址

在这里插入图片描述

配置指定主机的固定地址

host hostname {                                        #指定需要分配固定 IP地址的客户机名称
  hardware ethernet 00:0C:29:BF:F3:54;                #指定该主机的 MAC地址
  fixed-address 192.168.10.18;                        #指定保留给该主机的 IP地址
}

在这里插入图片描述

2.5、启动服务、关闭防火墙

systemctl  stop  firewalld        ##停止服务“firewalld”

setenforce  0            ##关闭防火墙

systemctl  start  dhcpd            ##启动服务“dhcpd”

在这里插入图片描述

2.6、客户机测试

2.6.1、C-7-2
vim /etc/sysconfig/network-scripts/*** ##修改网卡配置,***以自己网卡为实际
   ONBOOT=yes #设置网卡是否在 Linux 操作系统启动时激活
   BOOTPROTO=dhcp #设置网卡的配置方式,“static”表示使用静态IP地址,“dhcp”时表示动态获取地址


systemctl restart network         #重启所有的网卡


ip r            ##查看ip地址

在这里插入图片描述

在这里插入图片描述

2.6.2、win 10
##按Windows+R打开“运行”窗口。在“打开”框中,键入"control panel",然后单击“确定”将其打开。

##打开“控制面板”-“网络和Internet”-“网络共享中心”,找到当前所连接的网络,并点击“属性”。然后,在弹出的窗口中选择“Internet协议版本4(TCP/IPv4)”,并选择“自动获取IP地址”和“自动获取DNS服务器地址”。最后,点击“确定”即可。此时,你的设备就能够使用DHCP上网方式连接互联网。

##按Windows+R打开“运行”窗口。在“打开”框中,键入"cmd",然后单击“确定”将其打开。

ipconfig/all
    以太网适配器 Ethernet0:

   连接特定的 DNS 后缀 . . . . . . . : wl.com
   描述. . . . . . . . . . . . . . . : Intel(R) 82574L Gigabit Network Connection
   物理地址. . . . . . . . . . . . . : 00-0C-29-BF-F3-54
   DHCP 已启用 . . . . . . . . . . . : 是
   自动配置已启用. . . . . . . . . . : 是
   IPv4 地址 . . . . . . . . . . . . : 192.168.10.18(首选)
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   获得租约的时间  . . . . . . . . . : 2024年4月29日 20:26:40
   租约过期的时间  . . . . . . . . . : 2024年4月29日 21:26:40
   默认网关. . . . . . . . . . . . . : 192.168.10.1
   DHCP 服务器 . . . . . . . . . . . : 192.168.10.2
   DNS 服务器  . . . . . . . . . . . : 114.114.114.114
                                       8.8.8.8
   TCPIP 上的 NetBIOS  . . . . . . . : 已启用


mac地址“00:0C:29:BF:F3:54”对应的IP为“192.168.10.18”

在这里插入图片描述

在这里插入图片描述

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

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

相关文章

嵌入式开发二:搭建开发环境

工欲善其事必先利其器,本节我们从嵌入式开发的搭建环境开始学习,掌握最基本的搭建环境技能,了解每一部分的作用,以及如何使用是关键所在! 目录 一、常用开发工具简介 二、如何安装KEIL5(MDK) 2.1认识MDK-ARM 2.2 …

Spring基于AspectJ实现验签切点

文章目录 引言I AspectJ 依赖II 验签切点2.1 匹配方法执行的连接点2.2 设置带有CustomAnnotation注解的方法为切点III 案例:验签2.1 用法2.2 定义注解2.3 定义切面和切点引言 需求:验签 实现:基于AspectJ实现验签切点 I AspectJ 依赖 AspectJ 是一个基于 Java 语言的 AOP …

windos蓝屏分析工具

BlueScreenView中文版 - Windows蓝屏分析工具 BlueScreenView中文版是一款非常方便的蓝屏诊断工具。它可以帮助您快速定位蓝屏问题,并提供详细的故障转储信息。该软件可以自动扫描您机器上的minidump文件夹,同时还支持根据路径查找蓝屏文件。 windos发…

Coursera: An Introduction to American Law 学习笔记 Week 06: Civil Procedure (完结)

An Introduction to American Law Course Certificate Course Introduction 本文是 https://www.coursera.org/programs/career-training-for-nevadans-k7yhc/learn/american-law 这门课的学习笔记。 文章目录 An Introduction to American LawInstructors Week 06: Civil Pro…

Flink checkpoint 源码分析

序言 最近因为工作需要在阅读flink checkpoint处理机制,学习的过程中记录下来,并分享给大家。也算是学习并记录。 目前公司使用的flink版本为1.11。因此以下的分析都是基于1.11版本来的。 在分享前可以简单对flink checkpoint机制做一个大致的了解。 …

docker学习笔记3:VmWare CentOS7安装与静态ip配置

文章目录 一、安装CentOS71、下载centos镜像2、安装二、设置静态ip三、xshell连接centos本专栏的docker环境是在centos7里安装,因此首先需要会安装centos虚拟机。 本篇博客介绍如何在vm虚拟机里安装centos7。 一、安装CentOS7 1、下载centos镜像 推荐清华源,下载如下版本 …

【C++】学习笔记——string_1

文章目录 四、模板初阶2. 类模板 五、STL简介1. 什么是STL2. STL的六大组件3. 如何学习STL 六、string类1. string类对象的容量操作 未完待续 四、模板初阶 2. 类模板 函数模板就是:模板 函数;类模板就是:模板 类。和函数模板用法基本相同…

Kafka客户端工具:Offset Explorer 使用指南

Kafka作为一个分布式流处理平台,在大数据处理和实时数据流应用中扮演着至关重要的角色。管理Kafka的topics及其offsets对于维护系统稳定性和数据一致性至关重要。Offset Explorer是一个强大的桌面应用程序,它使得管理和监控Kafka集群变得简单直观。本文将…

数组 Leetcode 704 二分查找/Leetcode 59 螺旋矩阵/Leetcode 203移除链表元素

数组 Leetcode 704 二分查找 Leetcode 704 学习记录自代码随想录 二分法模板记忆&#xff0c;数值分析中牛顿迭代法 class Solution { public:int search(vector<int>& nums, int target) {int left 0, right nums.size()-1;// 是否需要等于号&#xff0c;假设…

verilog分析task的接口设计,证明这种写法:assign {a,b,c,d} = links;

verilog分析task的接口设计&#xff0c;证明这种写法&#xff1a;assign {a,b,c,d} links; 1&#xff0c;task在状态机中的使用好处&#xff1a;2&#xff0c;RTL设计3&#xff0c;测试testbench4&#xff0c;波形分析&#xff0c;正确&#xff01; 参考文献&#xff1a; 1&am…

C++初阶学习第四弹——类与对象(中)——刨析类与对象的核心点

类与对象&#xff08;上&#xff09;&#xff1a;C初阶学习第三弹——类与对象&#xff08;上&#xff09;——初始类与对象-CSDN博客 前言&#xff1a; 在前面文章中&#xff0c;我们已经讲了类与对象的思想和类与对象的一些基本操作&#xff0c;接下来这篇文章我们将讲解以下…

NLP(10)--TFIDF优劣势及其应用Demo

前言 仅记录学习过程&#xff0c;有问题欢迎讨论 TF*IDF&#xff1a; 优势&#xff1a; 可解释性好 可以清晰地看到关键词 即使预测结果出错&#xff0c;也很容易找到原因 计算速度快 分词本身占耗时最多&#xff0c;其余为简单统计计算 对标注数据依赖小 可以使用无标注语…

超级数据查看器 app v2.0发布 欢迎下载使用

超级数据查看器 app v2.0发布 欢迎下载使用 感谢大家的支持 &#xff1a;&#xff09; 点击访问APP下载界面 跳转 腾讯应用宝 简介 超级数据查看器软件&#xff08;简称超级数据查看器&#xff09;是一个提供数据查询和数据管理的手机APP&#xff0c;能导入文本数据&…

ubuntu neo4j 下载与配置(一)

neo4j 官方下载页面 https://neo4j.com/deployment-center/#community 进入页面之后&#xff0c;往下滑 咱们在下载neo4j时&#xff0c;官方可能要咱们填写一下个人信息&#xff0c;比如&#xff1a;姓名组织结构邮箱等&#xff1a; 咱们可以观察一下&#xff0c;ne4j的下载链…

大数据学习笔记14-Hive基础2

一、数据字段类型 数据类型 &#xff1a;LanguageManual Types - Apache Hive - Apache Software Foundation 基本数据类型 数值相关类型 整数 tinyint smallint int bigint 小数 float double decimal 精度最高 日期类型 date 日期 timestamps 日期时间 字符串类型 s…

OpenAI 新推出 AI 问答搜索引擎——SearchGPT 震撼登场

您的浏览器不支持 video 标签。 OpenAI-SearchGPT 近日&#xff0c;OpenAI 曝光了自己的一款令人瞩目的 AI 问答搜索引擎——SearchGPT。这款搜索引擎带来了全新的搜索体验&#xff0c;给整个行业带来了巨大的压力。 SearchGPT 支持多种强大的功能。首先&#xff0c;它能够通过…

STM32CubeMX+MDK通过I2S接口进行音频输入输出(全双工读写一个DMA回调)续-音质问题解决总结

一、前言 之前进行了STM32CubeMXMDK通过I2S接口进行音频输入输出&#xff08;全双工读写一个DMA回调&#xff09;的研究总结&#xff1a; https://juejin.cn/post/7339016190612881408#heading-34 后续音质问题解决了&#xff0c;目前测试下来48khz的双声道使用效果很好&…

mySQL商城项目实战 (终)(全部表)(1-88张)

本章无sql语句&#xff0c;直接放转出的sql文件。 88张表结果如图! 资源在已经与文章绑定&#xff0c; 在navicat工具中&#xff0c;执行以下步骤 在新建的数据库中右键,点击【运行sql文件】&#xff0c;运行绑定的资源&#xff0c;之后您就可以在您的navicat中看到我建好的8…

Python数据分析大作业(ARIMA 自回归积分滑动平均模型) 4000+字 图文分析文档 销售价格库存分析+完整python代码

资源地址&#xff1a;Python数据分析大作业 4000字 图文分析文档 销售分析 完整python代码 完整代码分析 ​ 同时销售量后1000的sku品类占比中&#xff08;不畅销产品&#xff09;如上&#xff0c;精品类产品占比第一&#xff0c;达到66.7%&#xff0c;其次是香化类产品&#x…

在Android中,如何通过Kotlin协程处理多个API调用

在Android中&#xff0c;如何通过Kotlin协程处理多个API调用 在Android开发中&#xff0c;如何使用Kotlin协程处理多个API调用的示例呢&#xff1f;假设我们已经对Kotlin协程有了一定的了解&#xff0c;包括定义、简单用例和示例等。现在&#xff0c;让我们来看一些真实的Andr…