Тайм-аут перед записью пароля в TELNETLIB

Я пытаюсь подключиться к устройству через ip.

import telnetlib
deviceIp = '192.168.1.135'
password1='xxxxxx'
telnetConeection = telnetlib.Telnet(deviceIp,23)
telnetConeection.read_until(b'Password: ')
telnetConeection.write(password1.encode('ascii') + b"\n")
telnetConeection.write(b'\n')
telnetConeection.write(b'port\n')
print(telnetConeection.read_all())

Выход как: b'Timeout! \ N '

Ясно, что:-

  • соединение с устройством установлено
  • скрипт читает до "пароля"

Что мне не понятно, так это: почему пароль для записи не работает и происходит тайм-аут? Пожалуйста, помогите мне.

Любое предложение будет высоко оценено!

1 ответ

Я не думаю, что ответ так прост, как увеличение времени ожидания? Может быть, другой конец медленный?

timeout=30
telnetConeection.read_until(b'Password: ', timeout)

Кроме того, вы, вероятно, должны дважды проверить все, что другой конец посылает вам. Возможно, другой конец даже не посылает вам ничего (что может указывать на другую проблему). Похоже, вы проверили это и получили то, что ожидали.

ТАКЖЕ, Telnet.expect может дать вам больше информации о ваших ошибках (например, EOF? Ничего не найдено?)

Другие вопросы по тегам