ZTP

零配置部署(Zero Touch Provisioning,ZTP)是指新出厂或空配置设备上电启动时采用的一种自动加载开局文件(包括系统软件、补丁文件、配置文件等)的功能。设备运行ZTP功能,可以自动获取并自动加载开局文件,实现设备的免现场配置和部署,从而降低人力成本,提升部署效率。

大家应该都了解ZTP,但是目前发现除了控制器之外仅使用ZTP开局的兄弟并不是很多,因此分享此过程方便大家批量开局,留出更多时间学习更多技术。

ZTP流程

使用ZTP之前先了解一下设备如何进入到ZTP流程,中间又如何进行自动部署的。ZTP开局主要分为以下几种技术,本文讲的是通过DHCP+TFTP的方式进行开局。

  • U盘开局:它是通过在设备上插入U盘的方式来完成设备开局的一种技术。
  • DHCP开局:它需要用户先部署DHCP服务器(也称为ZTP Server),设备空配置上电后自动进入ZTP开局流程,通过DHCP方式完成自动部署,也称DHCP方式的ZTP。如果用户还部署了专用的BootStrap服务器,使用双向认证和数据加密保证ZTP数据可信,则称为称安全ZTP(Secure Zero Touch Provisioning)。
  • 邮件开局:邮件开局是将开局邮件发送到开局邮箱,开局人员在收到开局邮件后,通过浏览器访问邮件中的URL链接启动开局流程,设备自动完成开局部署的一种开局技术。

普遍设备ZTP的工作流程

以下这张图来自于华为的产品稳定,借此图来了解下ZTP的流程,

DHCP+tftp+ZTP的工作过程

DHCP开局需要用到的组件:

  • DHCP服务器:用来为待开局设备分配临时管理IP地址、缺省网关、DNS服务器地址、中间文件服务器地址等信息。(必选)
  • Syslog服务器:用来将DHCP开局过程中记录的用户日志上传到网管侧。(可选)
  • DHCP中继:当待开局设备与DHCP服务器位于不同网段时,需要通过DHCP中继来转发DHCP报文。(可选)
  • 中间文件服务器:用来保存开局过程中设备需要的中间文件。通过解析中间文件,待开局设备可以获取开局文件服务器地址、开局文件等信息。(必选)
  • 开局文件服务器:用来保存待开局设备需要的开局文件,如系统软件、配置文件、补丁文件。开局文件服务器也仅支持SFTP类型的服务器,可以和中间文件服务器部署在同一个文件服务器上。(必选,可以与中间文件服务器合并部署)
  • DNS服务器:用来提供域名和IP地址之间的映射关系。开局设备可以通过DNS服务器将文件服务器的域名解析成IP地址,从而获取需要的文件。(可选)

因此我们必须至少有2个组件才能够完成ZTP的开局,即:DHCP服务器文件服务器

DHCP开局工作流程

  1. 上电启动设备。设备空配置上电启动后,即可进入DHCP开局流程。注意,必须是空配置。
  2. 获取DHCP信息。设备依次在管理网口、以太接口上广播发送DHCP请求报文(接口请求顺序依次为:管理网口->高带宽以太接口->低带宽以太接口)。DHCP服务器向设备发送DHCP应答报文,并通过报文中的Option选项携带DHCP信息,包括设备的IP地址、缺省网关、中间文件服务器的地址、Syslog服务器的地址、中间文件名等。设备解析DHCP应答报文,获取Syslog服务器的IPv4地址。设备将DHCP开局启动过程中的重要信息记录到用户日志中,然后通过Syslog服务器上传到网管侧。本次使用到的DHCP option选项主要有:Option150(tftp-server 地址)和option67(Bootfile name )选项。也可以通过option66(tftp-server域名)通过域名的方式获取TFTP的地址,但是要多部署DNS服务器用来解析域名。
  3. 获取中间文件。设备从DHCP应答报文中获取中间文件服务器地址,然后从中间文件服务器上下载ini格式的中间文件或者Python格式的中间文件。(关于中间件文件,华为做的还是很好的,官网的产品文档即可获取,但是华三官网写的就很简单,也没有给出详尽的中间文件范例,希望后续华三在文档这一块能够做的更加完善)(关于华为的DHCP ZTP开局可以参考:配置DHCP方式的ZTP
  4. 获取开局文件。如果中间文件是ini格式的中间文件,设备会根据文件中的开局文件服务器地址、开局文件名信息,从开局文件服务器上下载相应的开局文件;如果是 Python格式的中间文件 ,设备会自动执行该脚本,通过运行脚本从开局文件服务器上下载相应的开局文件。
  5. 设置启动文件并重启设备。设备自动将下载的开局文件设置为下次启动文件,然后重新启动,完成DHCP开局。

部署阶段

工具准备:

前面讲到了需要安装DHCP服务器以及TFTP服务器,因此我们要准备一些工具:

OpenDHCPServer

一款开源的DHCP服务器软件,可以安装于windows操作系统。当然很多大神喜欢在Linux里安装DHCP server,我这里就介绍一下win下的操作吧。

软件下载地址:官网 个人网盘 (提取码:xonj)

TFTP Server

使用TFTP服务器工具进行文件的上传和下载,网上很多TFTP server软件,大家可以自行下载。常用的有Filezilla; 3CDaemon等,可以根据使用自取所需。本文将通过3CDaemon进行部署。

中间件文件:

中间件文件使用python的脚本,可以在这里下载:华三中间件文件 (提取码:x2we)

工具安装:

OpenDHCPServer安装:

TFTP工具安装上即可,本文将介绍OpenDHCPServer的安装。

工具下载到个人电脑里双击安装程序即可安装,注意记录一下安装目录,后续按照安装指导进行安装即可。

OpenDHCPServer安装完成之后需要打开电脑的服务管理器,找到OpenDHCPServer,右击选择“启动”即可。

服务运行之后在浏览器输入:127.0.0.1:6789 即可查看DHCP服务的运行/地址分配等情况:

OpenDHCPServer配置:

打开安装目录,找到 OpenDHCPServer.ini 文件,用notedpad++等工具打开。通过编辑内容实现对DHCPServer的配置,修改完成后重启OpenDHCPServer服务。示例如下:


TFTP服务器的配置:

TFTP服务器可以根据个人情况选择软件,但是由于中间件文件的脚本限制,对TFTP的目录有一些要求:

  • 标识文件放在identity的文件夹下,用于堆叠或单机环境的自动配置;

    • 标识文件sn.txt格式如下,ESN列为设备SN号,Stack group列如果是相同值则认为是一组堆叠,Stack member列为设备在堆叠中的槽位号(irf member ID)。(也可以通过MAC地址的方式,但是要保持中间件文件中的配置,设备配置文件命名方式等一致。)

  • 版本镜像文件放在image文件夹下,华三ipe格式的镜像文件;

  • 设备的配置文件放在config文件夹下,以设备的SN或者MAC地址进行命名;

  • 设备的license文件方在license文件夹下,以SN号进行命名;(可选)

  • 版本的MD5文件放在md5文件夹下;(可选)

  • 中间件文件直接放于根目录下。

中间件文件的修改(根据实际情况进行修改):


以上内容可以根据实际情况进行增删改。

设备开局:

电脑打开DHCP服务器,TFTP服务器,并通过网线连接到设备的管理口,若设备较多可以通过带外交换机等进行连接,

设备ZTP开局的过程如下:

【新华三】DHCP+TFTP+ZTP自动开局实战相关推荐

  1. DHCP+TFTP+PXE自动网络引导安装Linux操作系统

    DHCP+TFTP+PXE自动网络引导Linux+NFS/FTP/HTTP Push多个Linux操作系统 原理: 1)客户端PXE网卡启动 2)从DHCP服务器获得IP 3)从TFTP服务器上下载p ...

  2. zabbix批量自动监控新华三服务器

    监控说明: 和部分网络设备不同,服务器需要带外管理口才能对外开放数据.通常来说,在服务器接了带外口后,就是配置snmp不同版本,省事的话一般就是snmp v2,有安全要求就需要配置snmp v3,但需 ...

  3. 自动化运维之CentOS7下PXE+Kickstart+DHCP+TFTP+HTTP无人值守安装系统

    一.概述 1.关于PXE Preboot Execution Environment翻译过来就是预启动执行环境;简称PXE;传统安装操作系统的方法是CDROM或U盘引导,而PXE技术解决的是从网络引导 ...

  4. Linux网络安装(PXE + DHCP+TFTP+ Kickstart+ FTP)

    需要使用到的服务:PXE + DHCP+TFTP+ Kickstart+ FTP 运行原理如下图: 原理和概念:  1.前言        首先,简单谈谈为什么要采用无人值守网络安装linux操作系统 ...

  5. win2003系统网络安装——基于linux+pxe+dhcp+tftp+samba+ris

    原文发表于:2010-09-16 转载至cu于:2012-07-21 一.原理简介 PXE(preboot execute environment)工作于Client/Server的网络模式,支持工作 ...

  6. Linux之DHCP+tftp+syslinux+PXE+Cobbler

    DHCP简介 DHCP全称为:Dynamic host configuration protocol协议,其协议前身为Boot protocol, 其工作于67,68/UDP端口,服务端工作于67端口 ...

  7. 非常实用,华为、新华三、锐捷交换机的配置命令分享

    干弱电这一行难免会接触到交换机,华为.新华三锐捷交换机又是最常见的交换机,关于他们的命令配置很容易弄混,而且在实际项目配置中也很容易出错,因此,本期我们将来介绍这三家交换机的基础配置命令,大家可以分别 ...

  8. struts2 ognl 判断数据类型_新华三攻防系列之防护篇从防护角度看Struts2历史漏洞...

    前言 Struts2漏洞是一个经典的漏洞系列,根源在于Struts2引入了OGNL表达式使得框架具有灵活的动态性.随着整体框架的补丁完善,现在想挖掘新的Struts2漏洞会比以前困难很多,从实际了解的 ...

  9. 19年8月 字母哥 第三章 spring boot 配置原理实战 用热点公司网不行

    第三章 spring boot 配置原理实战 3.1.结合配置加载讲解bean自动装配原理 3.2.详解YAML语法及占位符语法 3.3.获取自定义配置的两种实现方法 3.4.配置文件注入值数据校验 ...

最新文章

  1. 隐藏Nginx版本号的安全性与方法
  2. 第七课.Logistic回归算法
  3. 推荐系统(1)--splitting approaches for context-aware recommendation
  4. webpack 采坑(CleanWebpackPlugin 插件报错: CleanWebpackPlugin is not a constructor ;)
  5. OpenCV下PCA降维
  6. xss植入_xss的高级利用
  7. Vue学习之路---No.7(分享心得,欢迎批评指正)
  8. 【自定义控件】自定义属性
  9. 智慧交通day02-车流量检测实现06:目标估计模型-卡尔曼滤波
  10. 在webLogic 10.3中部署Hibernate 3.5出现 ClassNotFoundException解决办法
  11. 10 QM配置-检验计划配置-维护检验批来源并分配检验类型
  12. 关于vue的语法规则检测报错问题
  13. 定时任务schedule(spring boot )
  14. javascript 中Math函数在勾弦定理计算上的错误
  15. 【优化电价】基于matlab遗传算法求解共享汽车电价优化问题【含Matlab源码 1162期】
  16. 管壳式热交换器传热计算
  17. Ae:Roto 笔刷和调整边缘
  18. 控制系统仿真与计算机辅助设计第二版第二章,控制系统仿真与CAD 第2版
  19. 时域采样与频域采样实验【matlab】
  20. 网传宝塔“0day”挂马事件—附检测脚本

热门文章

  1. 计算机的起源和历史英语作文,关于足球起源的英语作文
  2. Android ListView中CheckBox选中状态失效的最佳解决方案
  3. 视频格式 ffmpeg简单用法
  4. 如何使用oracle修改表字段长度
  5. CKEditor 5 富文本编辑器的官方例子
  6. 链表类模板的基本应用(c++)
  7. 根据角度求椭圆上坐标
  8. C++ 实现端口扫描(转载)
  9. 【Java 并发编程】 03 万恶的 Bug 起源—并发编程的三大特性
  10. MT2503的SDK到底有几个版本