【发布时间】:2015-09-29 11:36:25
【问题描述】:
我最熟悉 powershell 和 python,因此使用它们中的任何一个的解决方案都是理想的。
所以我遇到了这样一种情况,带有串行到以太网适配器的旧设备重新启动并从我们的网络中掉线。我用交叉电缆连接并使用wireshark找到它的IP并最终看到一个arp req(206.250.11.x - 显然不是以前设置的)端口扫描给了我几个选项,一个拉起telnet提示我正在寻找。
我能够连接并尝试了我们的默认密码 - 连接后提示输入 4 位密码 - 但没有任何效果。
我想编写一个 python 脚本来启动会话,等待一秒钟,输入第一个 pin:0000 看看它是否显示“与主机的连接丢失”。如果没有,请报告它使用了哪个引脚。
我有一个使用 subprocess.Popen 编写的 ping 程序,我认为我可以调整它以启动 telnet 会话:
telneter = subprocess.Popen(["telnet", 主机名, "9999"], stdout=subprocess.PIPE).stdout.read() 我还看到有某种可以导入的 python telnet 模块。
如果我有一个名为“pins.txt”的文件,该文件包含 0000-9999,每行一个条目,我该如何最好地执行以下操作:
1) 启动 Telnet 到地址/端口 2) 等到它提示输入 pin(通常不到一秒) 3) 输入 pins.txt 文件的第一行 4) 检查会话是否结束并打印“与主机的连接丢失” 5) 报告哪个 pin 没有失败并且会话保持活动状态?
非常感谢您的帮助!我会做更多的工作,但我们希望尽快启动并运行它,所以我还没有做足够的研究。
编辑:我试图连接另一侧的 25 针串行转换器,但被适配器拔出,因此不再是一个选项。
Edit2:我也尝试过将 telnetlib 与 telnetlib.Telnet(host) 一起使用,但我无法取回数据流,也无法重新启动会话以遍历 pin 列表。
【问题讨论】:
标签: python powershell scripting telnet