利用python实现批量登录网络设备进行日常巡检

news2024/11/25 6:28:11

利用python实现批量登录网络设备

  • 实现ensp与物理机互通
    • ensp 配置
    • 配置网络设备远程登录
  • 用python实现批量登录
    • 常见问题

通过阅读本文可以学习自动化运维相关知识,本文章代码可以直接使用,通过批量登录功能后,可以按照自己意愿进行功能更改与完善。

实现ensp与物理机互通

ensp 配置

利用华为ensp模拟器提供的cloud功能实现与物理机互通,如图所示
图1
图2

选择其他设备–>cloud,拖到拓扑图中后选中cloud图标,右键选择设置选项,即可看到cloud配置界面

在这里插入图片描述

选择绑定信息下拉框,即可看到物理机的网卡情况,在此利用虚拟网卡进行桥接
PS:如果下拉框无虚拟网卡选项可以重新安装VirtualBox虚拟机,并重启物理机,或者可以通过计算机管理–>网络适配器–>添加过时硬件–>下一步–>安装我手动从列表中选择的硬件–>网络适配器–>Microsoft KM-TEST 环回适配器–>一直点击下一步确定即可,添加环回口适配器来进行与物理机通信,完成后记得重启物理机,否则cloud中没有此网卡选项

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

当虚拟网卡或者环回适配器配置好后,就可以设置cloud,其中要点为
1、添加两个端口,一个为UDP,一个为虚拟网卡或者环回适配器网卡
2、添加端口映射,其中需要增加双向通道
3、配置网络设备和所选择的网卡在同一网段
4、在物理机和ensp网络设备上测试是否可以互通

在这里插入图片描述

配置网络设备远程登录

华为华三思科远程登录设备的方法

可参考以上文档方法配置网络设备远程登录

用python实现批量登录

安装好对应程序,并下载paramiko包

import  paramiko

def ssh_connect(ip):
    ssh = paramiko.SSHClient()		#创建SSH登录实例
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())       #自动保存公钥
    ssh.connect(hostname=ip,port=22,username="admin",password="admin123")	#输入网络设备登录所需信息
    cli=ssh.invoke_shell()              #将结果回显
    cli.send("dis fan\n")				#查看风扇情况
    cli.send("dis device\n")			#查看硬件情况,可以根据需要添加
    res = cli.recv(9999).decode('utf-8')        #字符转换为utf-8格式
    print(res)
    ssh.close()
data_list=["192.168.56.{}".format(i) for i in range(2,4)]  #根据所登录ip地址网段不同来进行更改,其中range(2,4)代表的是2和3,即左闭区间,右开区间
for i in data_list:                   #利用for循环来进行批量操作
    ssh_connect(i)

执行成功结果在这里插入图片描述

常见问题

in ssh_connect
    ssh.connect(hostname=ip,port=22,username="admin",password="admin123")

出现此提示可能有两种情况
1、物理机和ensp网络设备网络不可达
2、ensp网络设备无法远程登录

    ssh_connect(i)
    ^
IndentationError: expected an indented block after 'for' statement on line 26

出现此提示可能原因为:
未按照语法规则进行编译,此时可查看空格是否正确

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

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

相关文章

电路基础笔记(更新中)

导体 导体是指那些能够轻易传递电荷(电子)的物质。在固体、液体或气体中,电子可以在导体内部自由移动,从而形成电流。导体的电导性取决于它的电子结构和能带特性。常见的导体包括金属(如铜、铝、铁等)以及一…

UNIX网络编程——TCP协议API 基础demo服务器代码

目录 一.TCP客户端API 1.创建套接字 2.connect连接服务器​编辑 3.send发送信息 4.recv接受信息 5.close 二.TCP服务器API 1.socket创建tcp套接字(监听套接字) 2.bind给服务器套接字绑定port,ip地址信息 3.listen监听并创建连接队列 4.accept提取客户端的连接 5.send,r…

怎么做Tik Tok海外娱乐公会呢?新加坡市场怎么样?

一、为什么选择TikTok直播 1. 海外市场潜力巨大 • 自2016年始,多家直播平台陆续拓展至东南亚、中东、俄罗斯、日韩、欧美、拉美等地区。 • 海外市场作为直播发展新蓝海,2021年直播行业整申请cmxyci体规模达百亿美元,并维持高速增长。 &a…

在阿里云服务器上安装部署WDCP主机管理系统教程

阿里云百科分享在阿里云服务器上安装部署WDCP主机管理系统流程,WDCP(WDlinux Control Panel)是一套Linux服务器及虚拟主机管理系统,通过Web控制和管理服务器。在WDCP的后台中,您可以更方便地使用Linux系统作为网站服务…

STM32CubeMX之freeRTOS消息队列

创建一个消息队列,两个发送任务,一个接受任务 发送任务一:等待时间为0 发送任务二:等待时间为最大 接受为0 简单来说就是: 任务一:一个普写 一个死写 一个普读 任务二:创造队列 一个普写 …

JDBC快速入门操作

一、jdbc简介 JDBC是java用于连接数据库的api,数据库软件有多种,像MySQL,SQLsever,Oracle等数据库,这些数据库都是由不同的团队开发的,所以相同的功能的api的名字不同,当一个后端工程需要切换一个数据库软件…

Java 实现敏感词检测

敏感词检测 敏感词的检测,一般是建立一个敏感词库,然后判断字符串中是否存在敏感词库中的某些词汇,然后将其过滤或者替换显示为其他文本,这对于一个和谐的网络环境是及其必要的,接下来就我们看看敏感词检测的实现方式…

Spring MVC 简介

目录 1. 什么是MVC2. 什么是SpringMVC 1. 什么是MVC MVC是一种常用的软件架构模式。可以看作是一种设计模式,也可以看作是一种软件框架。经典MVC模式中,M是指模型,V是视图,C则是控制器,使用MVC的目的是将M和V的实现代…

最强自动化测试框架Playwright(11)- 录制视频

视频 使用playwright,您可以录制测试视频。 录制视频 视频在测试结束时在浏览器上下文关闭时保存。如果手动创建浏览器上下文,请确保等待 browser_context.close()。 context browser.new_context(record_video_dir"vid…

【Java】 java | git | win系统重装会给开发环境带来哪些问题

一、概述 1、近期发现电脑用起来不丝滑了,文件夹操作卡顿,一阵操作还会蓝屏 2、不能忍,整理排查 二、电脑情况 1、CPU: I5-9400F 2.9GHz 6核 2、内存: 32G 3、固态:256G 4、机械:1T 5、盘符使用…

Java基础篇--Number Math 类

目录 Number类 扩展小知识 Math类 实例 Number类 Java中的Number类是一个抽象类,它是所有包装类(如Integer、Double、Long等)的父类。这个类提供了将基本数据类型(如int、double、long等)封装为对象,…

[Leetcode] [Tutorial] 多维动态规划

文章目录 62. 不同路径Solution 62. 不同路径 一个机器人位于一个 m ∗ * ∗ n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角。 问总共有多少条不同的路径? 示例…

QT-K线效果显示

QT-K线效果显示 一、演示效果二、关键程序三、程序链接 一、演示效果 二、关键程序 代码如下&#xff1a; #include "kvolumegrid.h"#include <QMessageBox> #include <QPainter> #include <QPen> #include <QString>kVolumeGrid::kVolume…

OpenCV实例(八)车牌字符识别技术(二)字符识别

车牌字符识别技术&#xff08;二&#xff09;字符识别 1.字符识别原理及其发展阶段2.字符识别方法3.英文、数字识别4.车牌定位实例 1.字符识别原理及其发展阶段 匹配判别是字符识别的基本思想&#xff0c;与其他模式识别的应用非常类似。字符识别的基本原理就是对字符图像进行…

iphone拷贝照片中间带E自动去重软件,以及java程序如何打包成jar和exe

文章目录 一、前提二、问题描述三、原始处理方式四、程序处理4.1 java程序如何打包exe4.1.1 首先打包jar4.1.2 开始生成exe软件使用方式 4.2 更换图标4.2.1 更换swing的打包jar图标4.2.2 更换exe图标 4.2 附件下载 一、前提 用苹果手机照相&#xff0c;有不使用默认的4:3拍照的…

【大数据之Kafka】一、Kafka定义消息队列及基础架构

1 定义 Kafka传统定义&#xff1a;Kafka是一个分布式的基于发布/订阅模式的消息队列&#xff08;Message Queue&#xff09;&#xff0c;主要应用于大数据实时处理领域。 发布/订阅&#xff1a;消息的发布者不会将消息直接发送给特定的订阅者&#xff0c;而是将发布的消息分为…

React 组件防止冒泡方法

背景 在使用 antd 组件库开发时&#xff0c;发现点击一个子组件&#xff0c;却触发了父组件的点击事件&#xff0c;比如&#xff0c;我在一个折叠面板里面放入一个下拉框或者对下拉框列表渲染做定制&#xff0c;每个下拉框候选项都有一个子组件… 解决 其实这就是 Javascri…

头条移动端项目Day02—— app端文章查看、静态化freemarker、分布式文件系统minIO

❤ 作者主页&#xff1a;欢迎来到我的技术博客&#x1f60e; ❀ 个人介绍&#xff1a;大家好&#xff0c;本人热衷于Java后端开发&#xff0c;欢迎来交流学习哦&#xff01;(&#xffe3;▽&#xffe3;)~* &#x1f34a; 如果文章对您有帮助&#xff0c;记得关注、点赞、收藏、…

Selenium之css怎么实现元素定位?

世界上最远的距离大概就是明明看到一个页面元素站在那里&#xff0c;但是我却定位不到&#xff01;&#xff01; Selenium定位元素的方法有很多种&#xff0c;像是通过id、name、class_name、tag_name、link_text等等&#xff0c;但是这些方法局限性太大&#xff0c; 随着自动…

《华为认证》L2TP VPN配置

配置接口ip地址&#xff0c;并且将防火墙的接口加入对应的安全区域 。 LNS的G1/0/0 IP为202.1.1.1 1、配置LNS的缺省路由&#xff1a; ip route-static 0.0.0.0 0.0.0.0 202.1.1.2 2、通过WEB 界面配置防火墙的 L2TP VPN 浏览器输入&#xff1a; https://202.1.1.1:8443/def…