HCIA-Datacom实验指导手册:8 网络编程与自动化基础

本文介绍了使用Python的telnetlib库进行AR1设备的远程配置,包括登录、保存配置文件和通过Windows计划任务定时执行。实验内容涉及基础网络编程和自动化操作。
摘要由CSDN通过智能技术生成

一、实验介绍:

通过本实验,读者将掌握 Python telnetlib 库的常用方法。

二、实验拓扑:

在这里插入图片描述

三、实验目的:

1.编写ypthon文件使用python的telnetlib库登录AR1,并执行save和tftp上传配置文件到管理电脑。
2.使用windows的计划任务,每5分钟执行一次上面的python文件。

四、配置步骤:

步骤 1 完成交换机的 Telnet 预配置

[ar 1-aaa]di th
[V200R003C00]
#
aaa 
 local-user huawei password cipher %$%$AV.6:XB(fVje3N0:Ky_,,^';%$%$
 local-user huawei privilege level 15
 local-user huawei service-type telnet
#
return
[ar 1-aaa]  

[Huawei]telnet server enable 
Info: The Telnet server has been enabled.

user-interface vty 0 4
 authentication-mode aaa
 protocol inbound  telnet 

步骤 2 Python 代码编写

#导入 telnetlib和time库。
import telnetlib
import time
host = '192.168.30.100' #路由器的管理ip地址
username = 'huawei' #定义telnet账号
password = 'Huawei@123' #定义telnet密码
tn = telnetlib.Telnet(host) #登陆 host='192.168.56.101'的设备,然后将telnetlib.Telnet(host)赋值给 tn。
tn.read_until(b"Username:") #read_until方法表示:读到什么为止。这里表示读到显示Username:为止。b表示将 Python3 中默认的 unicode 编码变为 bytes。
tn.write(username.encode('ascii') + b'\n') #写入字符串’huawei'。username.encode('ascii') 表示转换 username 代表的字符串“huawei”的编码类型为 ASCII
tn.read_until(b"Password:")
tn.write(password.encode('ascii') + b"\n")
tn.write(b'save 123.cfg\ny\ny\ntftp 192.168.30.1 put 123.cfg 2222.cfg\n') #先使用save命令保持配置文件,然后输入第一个y确认,第二个y确认覆盖。最后使用tftp 192.168.30.1 put 123.cfg 2222.cfg上传配置文件到192.168.30.1。
time.sleep(3) #上传配置文件需要一定时间,这里设置程序等待3秒后再执行后面的命令。
tn.write(b'screen-length 0 temporary\n display cu \n') #
time.sleep(3)
print(tn.read_very_eager().decode('ascii')) #print()表示显示括号内的内容到控制台。tn.read_very_eager()表示读取当前的尽可能多的数据。. decode('ascii'))表示将读取的数据解码为 ASCII。
tn.close() #调用 close()关闭当前会话。设备 vty 连接数量有限,在执行完脚本后需要关闭此 telnet 会话。

五、结果验证

C:\ProgramData\anaconda3\python.exe C:\myrepository\HCIA实验\telnet登录设备并备份配置文件.py 
C:\myrepository\HCIA实验\telnet登录设备并备份配置文件.py:2: DeprecationWarning: 'telnetlib' is deprecated and slated for removal in Python 3.13
  import telnetlib

  -----------------------------------------------------------------------------     
  User last login information:     
  -----------------------------------------------------------------------------
  Access Type: Telnet      
  IP-Address : 192.168.30.1     
  Time       : 2024-03-02 21:54:55-08:00     
  -----------------------------------------------------------------------------
<ar 1>save 123.cfg
 Are you sure to save the configuration to 123.cfg? (y/n)[n]:y
 flash:/123.cfg exists, overwrite? (y/n)[n]:y
  It will take several minutes to save configuration file, please wait......
  Configuration file had been saved successfully
  Note: The configuration file will take effect after being activated
<ar 1>tftp 192.168.30.1 put 123.cfg 2222.cfg
Info: Transfer file in binary mode.
Uploading the file to the remote TFTP server. Please wait...

TFTP: Uploading the file successfully.
    1027 bytes send in 1 second.
<ar 1>screen-length 0 temporary
Info: The configuration takes effect on the current user terminal interface only.
<ar 1> display cu 
[V200R003C00]
#
 sysname ar 1
#
 snmp-agent local-engineid 800007DB03000000000000
 snmp-agent 
#
 clock timezone China-Standard-Time minus 08:00:00
#
portal local-server load portalpage.zip
#
 drop illegal-mac alarm
#
 set cpu-usage threshold 80 restore 75
#
aaa 
 authentication-scheme default
 authorization-scheme default
 accounting-scheme default
 domain default 
 domain default_admin 
 local-user admin password cipher %$%$K8m.Nt84DZ}e#<0`8bmE3Uw}%$%$
 local-user admin service-type http
 local-user huawei password cipher %$%$AV.6:XB(fVje3N0:Ky_,,^';%$%$
 local-user huawei privilege level 15
 local-user huawei service-type telnet
#
firewall zone Local
 priority 15
#
interface GigabitEthernet0/0/0
 ip address 192.168.30.100 255.255.255.0 
#
interface GigabitEthernet0/0/1
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
user-interface con 0
 authentication-mode password
user-interface vty 0 4
 authentication-mode aaa
user-interface vty 16 20
#
wlan ac
#
return
<ar 1>

Process finished with exit code 0

六、windows 计划任务程序配置

触发器:选择windows系统启动时开始计划任务。
在这里插入图片描述
操作:选择要定时执行的后缀为.py的python文件
在这里插入图片描述
最后确认时需要选择使用哪个windows账号和密码来执行。

七、 思考题与附加内容

  1. 如何使用 telnetlib 配置设备,例如配置设备管理接口地址?
    答:使用write(b’')写入相关的配置即可。
  2. 如何保存配置文件到本地目录?
    答:使用ftp、sftp、tftp都可以实现,上面我演示的是tftp。
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: HCIA-Datacom实验手册是一份为了帮助学习华为数据通信技术的人士进行实际动手实验而编写的指导手册手册内容主要由三部分构成:实验介绍、实验步骤以及实验教学。 实验介绍阐述了该实验的目的、背景、所需的实验现场以及实验环境说明,以及实验预期结果等。实验步骤是手册的重点,详细讲解了实验的具体步骤,包括了实验环境配置、测试设备连接、实验指令输入等等。实验教学则是对实验步骤进行深入剖析,特别针对实验重点以及难点进行重点解析,更好地帮助实验者掌握实验技能。 通过学习该实验手册,可以让学习者对数据通信的相关技术进行更深入和全面的掌握。实验手册提供了丰富的实验案例,使学习者能够更加直观的学习和理解相关知识。同时,实验手册的编写风格简洁明了,操作步骤详细,容易理解,让实验者能够快速上手,跟随实验手册完成实验,真正做到动手学习。 总之,HCIA-Datacom实验手册是一份优秀的实验指导手册,通过学习实验和实践操作,能够让实验者在数据通信技术的方方面面得到更好的提升和加强。 ### 回答2: HCIA-Datacom实验手册是一本专门为学习网络数据通信技术而编写的教材,内容包括数据通信基础网络协议分析、网络性能优化等方面的知识。本手册结合华为公司的技术实践和教学经验,详细介绍了网络数据通信的原理和实践操作。通过本手册,学习者可以熟悉网络的基本知识和原理,了解网络协议的基本架构和工作过程,并且能够掌握实际操作所需的关键技术。 本手册中的实验内容包括数据包的抓包和分析、网络拓扑结构的搭建、网络设备的配置和管理等,让学习者能够通过实际操作来深入理解网络技术。除此之外,本手册还提供了实验指导书、实验代码以及实验考核标准,保证了学习者能够全面掌握学习内容。 学习者在学习本手册时,需要具备一定的计算机网络基础知识,包括TCP/IP协议、路由协议、交换技术等,才能更好地理解和掌握本手册的内容。同时,学习者还需要具备一定的实际操作经验,了解基本的命令行操作和网络设备的配置方法。 总之,本手册是学习网络数据通信技术的必备参考资料,它的出现为我们提供了一条优秀的学习路径,让我们能够更好地理解和应用网络技术。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吕世亮被占用

你的鼓励将是我创造的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值