VRF ping

Мониторинг сети
reddevil
Сообщения: 4
Зарегистрирован: 03 апр 2017, 14:36

VRF ping

Сообщение reddevil »

Добрый день!
Друзья, а известны ли Вам какие-нибудь методы мониторинга разных VRF в Dude?
Аватара пользователя
Chupaka
Сообщения: 4086
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск

Re: VRF ping

Сообщение Chupaka »

Добрый.

Навскидку придумывается только создание функции Probe, которая будет запускать /ping в нужной Routing Table
reddevil
Сообщения: 4
Зарегистрирован: 03 апр 2017, 14:36

Re: VRF ping

Сообщение reddevil »

Где-то можно почитать про использование функции ping в Dude (google не дал результатов)?
Аватара пользователя
Chupaka
Сообщения: 4086
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск

Re: VRF ping

Сообщение Chupaka »

https://forum.mikrotik.com/viewtopic.php?f=8&t=12402

Видимо, в Available надо впихнуть что-то вроде

Код: Выделить всё

ros_command(concatenate("/ping routing-table=VRF1 ", device_property("FirstAddress"))) >= 0
reddevil
Сообщения: 4
Зарегистрирован: 03 апр 2017, 14:36

Re: VRF ping

Сообщение reddevil »

Почти получилось, но если можно, еще немного помощи (проблема с синтаксисом).

Получился вот такой код:

Код: Выделить всё

concatenate(string_substring(ros_command("/ping count=3 routing-table=main 8.8.8.8"),string_find(ros_command("/ping count=3 routing-table=main 8.8.8.8"),"received=")+9,1)=3,"","")
Не получается вставить переменную device_property("FirstAddress") error так и так :(
Аватара пользователя
Chupaka
Сообщения: 4086
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск

Re: VRF ping

Сообщение Chupaka »

"Так и так" - как и как? Я не вижу у вас в примере device_property.

Как вы посмотрели, что возвращает ros_command? У меня было предположение, что там должно быть просто количество ответов на пинг...
reddevil
Сообщения: 4
Зарегистрирован: 03 апр 2017, 14:36

Re: VRF ping

Сообщение reddevil »

Проверяю достаточно просто, возможно, есть более прямые методы, но мне они не известны:)
Вставляю код в Appearance, далее смотрю на выдачу.

Не работает

Код: Выделить всё

concatenate(string_substring(ros_command("/ping count=3 routing-table=main device_property("FirstAddress")"),string_find(ros_command("/ping count=3 routing-table=main device_property("FirstAddress")"),"received=")+9,1)=3,"","")
Не работает

Код: Выделить всё

concatenate(string_substring(ros_command("/ping count=3 routing-table=main", "device_property("FirstAddress")"),string_find(ros_command("/ping count=3 routing-table=main", "device_property("FirstAddress")"),"received=")+9,1)=3,"","")
Не работает

Код: Выделить всё

concatenate(string_substring(ros_command("/ping count=3 routing-table=main", device_property("FirstAddress")),string_find(ros_command("/ping count=3 routing-table=main", device_property("FirstAddress")),"received=")+9,1)=3,"","")
Аватара пользователя
Chupaka
Сообщения: 4086
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск

Re: VRF ping

Сообщение Chupaka »

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

По вашим командам: не работает, потому что перед передачей в ros_command строки надо объединить:

Код: Выделить всё

ros_command(concatenate("/ping count=3 routing-table=main ", device_property("FirstAddress")))