У моего маршрутизатора есть cli mode
и configure mode
, в cli mode
можно использовать команду edit
, введите configure mode
.
Paramiko не входит в режим настройки.
import paramiko
import sys
import subprocess
#
# we instantiate a new object referencing paramiko's SSHClient class
#
vm = paramiko.SSHClient()
vm.set_missing_host_key_policy(paramiko.AutoAddPolicy())
vm.connect('13.193.240.45', username='root', password='my_pwd')
#
vmtransport = vm.get_transport()
dest_addr = ('13.57.109.2', 22) #edited#
local_addr = ('13.193.240.45', 22) #edited#
vmchannel = vmtransport.open_channel("direct-tcpip", dest_addr, local_addr)
#
jhost = paramiko.SSHClient()
jhost.set_missing_host_key_policy(paramiko.AutoAddPolicy())
#jhost.load_host_keys('/home/osmanl/.ssh/known_hosts') #disabled#
jhost.connect('13.57.109.2', username='admin', password='pwd', sock=vmchannel)
#
stdin1, stdout1, stderr1 = jhost.exec_command('edit') # there should enter the configure mode.
print(stdout1.read())
print(stderr1.read())
stdin2, stdout2, stderr2 = jhost.exec_command("set interfaces ae16 unit 200 family inet address 1.1.1.14/29") # this command is only can be execute in the configure mode, but in there will report error. there only can execute the `cli mode commands`
#print (stdin2, stdout2.read(), stderr2)
print(stdout2.read())
print(stderr2.read())
stdin, stdout, stderr = jhost.exec_command('commit')
#
#print (stdin, stdout.read(), stderr)
#
jhost.close()
vm.close()
Почему paramiko
не может войти в режим настройки моего маршрутизатора?
Моя модель маршрутизатора Juniper MX480
.
Резюме:
Я хочу выполнить команду (edit
) для входа в режим настройки, но, похоже, контекст paramiko этого не сделал (не вошел в режим настройки), поэтому я не могу выполнить команды режима настройки.
Я имею в виду:
Маршрутизатор имеет режим cli, режим конфигурации, когда я выполняю редактирование, он должен войти в режим конфигурации, затем выполнить команды configuration mode, but I use paramiko execute the edit
, все еще могут выполнять только команды режима cli.
EDIT-01
Режим Cli:
{master}
JD@HK-MX-RE0>
режим настройки:
{master}[edit]
jd@HK-MX-RE0#
Когда я выполняю edit
или configure private
, чтобы войти в режим настройки:
jd@HK-MX-RE0> configure private
warning: uncommitted changes will be discarded on exit
Entering configuration mode
{master}[edit]
jd@HK-MX-RE0#