Jump to content

Прошу помощи по скриптам ROS v6.36

Всем доброго времени суток, гуру скриптинга прошу вас о помощи: стоит задача организовать оповещение на эл. почту при появлении нового адреса в Адрес листе. Адрес лист пополняется с помощью правила в firewall, тайм аут записи 60 мин. Необходимо что бы каждый раз при появлении в адрес листе новой записи, отправлять на почту оповещения с тем IP который появился. Я дилетант в скриптописании, но код скрипта для отправки на почту осилил, в других скриптах он работает. Интересует прежде всего основная идея скрипта (как опрашивать адрес лист на предмет новой записи, или можно как то другим путем получать эти значения). Заранее спасибо за ответы

Share this post


Link to post
Share on other sites

clever2v, если скрипт будет запускаться раз в 5 минут, то выбирать из адреслиста записи с оставшимся таймаутом >55m минут (добавленные менее 5 минут назад). Если скрипт раз в минуту - выбирать по таймауту >59m.

Затем слать оповещения как обычно.

Edited by nkusnetsov

Share this post


Link to post
Share on other sites

clever2v, если скрипт будет запускаться раз в 5 минут, то выбирать из адреслиста записи с оставшимся таймаутом >55m минут (добавленные менее 5 минут назад). Если скрипт раз в минуту - выбирать по таймауту >59m.

Затем слать оповещения как обычно.

 

Судя по англоязычной Вики в разделе ip/firewall/address lists доступны только два параметра "ADDRESS" и "LIST" с Ipшником и именем листа соответственно. Как скриптом забрать значение таймаута ума не приложу.

Share this post


Link to post
Share on other sites

clever2v, вот так читаем и выводим в консоль все таймауты из листа с именем "blacklist":

:foreach i in=[/ip fi address-list find list=blacklist] do={:put [/ip fi ad get $i timeout]}

Внутри {} стройте свою обработку на вкус.

Если явного таймаута не задано - вернется пустое значение.

Edited by nkusnetsov

Share this post


Link to post
Share on other sites

clever2v, вот так читаем и выводим в консоль все таймауты из листа с именем "blacklist":

:foreach i in=[/ip fi address-list find list=blacklist] do={:put [/ip fi ad get $i timeout]}

Внутри {} стройте свою обработку на вкус.

Если явного таймаута не задано - вернется пустое значение.

Спасибо!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.