clever2v Posted January 9, 2017 · Report post Всем доброго времени суток, гуру скриптинга прошу вас о помощи: стоит задача организовать оповещение на эл. почту при появлении нового адреса в Адрес листе. Адрес лист пополняется с помощью правила в firewall, тайм аут записи 60 мин. Необходимо что бы каждый раз при появлении в адрес листе новой записи, отправлять на почту оповещения с тем IP который появился. Я дилетант в скриптописании, но код скрипта для отправки на почту осилил, в других скриптах он работает. Интересует прежде всего основная идея скрипта (как опрашивать адрес лист на предмет новой записи, или можно как то другим путем получать эти значения). Заранее спасибо за ответы Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
myth Posted January 9, 2017 · Report post А откуда он там берется? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
nkusnetsov Posted January 9, 2017 (edited) · Report post clever2v, если скрипт будет запускаться раз в 5 минут, то выбирать из адреслиста записи с оставшимся таймаутом >55m минут (добавленные менее 5 минут назад). Если скрипт раз в минуту - выбирать по таймауту >59m. Затем слать оповещения как обычно. Edited January 9, 2017 by nkusnetsov Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
clever2v Posted January 9, 2017 · Report post clever2v, если скрипт будет запускаться раз в 5 минут, то выбирать из адреслиста записи с оставшимся таймаутом >55m минут (добавленные менее 5 минут назад). Если скрипт раз в минуту - выбирать по таймауту >59m. Затем слать оповещения как обычно. Судя по англоязычной Вики в разделе ip/firewall/address lists доступны только два параметра "ADDRESS" и "LIST" с Ipшником и именем листа соответственно. Как скриптом забрать значение таймаута ума не приложу. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
nkusnetsov Posted January 9, 2017 (edited) · Report post clever2v, вот так читаем и выводим в консоль все таймауты из листа с именем "blacklist": :foreach i in=[/ip fi address-list find list=blacklist] do={:put [/ip fi ad get $i timeout]} Внутри {} стройте свою обработку на вкус. Если явного таймаута не задано - вернется пустое значение. Edited January 9, 2017 by nkusnetsov Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
clever2v Posted January 10, 2017 · Report post clever2v, вот так читаем и выводим в консоль все таймауты из листа с именем "blacklist": :foreach i in=[/ip fi address-list find list=blacklist] do={:put [/ip fi ad get $i timeout]} Внутри {} стройте свою обработку на вкус. Если явного таймаута не задано - вернется пустое значение. Спасибо! Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...