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

华为---DHCP中继代理简介及示例配置

DHCP中继代理简介

        IP动态获取过程中,客户端(DHCP Client)总是以广播(广播帧及广播IP报文)方式来发送DHCPDISCOVER和DHCPREQUEST消息的。如果服务器(DHCP Server)和 客户端不在同一个二层网络(二层广播域)中,服务器不可能接收到DHCPDISCOVER和DHCPREQUEST消息。因此,DHCP工作流程只适合于服务器和客户端位于同一个二层网络的场景。

        如果一个网络包含了多个二层网络,是不是要在每个二层网络中都至少部署一个DHCP服务器 呢?理论上讲这样做未尝不可,但实际上这样做是没有必要的,也是很不经济的。而DHCP协议除了定义了 DHCP客户端和 DHCP 服务器这两种角色之外,还定义了DHCP中继代理(DHCP Relay Agent)。DHCP中继代理的基本用途就是在DHCP 客户端和DHCP服务器之间进行DHCP消息的中转。

        DHCP客户端利用 DHCP中继代理来从DHCP服务器获取IP地址等配置参数时,DHCP中继代理必须与DHCP客户端位于同一个二层网络,但DHCP服务器可以与DHCP中继代理位于同一个二层网络,也可以与 DHCP中继代理位于不同的二层网络。DHCP客户端与DHCP中继代理之间是以广播方式交换DHCP消息的,但 DHCP中继代理与 DHCP服务器之间是以单播方式交换 DHCP消息的(DHCP中继代理必须事先知道 DHCP服务器的IP地址)。DHCP中继代理通常是部署在路由器上或三层交换机上。

        DHCP中继可以使客户端通过它与其他网段的DHCP服务器通信,最终获取IP地址,解决了DHCP客户端不能跨网段向服务器动态获取IP地址的问题。这样,在多个不同网络上的DHCP客户端可以使用同一个DHCP服务器,既节省了成本,又便于进行集中管理和维护。路由器或三层交换机都可以充当 DHCP中继设备。

以3个网段(3个二层网络)为例,讲述DHCP中继代理的工作过程

DHCP客户端首次向DHCP服务器请求IP地址时,通过以下四个阶段完成。

  1. 发现阶段:即DHCP客户端寻找DHCP服务器的阶段。客户端以广播方式发DHCP_Discover报文,DHCP中继代理收到后,通过单播方式转发DHCP_Discover消息给所有DHCP服务器都会响应,非DHCP服务器设备不会响应。
  2. 提供阶段:即DHCP服务器向DHCP客户端提供IP地址等信息阶段。DHCP服务器接收到客户端的DHCP_Discover报文后,从IP地址池中选一个尚未分配的IP地址分配给客户端(华为设备倒序分配IP地址,如,IP地址池是192.168.1.1-192.168.1.254,DHCP服务器先分配192.168.1.254,再分配192.168.1.253,以此类推;思科设备正序分配IP地址。),向该客户端发送包含出租IP地址和其他设置的DHCP_Offer报文。DHCP中继代理收到后,通过广播方式转发DHCP_Offer消息给DHCP客户端。
  3. 选择阶段:即DHCP客户端选择IP地址的阶段。客户端收到DHCP_Offer报文后,以广播方式向各DHCP服务器回应DHCP_Request报文,DHCP中继代理收到后,通过单播方式转发DHCP_Request消息给所有DHCP服务器。
  4. 确认阶段:即DHCP服务器确认所提供的IP地址的阶段。当DHCP服务器收到DHCP客户端回答的DHCP_Request报文后,便向客户端发送包含它所提供的IP地址和其他设置的DHCP_ACK确认报文。DHCP中继代理收到后,通过广播方式转发DHCP_ACK消息给所有DHCP客户端。

DHCP中继代理配置命令

dhcp enable        //开启DHCP功能
ip pool IP地址池名称        //创建DHCP的IP地址池
network IP地址 mask 子网掩码或子网掩码位数        //配置DHCP的IP地址池网段
gateway-list 网关IP地址        //配置全局地址池的网关
dhcp select global        //关联端口和全局地址池
dhcp select relay        //关联端口和DHCP中继代理
dhcp relay server-ip 需要中继的DHCP服务器IP地址        //在DHCP中继代理设备上配置DHCP服务器IP地址

[R2]dhcp server group dhcp-g        //创建DHCP服务组
[R2-dhcp-server-group-dhcp-g]dhcp-server 192.168.6.252        //添加DHCP服务器IP地址
[R2-GigabitEthernet0/0/2]dhcp select relay         //关联端口和DHCP中继代理
[R2-GigabitEthernet0/0/2]dhcp relay server-select dhcp-g        //在DHCP中继代理设备上配置DHCP服务器组

DHCP中继代理示例

示例要求

        把DHCP-R1和DHCP-R2路由器都配置为DHCP服务器,R2路由器配置为DHCP中继代理,PC1和PC2通过DHCP自动获取IP地址,DHCP-R1、DHCP-R2、R1和R2路由器上配置ospf路由协议,实现网络互联互通。

网络拓扑图

配置代码

system-view 
sysname R1
interface GigabitEthernet 0/0/0
ip address 123.123.10.1 28
quit
interface GigabitEthernet 0/0/1
ip address 192.168.6.254 24
quit
ospf 1 router-id 1.1.1.1
area 0
network 192.168.6.0 0.0.0.255
network 123.123.10.0 0.0.0.15
quitsystem-view 
sysname R2
interface GigabitEthernet 0/0/0
ip address 123.123.10.2 28
interface GigabitEthernet 0/0/1
ip address 192.168.7.254 24
interface GigabitEthernet 0/0/2
ip address 192.168.8.254 24
quit
ospf 1 router-id 2.2.2.2
area 0
network 192.168.7.0 0.0.0.255
network 192.168.8.0 0.0.0.255
network 123.123.10.0 0.0.0.15
quit
dhcp enable 
interface GigabitEthernet 0/0/1
dhcp select relay 
dhcp relay server-ip 192.168.6.253
quit
dhcp server group dhcp-g
dhcp-server 192.168.6.252
quit
interface GigabitEthernet 0/0/2
dhcp select relay 
dhcp relay server-select dhcp-g
quitsystem-view 
sysname DHCP R1
interface GigabitEthernet 0/0/0
ip address 192.168.6.253 24
quit
ospf 1 router-id 3.3.3.3
area 0
network 192.168.6.0 0.0.0.255
quit
dhcp enable 
ip pool dhcp-pool-1
network 192.168.7.0 mask 24 
gateway-list 192.168.7.254
quit	
interface GigabitEthernet 0/0/0
dhcp select global 
quitsystem-view 
sysname DHCP R2
interface GigabitEthernet 0/0/0
ip address 192.168.6.252 24
quit
ospf 1 router-id 4.4.4.4
area 0
network 192.168.6.0 0.0.0.255
quit
dhcp enable 
ip pool dhcp-pool-2
network 192.168.8.0 mask 24 
gateway-list 192.168.8.254
quit	
interface GigabitEthernet 0/0/0
dhcp select global 
quit

代码解析

<Huawei>system-view 
[Huawei]sysname R1
[R1]interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0]ip address 123.123.10.1 28
[R1-GigabitEthernet0/0/0]quit
[R1]interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1]ip address 192.168.6.254 24
[R1-GigabitEthernet0/0/1]quit
[R1]ospf 1 router-id 1.1.1.1
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 192.168.6.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 123.123.10.0 0.0.0.15
[R1-ospf-1-area-0.0.0.0]quit

<Huawei>system-view 
[Huawei]sysname R2
[R2]interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0]ip address 123.123.10.2 28
[R2-GigabitEthernet0/0/0]interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1]ip address 192.168.7.254 24
[R2-GigabitEthernet0/0/1]interface GigabitEthernet 0/0/2
[R2-GigabitEthernet0/0/2]ip address 192.168.8.254 24
[R2-GigabitEthernet0/0/2]quit
[R2]ospf 1 router-id 2.2.2.2
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 192.168.7.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]network 192.168.8.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]network 123.123.10.0 0.0.0.15
[R2-ospf-1-area-0.0.0.0]quit
[R2-ospf-1]quit
[R2]dhcp enable 
[R2]interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1]dhcp select relay   
 //关联端口和DHCP中继代理
[R2-GigabitEthernet0/0/1]dhcp relay server-ip 192.168.6.253    //在DHCP中继代理设备上配置DHCP服务器IP地址为192.168.6.253
[R2-GigabitEthernet0/0/1]quit
[R2]dhcp server group dhcp-g   
 //创建DHCP服务组
[R2-dhcp-server-group-dhcp-g]dhcp-server 192.168.6.252    //添加DHCP服务器IP地址为192.168.6.252
[R2-dhcp-server-group-dhcp-g]quit
[R2]interface GigabitEthernet 0/0/2
[R2-GigabitEthernet0/0/2]dhcp select relay 
[R2-GigabitEthernet0/0/2]dhcp relay server-select dhcp-g   
//在DHCP中继代理设备上配置DHCP服务器组
[R2-GigabitEthernet0/0/2]quit

<Huawei>system-view 
[Huawei]sysname DHCP R1
[DHCP R1]interface GigabitEthernet 0/0/0
[DHCP R1-GigabitEthernet0/0/0]ip address 192.168.6.253 24
[DHCP R1-GigabitEthernet0/0/0]quit
[DHCP R1]ospf 1 router-id 3.3.3.3
[DHCP R1-ospf-1]area 0
[DHCP R1-ospf-1-area-0.0.0.0]network 192.168.6.0 0.0.0.255
[DHCP R1-ospf-1-area-0.0.0.0]quit
[DHCP R1-ospf-1]dhcp enable 
[DHCP R1]ip pool dhcp-pool-1 
 //创建DHCP的IP地址池
[DHCP R1-ip-pool-dhcp-pool-1]network 192.168.7.0 mask 24     //配置DHCP的IP地址池网段为192.168.7.0/24
[DHCP R1-ip-pool-dhcp-pool-1]gateway-list 192.168.7.254    //配置全局地址池的网关为192.168.7.254
[DHCP R1-ip-pool-dhcp-pool-1]quit    
[DHCP R1-ip-pool-dhcp-pool-1]quit 
[DHCP R1]interface GigabitEthernet 0/0/0
[DHCP R1-GigabitEthernet0/0/0]dhcp select global   
 //关联端口和全局地址池
[DHCP R1-GigabitEthernet0/0/0]quit

<Huawei>system-view 
[Huawei]sysname DHCP R2
[DHCP R2]interface GigabitEthernet 0/0/0
[DHCP R2-GigabitEthernet0/0/0]ip address 192.168.6.252 24
[DHCP R2]ospf 1 router-id 4.4.4.4
[DHCP R2-ospf-1]area 0
[DHCP R2-ospf-1-area-0.0.0.0]network 192.168.6.0 0.0.0.255
[DHCP R2-ospf-1-area-0.0.0.0]quit
[DHCP R2-ospf-1]quit
[DHCP R2]dhcp enable
[DHCP R2]ip pool dhcp-pool-2
[DHCP R2-ip-pool-dhcp-pool-2]network 192.168.8.0 mask 24 
[DHCP R2-ip-pool-dhcp-pool-2]gateway-list 192.168.8.254
[DHCP R2-ip-pool-dhcp-pool-2]quit    
[DHCP R2-ip-pool-dhcp-pool-2]quit 
[DHCP R2]interface GigabitEthernet 0/0/0
[DHCP R2-GigabitEthernet0/0/0]dhcp select global 
[DHCP R2-GigabitEthernet0/0/0]quit

测试验证

上图说明PC1和PC2通过DHCP中继代理分别从各自的DHCP服务器成功获取了IP地址。

 

相关文章:

华为---DHCP中继代理简介及示例配置

DHCP中继代理简介 IP动态获取过程中&#xff0c;客户端&#xff08;DHCP Client&#xff09;总是以广播&#xff08;广播帧及广播IP报文&#xff09;方式来发送DHCPDISCOVER和DHCPREQUEST消息的。如果服务器&#xff08;DHCP Server&#xff09;和 客户端不在同一个二层网络(二…...

五、W5100S/W5500+RP2040树莓派Pico<UDP Client数据回环测试>

文章目录 1. 前言2. 协议简介2.1 简述2.2 优点2.3 应用 3. WIZnet以太网芯片4. UDP Client回环测试4.1 程序流程图4.2 测试准备4.3 连接方式4.4 相关代码4.5 测试现象 5. 注意事项6. 相关链接 1. 前言 UDP是一种无连接的网络协议&#xff0c;它提供了一种简单的、不可靠的方式来…...

死锁Deadlock

定义 死锁是指两个或多个线程互相持有对方所需的资源&#xff0c;从而导致它们无法继续执行的情况。如下图所示&#xff0c;现有两个线程&#xff0c;分别是线程A及线程B&#xff0c;线程A持有锁A&#xff0c;线程B持有锁B。此时线程A想获取锁B&#xff0c;但锁B需等到线程B的结…...

【spark客户端】Spark SQL CLI详解:怎么执行sql文件、注释怎么写,支持的文件路径协议、交互式模式使用细节

文章目录 一. Spark SQL Command Line Options(命令行参数)二. The hiverc File1. without the -i2. .hiverc 介绍 三. 支持的路径协议四. 支持的注释类型五. Spark SQL CLI交互式命令六. Examples1. running a query from the command line2. setting Hive configuration vari…...

虹科干货 | HK-TrueNAS版本大揭秘!一文教您如何选择合适的TrueNAS软件

文章来源&#xff1a;虹科网络基础设施 阅读原文&#xff1a;https://mp.weixin.qq.com/s/Iv0zDDmiDgE9vEGlAZs-sg 1&#xff0e;导语 TrueNAS是虹科iXsystems 设计和开发的NAS 操作系统&#xff0c;提供许多功能&#xff0c;例如文件存储、虚拟机 (VM) 和媒体服务器。它基于…...

前端html+css+js实现的2048小游戏,很完善。

源码下载地址 支持&#xff1a;远程部署/安装/调试、讲解、二次开发/修改/定制 逻辑用的是JavaScript&#xff0c;界面用canvas实现&#xff0c;暂时还没有添加动画。 视频浏览地址...

学习通签到

要在Vue中使用H5lock.js&#xff0c;首先需要将H5lock.js引入到项目中。可以通过以下步骤来使用&#xff1a; 1. 将H5lock.js文件保存到项目中的某个目录下&#xff0c;例如src/assets文件夹。 2. 在需要使用H5lock.js的组件中&#xff0c;通过import语句将H5lock.js引入进来…...

target采退、测评养号购物下单操作教程

1.点击右上角的Create account注册账号 2.填写账号信息 3. 进入自己需要购买的商品页面 点击pick it up购买 4. 进入购物车页面选择快递方式和地址后点击 check out按钮 5. 之后会提示绑定XYK&#xff0c;这里我是用虚拟XYK开卡平台进行支付的. 6. 确认订单无误后点击Place you…...

SEACALL海外呼叫中心系统的优势包括

SEACALL海外呼叫中心系统的优势包括 封卡封号问题解决 海外呼叫中心系统通过API开放平台能力&#xff0c;定制电话营销系统&#xff0c;提供多项功能如自动拨打、智能应答、真人语音交互等&#xff0c;帮助企业克服员工离职率高、客户资源流失严重等挑战。 - 高级管理者操控 …...

Painter:使用视觉提示来引导网络推理

文章目录 1. 论文2. 示意图3. 主要贡献4. 代码简化 1. 论文 paper:Images Speak in Images: A Generalist Painter for In-Context Visual Learning github:https://github.com/baaivision/Painter 2. 示意图 3. 主要贡献 在 In-context Learning 中&#xff0c;作为自然语言…...

Fedora Linux 38 安装数学动画制作工具manimgl工具包

manimgl可以制作数学动画&#xff0c;它使用的是Python编程语言。 这里介绍他在Fedora Linux 38下的安装过程。 1. sudo dnf update 2. sudo dnf install python3-devel python3-pip python3-tools -y 3. sudo dnf install python3-numpy python3-scipy python3-sympy -y …...

行业追踪,2023-10-26

自动复盘 2023-10-26 凡所有相&#xff0c;皆是虚妄。若见诸相非相&#xff0c;即见如来。 k 线图是最好的老师&#xff0c;每天持续发布板块的rps排名&#xff0c;追踪板块&#xff0c;板块来开仓&#xff0c;板块去清仓&#xff0c;丢弃自以为是的想法&#xff0c;板块去留让…...

Android 和 iOS APP 测试的那些区别

目前市面上主流的移动操作系统就是 Android 和 iOS 两种&#xff0c;移动端测试本身就跟 Web 应用测试有自己的专项测试&#xff0c;比如安装、卸载、升级、消息推送、网络类型测试、弱网测试、中断测试、兼容性测试等都是区别于 Web 应用需要关注的测试领域。 那么&#xff0…...

利用nicegui开发ai工具示例

from fastapi import FastAPI import uvicorn from nicegui import uiclass PipRequirement:def __init__(self):ui.label("依赖安装与依赖展示")class BasicSettings:def __init__(self):self.project_select ui.select(["test"], label"项目选择&q…...

HarmonyOS鸿蒙原生应用开发设计- 流转图标

HarmonyOS设计文档中&#xff0c;为大家提供了独特的流转图标&#xff0c;开发者可以根据需要直接引用。 开发者直接使用官方提供的流转图标内容&#xff0c;既可以符合HarmonyOS原生应用的开发上架运营规范&#xff0c;又可以防止使用别人的图标侵权意外情况等&#xff0c;减…...

postgresql14管理(六)-备份恢复

定义 备份&#xff08;backup&#xff09;&#xff1a;通过物理复制或逻辑导出的方式&#xff0c;将数据库的文件或结构和数据拷贝到其他位置进行存储&#xff1b; 还原&#xff08;restore&#xff09;&#xff1a;是一种不完全的恢复。使用备份文件将数据库恢复到备份时的状…...

配置Sentinel 控制台

1.遇到的问题 服务网关 | RuoYi 最近调试若依的微服务版本需要用到Sentinel这个组件&#xff0c;若依内部继承了这个组件连上即用。 Sentinel是阿里巴巴开源的限流器熔断器&#xff0c;并且带有可视化操作界面。 在日常开发中&#xff0c;限流功能时常被使用&#xff0c;用…...

【漏洞复现】酒店宽带运营系统RCE

漏洞描述 安美数字 酒店宽带运营系统 server_ping.php 远程命令执行漏洞 免责声明 技术文章仅供参考&#xff0c;任何个人和组织使用网络应当遵守宪法法律&#xff0c;遵守公共秩序&#xff0c;尊重社会公德&#xff0c;不得利用网络从事危害国家安全、荣誉和利益&#xff…...

Autojs 利用OpenCV识别棋子之天天象棋你马没了

本例子通过代码像你介绍利用OpenCV实现霍尔找圆的方法定位棋子位置 通过autojs脚本实现自动点击棋子 开源地址 https://github.com/Liberations/TtxqYourHorseIsGone/blob/master/main.js AutoXJs https://github.com/kkevsekk1/AutoX/releasesauto() //安卓版本高于Android 9…...

好数组——尺取法

好数组 给定一个长度为 n 的数组 a&#xff0c;计算数组 a 中所有子数组中好数组的数目。 好数组定义如下&#xff1a; 对于数组 al ,al1, ⋯ ,ar &#xff0c;若数组中所有数的质因数种类数不超过 k&#xff0c;则称为好数组。 Input 输入的第一行包含两个正整数 n,k (1≤…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习&#xff08;Reinforcement Learning, RL&#xff09;是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程&#xff0c;然后使用强化学习的Actor-Critic机制&#xff08;中文译作“知行互动”机制&#xff09;&#xff0c;逐步迭代求解…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

Python:操作 Excel 折叠

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet&#xff0c;点击确认后如下提示 最终上报fail 解决方法 内核升级导致&#xff0c;需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的&#xff0c;比GNOME简单得多&#xff01; 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

图表类系列各种样式PPT模版分享

图标图表系列PPT模版&#xff0c;柱状图PPT模版&#xff0c;线状图PPT模版&#xff0c;折线图PPT模版&#xff0c;饼状图PPT模版&#xff0c;雷达图PPT模版&#xff0c;树状图PPT模版 图表类系列各种样式PPT模版分享&#xff1a;图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

Webpack性能优化:构建速度与体积优化策略

一、构建速度优化 1、​​升级Webpack和Node.js​​ ​​优化效果​​&#xff1a;Webpack 4比Webpack 3构建时间降低60%-98%。​​原因​​&#xff1a; V8引擎优化&#xff08;for of替代forEach、Map/Set替代Object&#xff09;。默认使用更快的md4哈希算法。AST直接从Loa…...