每次程序执行命令需要先 telnet 进设备 然后再执行命令 整个过程需要 4 秒 时间有一些长
能否实现程序保留一个 telnet 界面在那里 当需要执行命令的时候 直接在保持的 telnet 界面里 打入命令 而节约 telnet 连接进设备的时间
1
jasontse 2016-03-28 08:52:36 +08:00 via iPad
看了 lz 的发帖记录,是要做个 Looking Glass ?
|
2
ChiChou 2016-03-28 09:30:50 +08:00
不现实。即使在后台维护一个活动的 telnet 会话, telnet 服务端会因为长时间没有交互而主动断开(除非不停的输入命令当“心跳”)
|
3
clino 2016-03-28 09:36:21 +08:00
这个是想要用 php 来实现吗?
|
6
shiji 2016-03-28 11:10:31 +08:00
我猜测:
用 swoole 那种东西在后台 php 像服务一样持续运行(并保持 telnet 的持续连接),每当有新的指令时,通过 web 服务器的提交命令给后台 swoole 执行。 swoole 像服务一样,会一直运行直到你停止它。 传送指令的那个可以是 PHP ,就是普通的 mod_php 或者 php-fpm ,从 web 请求开始运行到传送结束结束。 |
7
hrong 2016-03-28 11:21:08 +08:00 via Android
正确的做法是把那个命令公开为 web 服务,但一般人都不愿意折腾
其它答案见前面的回帖 |
9
ayouwei 2016-03-28 17:10:46 +08:00
改用 rsync 不好么?
|
11
ayouwei 2016-03-28 19:42:47 +08:00
@lylover
我理解成你是用 telnet 来上传 /下载文件, 如果是 telnet 执行操作,对于服务器完全可以放弃 telnet. 对于网络设备或其它,自动化处理 snmp 读 /netconf 写要用更普遍. |
12
xuboying 2016-03-28 20:14:35 +08:00 via Android
可以的,你用 Python 或者 perl 一类脚本语言的 telnet 模块连 server ,再监听一个端口,让真正的 telenet 客户端连,脚本做包转发,很容易
|