Команды Read() Write() создают нежелательный идентификатор ресурса #9

Я пытаюсь запустить некоторые команды ping на сервере с командами read() и write(). Я использую phpseclib, подключенный к Net_ssh2, но когда я пытаюсь получить результаты и посмотреть, что происходит в эхе $this->ssh->getLog();

Вот ssh в роутер:

$this->ssh->write('ssh '.$this->userid.'@'.$this->testIPAddress);
$this->ssh->write("\n");
$this->ssh->read('Password:');      
$this->ssh->write($this->passwd);
$this->ssh->write("\n");
$this->ssh->read('Welcome');

Оттуда я получаю сообщение об успешном входе в этот маршрутизатор, поэтому я запускаю следующую команду ping:

 $this->ssh->write("ping 172.11.1.221");
 $this->ssh->write("\n");
 $testLineShowResult = $this->ssh->read('Type');

Вот что возвращает журнал:

<- NET_SSH2_MSG_CHANNEL_DATA (since last: 0.0005, network: 0.0001s)
00000000  00:00:00:01:00:00:00:01:35                       ........5

<- NET_SSH2_MSG_CHANNEL_DATA (since last: 0.0007, network: 0.0001s)
00000000  00:00:00:01:00:00:00:01:34                       ........4

<- NET_SSH2_MSG_CHANNEL_DATA (since last: 0.0022, network: 0.0001s)
00000000  00:00:00:01:00:00:00:02:0d:0a                    ..........

<- NET_SSH2_MSG_CHANNEL_DATA (since last: 0.0018, network: 0.0001s)
00000000  00:00:00:01:00:00:00:9c:52:65:73:6f:75:72:63:65  ........Resource
00000010  20:69:64:20:23:39:52:65:73:6f:75:72:63:65:20:69   id #9Resource i
00000020  64:20:23:39:52:65:73:6f:75:72:63:65:20:69:64:20  d #9Resource id 
00000030  23:39:52:65:73:6f:75:72:63:65:20:69:64:20:23:39  #9Resource id #9
00000040  52:65:73:6f:75:72:63:65:20:69:64:20:23:39:70:69  Resource id #9pi
00000050  6e:67:20:31:37:32:2e:31:20:20:20:5e:36:2e:31:2e  ng 172.1   ^6.1.
00000060  32:35:34:0d:0a:0d:0a:25:20:49:6e:76:61:6c:69:64  254....% Invalid
00000070  20:69:6e:70:75:74:20:64:65:74:65:63:74:65:64:20   input detected 
00000080  61:74:20:27:5e:27:20:6d:61:72:6b:65:72:2e:0d:0a  at '^' marker...
00000090  0d:0a:69:62:63:5f:34:35:37:39:33:30:30:39:30:37  ..ibc_4579300907
000000a0  5f:63:65:3e                                      _ce>

Как вы можете видеть, он выводит идентификатор ресурса # 9 несколько раз ... кто-нибудь знает, почему? Спасибо


person Community    schedule 22.07.2016    source источник


Ответы (1)


Я погуглил "обнаружен недопустимый ввод в маркере '^'" и нашел это:

https://learningnetwork.cisco.com/thread/28616

Цитируя это,

On the switch you are connected to, does the prompt look similar to this:

switch>

If so, we need to type in "enable" to go into privileged mode, where the prompt will look like this:

switch#
person neubert    schedule 24.07.2016
comment
Хм, я не думаю, что это так, потому что я могу без проблем запустить команду ping в шпаклевке с текущим режимом. Я считаю, что это как-то связано с Phpseclib... - person ; 27.07.2016
comment
@LeeBronwin - Что вы используете для своего маршрутизатора? Не могли бы вы опубликовать полные журналы SSH? Может быть, на pastebin.com или где-то еще? Ваш пост Resource id #9 повторяется четыре раза, а затем, похоже, пытается повторить команду. Это делает ping 172.1 ^6.1.254. Это почти как вторая 1 во втором октете заменяется на ^6. Что-то заставляет меня думать, что, возможно, отправляется какой-то символ, который выглядит как 1, но это не так. Это не повторение какого-либо символа, подобного этому, но, возможно, это не так ... и в вашем тексте сообщения SO нет такого символа, но, возможно, SO удалил его. - person neubert; 28.07.2016