Распределение IP адресов между динамическими листами
-
- Сообщения: 3
- Зарегистрирован: 08 окт 2018, 06:27
Распределение IP адресов между динамическими листами
Здравствуйте, есть такая задача - имеется некоторое количество динамических листов с ip адресами например "1" лист - 6 адресов, "2" лист - 4 адреса и т.д суть проблемы в неравномерном распределении ip адресов между динамическими листами. Возможно ли с помощью скрипта сделать следующие: проверка количества ip адресов в листе - если оно не соответствует например количеству в 5 адресов, значит проверить если в следующем листе их меньше 5 - добавить лишний ip туда, ну и т.д вообщем проверить все листы и распределить между ними равномерно ip адреса. Помогите пожалуйста решить эту задачу.
-
- Сообщения: 4095
- Зарегистрирован: 29 фев 2016, 15:26
- Откуда: Минск
Re: Распределение IP адресов между динамическими листами
Приветствую. В первой строке заполнить список листов.
Код: Выделить всё
:local lists {"test1";"test2";"test3"};
/ip firewall address-list;
:local MoveOverloaded do={
:local num 0;
:foreach i in=[find dynamic list=$2] do={
:set num (num + 1);
:if ($num > $1) do={
add list=$3 address=[get $i address] timeout=[get $i timeout];
remove $i;
}
}
};
:local total 0;
:foreach v in=$lists do={
:set total ($total + [:len [find dynamic list=$v]]);
}
:local perList ($total / [:len $lists]);
:local prev;
:foreach v in=$lists do={
:if ([:typeof $prev] != "nothing") do={
$MoveOverloaded $perList $prev $v;
};
:set prev $v;
}
-
- Сообщения: 3
- Зарегистрирован: 08 окт 2018, 06:27
Re: Распределение IP адресов между динамическими листами
Спасибо Вам большое буду испытывать после отпишусь.
-
- Сообщения: 3
- Зарегистрирован: 08 окт 2018, 06:27
Re: Распределение IP адресов между динамическими листами
Все работает! Огромное человеческое спасибо!