Как получить таблицу MAC-адресов маршрутизатора Juniper с использованием PyEZ?Выдает ошибку при запуске - PullRequest
0 голосов
/ 04 декабря 2018

Я создал простой скрипт на python для получения таблицы mac vpls от маршрутизатора с помощью команды RPC.Hower это выдает ошибку при запуске.Кто-нибудь знает, что я делаю неправильно?

root @ ubuntu: ~ # cat vpls3.py

#!/usr/bin/python3
from jnpr.junos import Device
from lxml import etree
import jxmlease

username='lab'
password='lab'

dev = Device(host='10.85.164.172', user=username, password=password, normalize=True)

dev.open()
#invoke the RPC command
sw = dev.rpc.get-vpls-mac-table()
print(etree.tostring(sw, encoding='unicode'))

root @ ubuntu: ~ #

Ниже приведена ошибка:

root@ubuntu:~# python vpls3.py
Traceback (most recent call last):
  File "vpls3.py", line 13, in <module>
    sw = dev.rpc.get-vpls-mac-table()
NameError: name 'vpls' is not defined
root@ubuntu:~#

Я также попробовал следующий сценарий:

root @ ubuntu: ~ # cat test1.py

from jnpr.junos import Device
from lxml import etree

# Set device information with IP-address, login user and passwort
dev = Device( user='lab', host='10.85.164.172', password='lab')

# Connect to the device
dev.open()

# Get MACs
macs = dev.rpc.get-vpls-mac-table(normalize=True)

# Print response of device
print (etree.tostring(macs))

# Close the connection
dev.close()

Та же ошибка:

root @ ubuntu: ~ # python test1.py Traceback (последний вызов был последним): файл "test1.py", строка 11, в macs = dev.rpc.get-vpls-mac-table (normalize = True) NameError:имя 'vpls' не определено root @ ubuntu: ~ #

Ответы [ 2 ]

0 голосов
/ 04 декабря 2018

Спасибо!теперь он работает с sw = dev.rpc.get_vpls_mac_table ().

0 голосов
/ 04 декабря 2018

RPC JunOS переводятся в Pyez, используя подчеркивание:

измените его на:

sw = dev.rpc.get_vpls_mac_table ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...