乾颐堂 现任明教教主 网络设备自动化高级封装
qyt_devnet是我做的一个简单的华为自动化项目, 可以直接pip install qyt_devnet使用, 如果大家觉得好我可以维护更新这个项目, 加入更多华为设备的支持! 其实非华为的设备用netmiko就好了! 由于华为不受人待见,大家都不支持, 只有自己搞一个了
Python3
乾颐堂 现任明教教主 YouTube首页
pip3 install qyt_devnet
# SNMP
# 华为
from qyt_devnet.qyt_snmp import QYTHuaweiSNMP
# 思科
from qyt_devnet.qyt_cisco_snmp import QYTCiscoSNMP
r1 = '192.168.1.151'
community_ro = "QytangR0"
# 华为
snmp_client = QYTHuaweiSNMP(r1, community_ro)
# 思科
snmp_client = QYTCiscoSNMP(r1, community_ro)
# 系统描述
print(snmp_client.sys_desc())
# 主机名
print(snmp_client.hostname())
# 地点
print(snmp_client.location())
# CPU利用率
print(snmp_client.cpu_usage())
# 内存利用率
print(snmp_client.mem_usage())
# 接口清单
print(snmp_client.get_ifs())
# 接口速率
print(snmp_client.get_if_speed())
# 接口入向字节数
print(snmp_client.get_if_in_bytes())
# 接口出向字节数
print(snmp_client.get_if_out_bytes())
# SSH
username = 'admin'
password = 'Cisc0123'
from qyt_devnet.qyt_cmd import QYTHuaweiSSH
client1 = QYTHuaweiSSH(hostname=r1, username=username, password=password)
# 查看display current
print(client1.dis_cur())
# 配置OSPF
c_cmds_1 = ['sysname AR1',
'interface LoopBack 0',
'ip address 1.1.1.1 32',
'interface GigabitEthernet 0/0/2',
'ip address 10.1.1.1 24',
'ospf 1 router-id 1.1.1.1',
'area 0.0.0.0',
'network 10.1.1.0 0.0.0.255',
'network 1.1.1.1 0.0.0.0'
]
c_cmds_2 = ['sysname AR2',
'interface LoopBack 0',
'ip address 2.2.2.2 32',
'interface GigabitEthernet 0/0/2',
'ip address 10.1.1.2 24',
'ospf 1 router-id 2.2.2.2',
'area 0.0.0.0',
'network 10.1.1.0 0.0.0.255',
'network 2.2.2.2 0.0.0.0'
]
client1.config(c_cmds_1, verbose=True)
client2.config(c_cmds_2, verbose=True)
# 配置SNMP
snmp_cmds = ['snmp-agent sys-info version v2c',
'snmp-agent sys-info contact collinsctk',
'snmp-agent sys-info location beijing_qyt',
'snmp-agent community read QytangR0'
]
client1.config(snmp_cmds.copy(), verbose=True)
client2.config(snmp_cmds.copy(), verbose=True)
# 其他查看内容
for r in client1.display(['display ospf peer', 'dis ver']):
print(r)