Продолжаю эту интереснейшую тему, вернее подниму ее в связи с поиском совета.
Прошу не пинать, желания у меня иногда странные и к действительности отношения имеют мало. Короче, в наши железки постоянно ломятся, чаще всего с адресов, закрепленных за родным нашим, не побоюсь этого слова, Китаем. У меня есть скрипт, который заносит очень настойчивых в черный список на несколько дней, но потом все начинается сначала. И вот я подумал, а зачем мне вообще эти китайские адреса в диапазоне доступа на роутер. Ну запрет на цепочку input для адрес-листа написать не составляет труда никому, а вот занести большинство этих адресов в список, это уже интереснее. Но их там... почти 5 тысяч
http://www.ipdeny.com/ipblocks/data/countries/cn.zone Вот я и подумал, а как бы автоматизировать сей процесс. Наваял наскоро несколько строк:
Код: Выделить всё
{
:local con [/file get [/file find name=list3.txt] contents];
:local conlen [:len $con];
:local linelen1 0;
:local linelen2 "";
:local linelen3 0;
:do {
:set linelen1 [:find $con "\r\n" $linelen3];
:set linelen2 [:pick $con $linelen3 $linelen1];
:set linelen3 ($linelen1 + 2);
:if ($linelen2 != "") do={
/ip firewall address-list add address=$linelen2 list="ChinaIP";
}
} while ($linelen1 < $conlen)
}
Больше 249 строк не обрабатывает, зараза, но я так подозреваю, что это пресловутое ограничение на файл не более 4 кб размером. Это фиг бы с ним, я и по 200 строк за раз бы обрабатывал, мне хватит, но есть несколько моментов, которые сегодня мне не дались и мне активно не нравяться.
* раз файлов со списками будет несколько, то хотелось бы прикрутить строчку, которая бы искала в подобных именах ( list1.txt, list2.txt, list3.txt...) те, которые еще не обработаны и запускала в обработку.
* там у меня ищутся знаки перевода каретки и начала новой строки "\r\n" . Так вот если в последней строке этих знаков нет, то последний адрес не заносит в списки. Как бы мне и с этим разобраться.
Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...