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

DHCP简介

定义

动态主机配置协议DHCP(Dynamic Host Configuration Protocol)是一种用于集中对用户IP地址进行动态管理和配置的技术。即使规模较小的网络,通过DHCP也可以使后续增加网络设备变得简单快捷。

DHCP是在BOOTP(BOOTstrap Protocol)基础上发展而来,但BOOTP运行在相对静态(每台主机都有固定的网络连接)的环境中,管理员为每台主机配置专门的BOOTP参数文件,该文件会在相当长的时间内保持不变。DHCP从以下两方面对BOOTP进行了扩展:

  • DHCP允许计算机动态地获取IP地址,而不是静态为每台主机指定地址。
  • DHCP能够分配其他配置参数,例如客户端的启动配置文件,使客户端仅用一个消息就获取它所需要的所有配置信息。

DHCP协议由RFC 2131定义,采用客户端/服务器通信模式,由客户端(DHCP Client)向服务器(DHCP Server)提出配置申请,服务器返回为客户端分配的配置信息。

DHCP可以提供两种地址分配机制,网络管理员可以根据网络需求为不同的主机选择不同的分配策略。

  • 动态分配机制:通过DHCP为主机分配一个有使用期限(这个使用期限通常叫做租期)的IP地址。

    这种分配机制适用于主机需要临时接入网络或者空闲地址数小于网络主机总数且主机不需要永久连接网络的场景。

  • 静态分配机制:网络管理员通过DHCP为指定的主机分配固定的IP地址。

    相比手工静态配置IP地址,通过DHCP方式静态分配机制避免人工配置发生错误,方便管理员统一维护管理。

受益

DHCP受益主要有以下两点:

  • 降低客户端的配置和维护成本

    DHCP易配置部署,对于非技术用户,DHCP能够将客户端与配置相关的操作降至最低,并能够降低远程部署和维护成本。

  • 集中管理

    DHCP服务器可以管理多个网段的配置信息,当某个网段的配置发生变化时,管理员只需要更新DHCP服务器上的相关配置即可。

组网需求

如图1所示,某企业为办公终端规划了两个网段,网段10.1.1.0/24内PC为员工固定办公终端,网段10.1.2.0/24供企业出差人员临时接入网络。为方便管理员统一,希望企业终端能够自动获取IP地址和DNS服务器IP地址(当用户希望以域名方式访问时需要配置域名解析的DNS服务器)。其中,企业管理者的办公PC(Client_1)由于业务需要,希望使用固定IP地址为10.1.1.100/24。

配置思路

基于接口地址池的DHCP服务器的配置思路如下:

通过在Switch上配置DHCP服务器,实现为企业的两个网段内终端动态分配IP地址和DNS服务器地址。其中,网段10.1.1.0/24内PC为员工固定办公终端,IP地址租期配置为30天,并通过DHCP静态方式为DHCP Client_1分配固定IP地址(10.1.1.100/24);网段10.1.2.0/24供企业出差人员临时接入网络,IP地址租期配置为2天。

操作步骤
  1. 使能DHCP服务

    <HUAWEI> system-view
    [HUAWEI] sysname Switch
    [Switch] dhcp enable
  2. 配置接口加入VLAN

    # 配置GE0/0/1接口加入VLAN10。

    [Switch] vlan batch 10 to 11
    [Switch] interface gigabitethernet 0/0/1
    [Switch-GigabitEthernet0/0/1] port link-type hybrid
    [Switch-GigabitEthernet0/0/1] port hybrid pvid vlan 10
    [Switch-GigabitEthernet0/0/1] port hybrid untagged vlan 10
    [Switch-GigabitEthernet0/0/1] quit

    # 配置GE0/0/2接口加入VLAN11。

    [Switch] interface gigabitethernet 0/0/2
    [Switch-GigabitEthernet0/0/2] port link-type hybrid
    [Switch-GigabitEthernet0/0/2] port hybrid pvid vlan 11
    [Switch-GigabitEthernet0/0/2] port hybrid untagged vlan 11
    [Switch-GigabitEthernet0/0/2] quit
  3. 配置VLANIF接口IP地址

    # 配置VLANIF10接口地址。

    [Switch] interface vlanif 10
    [Switch-Vlanif10] ip address 10.1.1.1 24
    [Switch-Vlanif10] quit

    # 配置VLANIF11接口地址。

    [Switch] interface vlanif 11
    [Switch-Vlanif11] ip address 10.1.2.1 24
    [Switch-Vlanif11] quit
  4. 配置接口地址池

    # 配置VLANIF10接口下的客户端从接口地址池中获取IP地址和相关网络参数。

    [Switch] interface vlanif 10
    [Switch-Vlanif10] dhcp select interface
    [Switch-Vlanif10] dhcp server gateway-list 10.1.1.1
    [Switch-Vlanif10] dhcp server lease day 30
    [Switch-Vlanif10] dhcp server domain-name example.com
    [Switch-Vlanif10] dhcp server dns-list 10.1.3.1
    [Switch-Vlanif10] dhcp server static-bind ip-address 10.1.1.100 mac-address 00e0-fc12-3456
    [Switch-Vlanif10] quit

    # 配置VLANIF11接口下的客户端从接口地址池中获取IP地址和相关网络参数。

    [Switch] interface vlanif 11
    [Switch-Vlanif11] dhcp select interface
    [Switch-Vlanif11] dhcp server gateway-list 10.1.2.1
    [Switch-Vlanif11] dhcp server lease day 2
    [Switch-Vlanif11] dhcp server domain-name example.com
    [Switch-Vlanif11] dhcp server dns-list 10.1.3.1
    [Switch-Vlanif11] quit
  5. 配置DHCP数据保存功能,设备发生故障时,可以在系统重启后,执行命令dhcp server database recover,从存储设备文件恢复DHCP数据。

    [Switch] dhcp server database enable
  6. 验证配置结果

    # 在Switch上执行命令display ip pool来查看接口地址池的分配情况,“Used”字段显示已经分配出去的IP地址数量。假设企业员工固定办公终端有100个,出差人员接入3个。

    [Switch] display ip pool interface vlanif10Pool-name        : Vlanif10Pool-No          : 0Lease            : 30 Days 0 Hours 0 MinutesDomain-name      : example.comDNS-server0      : 10.1.3.1NBNS-server0     : -Netbios-type     : -Position         : InterfaceStatus           : UnlockedGateway-0        : 10.1.1.1Network          : 10.1.1.0Mask             : 255.255.255.0VPN instance     : --Logging          : DisableConflicted address recycle interval: -Address Statistic: Total       :253       Used        :100Idle        :153       Expired     :0Conflict    :0         Disabled     :0-------------------------------------------------------------------------------Network sectionStart           End       Total    Used Idle(Expired) Conflict Disabled-------------------------------------------------------------------------------10.1.1.1      10.1.1.254     253     100        153(0)       0     0-------------------------------------------------------------------------------
    [Switch] display ip pool interface vlanif11Pool-name        : Vlanif11Pool-No          : 1Lease            : 2 Days 0 Hours 0 MinutesDomain-name      : example.comDNS-server0      : 10.1.3.1NBNS-server0     : -Netbios-type     : -Position         : InterfaceStatus           : UnlockedGateway-0        : 10.1.2.1Network          : 10.1.2.0Mask             : 255.255.255.0VPN instance     : --Logging          : DisableConflicted address recycle interval: -Address Statistic: Total       :253       Used        :3Idle        :250       Expired     :0Conflict    :0         Disabled     :0-------------------------------------------------------------------------------Network sectionStart           End       Total    Used Idle(Expired) Conflict Disabled-------------------------------------------------------------------------------10.1.1.1      10.1.1.254    253       3        250(0)       0     0-------------------------------------------------------------------------------

    在Client_1(操作系统以Windows 7为例)上查看IP地址信息,可以看到Client_1已经获取到IP地址10.1.1.100/24。

    C:\Documents and Settings\Administrator>ipconfigWindows IP ConfigurationEthernet adapter Local Area Connection 2:Connection-specific DNS Suffix  . :IPv4 Address. . . . . . . . . . . : 10.1.1.100Subnet Mask . . . . . . . . . . . : 255.255.254.0Default Gateway . . . . . . . . . : 10.1.1.1

    在其他DHCP客户端(以10.1.1.0/24网段中操作系统为Windows 7的某终端为例)上查看IP地址信息,可以看到已经成功获取到IP地址。

    C:\Documents and Settings\Administrator>ipconfigWindows IP ConfigurationEthernet adapter Local Area Connection 2:Connection-specific DNS Suffix  . :IPv4 Address. . . . . . . . . . . : 10.1.1.51Subnet Mask . . . . . . . . . . . : 255.255.254.0Default Gateway . . . . . . . . . : 10.1.1.1

配置文件

Switch的配置文件

#
sysname Switch
#
vlan batch 10 to 11
#
dhcp enable
#
dhcp server database enable
# 
interface Vlanif10ip address 10.1.1.1 255.255.255.0dhcp select interfacedhcp server gateway-list 10.1.1.1dhcp server static-bind ip-address 10.1.1.100 mac-address 00e0-fc12-3456dhcp server lease day 30 hour 0 minute 0dhcp server dns-list 10.1.3.1dhcp server domain-name example.com
#
interface Vlanif11ip address 10.1.2.1 255.255.255.0dhcp select interfacedhcp server gateway-list 10.1.2.1dhcp server lease day 2 hour 0 minute 0dhcp server dns-list 10.1.3.1dhcp server domain-name example.com
#
interface GigabitEthernet0/0/1port link-type hybridport hybrid pvid vlan 10port hybrid untagged vlan 10
#
interface GigabitEthernet0/0/2port link-type hybridport hybrid pvid vlan 11port hybrid untagged vlan 11
#
return

相关文章:

DHCP简介

定义 动态主机配置协议DHCP&#xff08;Dynamic Host Configuration Protocol&#xff09;是一种用于集中对用户IP地址进行动态管理和配置的技术。即使规模较小的网络&#xff0c;通过DHCP也可以使后续增加网络设备变得简单快捷。 DHCP是在BOOTP&#xff08;BOOTstrap Protoc…...

Hadoop生态系统中一些关键组件的详细解析

1. Hadoop核心组件 HDFS&#xff08;Hadoop Distributed File System&#xff09;: 分布式文件存储系统。提供高吞吐量的数据访问&#xff0c;非常适合用于大规模数据集。有高容错性&#xff0c;通过在多个节点间复制数据块来实现。 MapReduce: 一种编程模型&#xff0c;用于在…...

功能强大的开源数据中台系统 DataCap 2024.01.1 发布

推荐一套基于 SpringBoot 开发的简单、易用的开源权限管理平台&#xff0c;建议下载使用: https://github.com/devlive-community/authx 推荐一套为 Java 开发人员提供方便易用的 SDK 来与目前提供服务的的 Open AI 进行交互组件&#xff1a;https://github.com/devlive-commun…...

Redis的bitmap使用不当,我内存爆了

背景 最近发现Redis的内存持续暴涨&#xff0c; 涨的有点吓人&#xff0c;机器都快扛不住了&#xff0c;不得不进行Redis内存可视化分析&#xff0c;发现大量的String类型的大key 经分析&#xff0c;最近上线了页面UV的统计&#xff0c;那目前如何做的呢&#xff1f; 通过访…...

基于python的新闻爬虫

咱们这个任务啊&#xff0c;就是要从一个指定的网站上&#xff0c;抓取新闻内容&#xff0c;然后把它们整整齐齐地保存到本地。具体来说&#xff0c;就是要去光明网的板块里&#xff0c;瞅瞅里面的新闻&#xff0c;把它们一条条地保存下来。 首先&#xff0c;咱得有个网址&…...

C#基础题

值类型和引用类型之间的区别是什么&#xff1f; 值类型在内存中存储实际值&#xff0c;而引用类型存储对对象的引用。值类型在栈上分配内存&#xff0c;而引用类型在堆上分配内存。值类型是不可变的&#xff0c;而引用类型是可变的。值类型的大小是固定的&#xff0c;而引用类型…...

AI大语言模型学习笔记之三:协同深度学习的黑魔法 - GPU与Transformer模型

Transformer模型的崛起标志着人类在自然语言处理&#xff08;NLP&#xff09;和其他序列建模任务中取得了显著的突破性进展&#xff0c;而这一成就离不开GPU&#xff08;图形处理单元&#xff09;在深度学习中的高效率协同计算和处理。 Transformer模型是由Vaswani等人在2017年…...

c++阶梯之auto关键字与范围for

auto关键字&#xff08;c11&#xff09; 1. auto关键字的诞生背景 随着程序的逐渐复杂&#xff0c;程序代码中用到的类型也越来越复杂。譬如&#xff1a; 类型难以拼写&#xff1b;含义不明确容易出错。 比如下面一段代码&#xff1a; #include <string> #include &…...

第八篇:node模版引擎Handlebars及他的高级用法(动态参数)

&#x1f3ac; 江城开朗的豌豆&#xff1a;个人主页 &#x1f525; 个人专栏 :《 VUE 》 《 javaScript 》 &#x1f4dd; 个人网站 :《 江城开朗的豌豆&#x1fadb; 》 ⛺️ 生活的理想&#xff0c;就是为了理想的生活 ! ​ 目录 &#x1f4d8; 引言&#xff1a; &#x1f…...

css3 属性 backface-visibility 的实践应用

backface-visibility 是一个用于控制元素在面对屏幕不同方向时的可见性的CSS3特性。它有两个可能的值&#xff1a; visible&#xff1a;当元素不面向屏幕&#xff08;即背面朝向用户&#xff09;时&#xff0c;元素的内容是可以被看到的。hidden&#xff1a;当元素不面向屏幕…...

嵌入式学习第十七天

C语言小项目&#xff1a; 制作俄罗斯方块小游戏&#xff08;全部&#xff09; 主函数部分 #include <stdio.h> #include <unistd.h> #include <string.h> #include <signal.h> #include <stdlib.h> #include <time.h> #include "b…...

使用Python的Turtle模块简单绘制烟花效果

import turtle import random# 初始化屏幕 screen turtle.Screen() screen.bgcolor("black") screen.title("烟花模拟")# 创建一个Turtle来绘制烟花 firework turtle.Turtle() firework.hideturtle() firework.speed(0) # 设置绘图速度为最快# 绘制烟花…...

数学建模-退火算法和遗传算法

退火算法和遗传算法 一&#xff0e;退火算法 退火算法Matlab程序如下&#xff1a; [W]xlsread(D:100个目标经度纬度);>> x[W(:,1)];>> y[W(:,2)];>> w[x y];;d1[70, 40];>> w[d1;w;d1]ww*pi/180;%角度化成弧度dzeros(102);%距离矩阵初始化for i1:101…...

Qt开源版 vs 商业版 详细比较!!!!

简单整理Qt开源版与商业版有哪些差别&#xff0c;仅供参考。 简单对比 开源版商业版许可证大部分采用对商业使用不友好的LGPLv3具备商业许可证保护代码专有许可证相关大部分模块使用LGPLv3和部分模块使用GPL组成仅第三方开源组件使用Qt的其他许可证Qt模块功能支持支持技术支持…...

华为云CodeArts Snap荣获信通院优秀大模型案例及两项荣誉证书

2024年1月25日&#xff0c;中国人工智能产业发展联盟智能化软件工程工作组&#xff08;AI for Software Engineering&#xff0c;下文简称AI4SE&#xff09;在京召开首届“AI4SE创新巡航”活动。在活动上&#xff0c;华为云大模型辅助系统测试代码生成荣获“2023AI4SE银弹优秀案…...

小程序的应用、页面、组件生命周期(超全版)

小程序生命周期 应用的生命周期 onLaunch: 初始化小程序完成时触发&#xff0c;且全局只触发一次&#xff1b; onShow: 小程序初始化完成&#xff08;启动&#xff09;或从后台切换到前台显示时触发&#xff1b; onHide: 小程序从前台切换到后台隐藏时触发&#xff08;如切换…...

TCP四次握手

TCP 协议在关闭连接时&#xff0c;需要进行四次挥手的过程&#xff0c;主要是为了确保客户端和服务器都能正确地关闭连接。 # 执行流程 四次挥手的具体流程如下&#xff1a; 客户端发送 FIN 包&#xff1a;客户端发送一个 FIN 包&#xff0c;其中 FIN 标识位为 1&#xff0c…...

EBC金融英国CEO:高波动性周期下,如何寻找市场的稳定性?

利率主导的市场&#xff0c;将在2024年延续。目前&#xff0c;固收市场对于降息的定价&#xff0c;正通过利率传导至不同资产中。尽管市场迫切利用通胀去佐证降息&#xff0c;但各国央行仍囿于通胀目标的政策桎梏。政策和市场预期的博弈将继续牵动市场脉搏&#xff0c;引发价格…...

C++ Web 编程

什么是 CGI&#xff1f; 公共网关接口&#xff08;CGI&#xff09;&#xff0c;是一套标准&#xff0c;定义了信息是如何在 Web 服务器和客户端脚本之间进行交换的。CGI 规范目前是由 NCSA 维护的&#xff0c;NCSA 定义 CGI 如下&#xff1a;公共网关接口&#xff08;CGI&…...

docker笔记整理

Docker 安装 添加yum源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 安装docker yum -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin 启动docker systemctl start docker 查看docker状态 s…...

什么是git,怎样下载安装?

简介&#xff1a; 应用场景&#xff1a; 应用场景&#xff1a;团队企业开发 作用&#xff1a; 安装&#xff1a; 1.网址&#xff1a;Git - Downloads 很卡很慢 2.可以选择镜像网站下载&#xff08;推荐&#xff09; CNPM Binaries Mirror...

Camille-学习笔记-测试流程和测试设计

## 测试用例学习路线 startmindmap * 测试用例 ** 黑盒测试方法论 *** 等价类 *** 边界值 *** 因果图 *** 判定表 *** 场景法 *** 基于模型的测试 ** 白盒测试方法论 ** 测试用例基础概念 ** 测试用例设计 ** 面试测试用例设计 ** 常用测试策略与测试手段 endmindmap **测试用…...

【Python笔记-设计模式】建造者模式

一、说明 又称生成器&#xff0c;是一种创建型设计模式&#xff0c;使其能够分步骤创建复杂对象。允许使用相同的创建代码生成不同类型和形式的对象。 (一) 解决问题 对象的创建问题&#xff1a;当一个对象的构建过程复杂&#xff0c;且部分构建过程相互独立时&#xff0c;可…...

【LVGL源码移植】

LVGL源码移植 ■ LVGL源码移植一&#xff1a;下载LVGL源码二&#xff1a;修改LVGL文件夹1: 将这5个文件&#xff0c;复制到一个新的文件夹2: 简化文件&#xff0c;减少内存消耗&#xff08;去除不必要的文件&#xff09;3: 为了规范化&#xff0c;我们将下列文件进行重命名 三&…...

双非本科准备秋招(14.2)—— 进程与线程

进程 进程是运行着的程序&#xff0c;是程序在操作系统的一次执行过程&#xff0c;进程是操作系统分配资源的基本单位。 启动一个java程序&#xff0c;操作系统就会创建一个java进程 进程也可以看作一个程序的实例&#xff0c;大部分程序可以运行多个实例进程&#xff0c;比如记…...

数据结构和算法笔记5:堆和优先队列

今天来讲一下堆&#xff0c;在网上看到一个很好的文章&#xff0c;不过它实现堆是用Golang写的&#xff0c;我这里打算用C实现一下&#xff1a; Golang: Heap data structure 1. 基本概念 满二叉树&#xff08;二叉树每层节点都是满的&#xff09;&#xff1a; 完全二叉树&a…...

第8章 SpringBoot任务管理

学习目标 熟悉SpringBoot整合异步任务的实现 熟悉SpringBoot整合定时任务的实现 熟悉SpringBoot整合邮件任务的实现 开发web应用时,多数应用都具备任务调度功能。常见的任务包括异步任务,定时任务和发邮件任务。我们以数据库报表为例看看任务调度如何帮助改善系统设计。报表可…...

Qt5 基于OpenGL实现六轴机械臂三维仿真

需求 在Qt中通过OPenGL方式加载三维模型STL文件&#xff0c;然后将多个结构的STL文件类型的模型进行组装&#xff0c;形成6轴机械臂三维模型的显示&#xff0c;并且可以对每个关节进行关节角度的控制。 新建一个C类STLFileLoader&#xff0c;用于加载STL文件&#xff0c;并进…...

路由进阶

文章目录 1.路由的封装抽离2.声明式导航 - 导航链接3.声明式导航-两个类名自定义匹配的类名 4.声明式导航 - 跳转传参查询参数传参动态路传参两种传参方式的区别动态路由参数可选符 5.Vue路由 - 重定向6.Vue路由 - 4047.Vue路由 - 模式设置8.编程式导航 - 两种路由跳转9.编程式…...

分类预测 | Matlab实现SCN-Adaboost随机配置网络模型SCN的Adaboost数据分类预测/故障识别

分类预测 | Matlab实现SCN-Adaboost随机配置网络模型SCN的Adaboost数据分类预测/故障识别 目录 分类预测 | Matlab实现SCN-Adaboost随机配置网络模型SCN的Adaboost数据分类预测/故障识别分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现SCN-Adaboost随机配置网…...