一、网络编程与自动化概述
网络工程领域不断出现新的协议、技术、交付和运维模式。传统网络面临着云计算、人工智能等新连接需求的挑战。企业也在不断追求业务的敏捷、灵活和弹性。在这些背景下,网络自动化变得越来越重要。
网络编程与自动化旨在简化工程师网络配置、管理、监控和操作等相关工作,提高工程师部署和运维效率。
二、 python的安装
步骤1:安装python
步骤2:安装编译平台pycharm
三、实验一:python的基础运维
1、实验环境:SW1作为telnet服务器,现在需要使用python telnetlib作为telnet客户端登录此设备
2、实验拓扑:
3、实验步骤:
步骤1:使用虚拟网卡桥接ensp模拟器,并且配置虚拟网卡的ip为10.1.1.1。
步骤2:连接SW1和桥接的云,并且配置SW1的ip地址和telnet服务。
(1)配置ip地址
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname S1
[S1]interface Vlanif 1
[S1-Vlanif1]ip address 10.1.1.2 24
(2)在AAA试图模式下创建telnet使用的用户名和密码,并赋予权限
[S1]aaa
[S1-aaa]local-user huawei password cipher huawei123 //配置用户名为huawei,密码为huawei123的账户
Info: Add a new user.
[S1-aaa]local-user huawei service-type telnet //设置用户名为huawei的服务类型为telnet
[S1-aaa]local-user huawei privilege level 3 //设置用户名为huawei的权限为3
(3)设置认证类型为AAA
[S1]user-interface vty 0 4
[S1-ui-vty0-4]authentication-mode aaa //配置认证类型为AAA认证
步骤3:在python配置telnetlib
(1)新建python文件
(2)命名为huawei_telnet ,回车进入编译界面
(3)配置telnetlib
import telnetlib
#导入telnetlib模块
import time
#导入时间模块
huawei_ip='10.1.1.2'
#定义登录设备的ip
huawei_user='huawei'
#定义登录的用户名
huawei_pass='huawei123'
#定义登录的密码
huawei_telnet=telnetlib.Telnet(huawei_ip)
#使用telnet登录到设备,匹配变量huawei_ip,即登录10.1.1.2
huawei_telnet.read_until(b'Username:')
#读取回显信息为Username
huawei_telnet.write(huawei_user.encode('ascii')+b"\n")
#使用变量huawei_user输入用户名,\n代表输入后回车
huawei_telnet.read_until(b'Password:')
#读取回显信息为Password
huawei_telnet.write(huawei_pass.encode('ascii')+b"\n")
#使用变量huawei_pass输入密码,\n代表输入后回车
huawei_telnet.write(b'screen-length 0 temporary \n')
#写入命令screen-length 0 temporary关闭分屏功能,即当显示的信息超过一屏时,系统不会自动暂停
huawei_telnet.write(b'display cu \n')
#写入命令display cu,查看设备运行配置
time.sleep(1)
#等待1s
print(huawei_telnet.read_very_eager().decode('ascii'))
#读取telnet回显信息
huawei_telnet.close()
#关闭远程
(4)使用telnetlib登录设备
(5)查看运行结果
可以看到通过telnetlib登录了网络设备,并且查看对应的当前运行文件后退出telnet。