我正在尝试使用 python telnetlib 库连接到我使用 VMWARE pro 安装在我的机器上的虚拟路由器。我能够通过其 G0/2 接口 ip 地址 10.2.162.206.
ping 虚拟路由器当我运行旨在连接到虚拟路由器的脚本并运行“显示用户”命令时,我什么也没得到,然后在几分钟后终止连接。
import getpass
import telnetlib
HOST = "10.2.162.206"
user = 'Cisco1'
password = 'class1'
def show_users_telnet():
'''Return logged in users'''
tn = telnetlib.Telnet(HOST)
tn.read_until(b"Username: ")
tn.write(user.encode('ascii') + b"\n")
tn.read_until(b"Password: ")
tn.write(password.encode('ascii') + b"\n")
tn.read_until(b'#')
tn.write(b'show users\n')
stdout = tn.read_until(b'#').decode('utf-8')
print(stdout)
show_users_telnet()
我还附上了我可以 ping 通的虚拟路由器接口的屏幕截图。
这是 vscode 的输出
回溯(最后一次通话): 文件“C:\Users\xxxxxx\OneDrive - xxxx xxx\Documents\Universidad\AdmindeRedes elnet-1.py”,第 25 行,位于 show_users_telnet() 文件“C:\Users\xxxxxx\OneDrive - xxxx xxx\Documents\Universidad\AdmindeRedes elnet-1.py”,第 19 行,在 show_users_telnet 中 3568.0_x64__qbz5n2kfra8p0\lib elnetlib.py”,第 315 行,在 read_until 如果选择器选择(超时):文件“C:\ (self._readers,self._writers,[],超时)文件“C:\ , x = select.select(r, w, w, 超时) 键盘中断