Добрый день. Я вчера открыл для себя возможность использования скриптов в Mikrotik :)
Есть пять-шесть интерфейсов с именами «l2tp-*», которые отвечают за VPN-подключение к различным серверам.
Мне бы хотелось иметь постоянное подключение к VPN, в которое будут направляться пакеты. Но соединение не может держаться бесконечно при отсутствии данных, и через час-два соединение обычно разрывается (потому что ночью канал неактивен). Подскажите, как реализовать отключение единственного включённого, после случайный выбор из числа существующих интерфейсов одного, и его включение? Поставлю такое на каждые полтора часа, например.
Помощь с написанием скрипта — случайный выбор из числа интерфейсов
Правила форума
Уважаемые Пользователи форума, обратите внимание!
Ни при каких обстоятельствах, Администрация форума, не несёт ответственности за какой-либо, прямой или косвенный, ущерб причиненный в результате использования материалов, взятых на этом Сайте или на любом другом сайте, на который имеется гиперссылка с данного Сайта. Возникновение неисправностей, потерю программ или данных в Ваших устройствах, даже если Администрация будет явно поставлена в известность о возможности такого ущерба.
Просим Вас быть предельно осторожными и внимательными, в использовании материалов раздела. Учитывать не только Ваши пожелания, но и границы возможностей вашего оборудования.
Уважаемые Пользователи форума, обратите внимание!
Ни при каких обстоятельствах, Администрация форума, не несёт ответственности за какой-либо, прямой или косвенный, ущерб причиненный в результате использования материалов, взятых на этом Сайте или на любом другом сайте, на который имеется гиперссылка с данного Сайта. Возникновение неисправностей, потерю программ или данных в Ваших устройствах, даже если Администрация будет явно поставлена в известность о возможности такого ущерба.
Просим Вас быть предельно осторожными и внимательными, в использовании материалов раздела. Учитывать не только Ваши пожелания, но и границы возможностей вашего оборудования.
-
- Сообщения: 4204
- Зарегистрирован: 25 фев 2018, 22:41
- Откуда: Москва
А не проще держать соединение поднятым, например пингуя что-нибудь раз в несколько минут? :)
Telegram: @thexvo
-
- Сообщения: 2
- Зарегистрирован: 29 июн 2019, 14:27
Мне хотелось бы увидеть подсказку, как это скриптовать, а не изменение формулировки задачи.
-
- Сообщения: 184
- Зарегистрирован: 13 окт 2018, 20:53
- Откуда: Беларусь
Если это Академический интерес- то Вам нужно обращаться на курсы Mikrotik, а если реальная практическая задача - то Вам подсказали более простое и изящное решение...
RB3011UiAS x 1
RB4011iGS+5HacQ2HnD x 3
951Ui-2nD x 2
hAP ac^2 x 24
CheckPoint 1590 x 1
RB4011iGS+5HacQ2HnD x 3
951Ui-2nD x 2
hAP ac^2 x 24
CheckPoint 1590 x 1
- podarok66
- Модератор
- Сообщения: 4355
- Зарегистрирован: 11 фев 2012, 18:49
- Откуда: МО
Ну что вы в самом деле. Генератор случайного числа в заданных параметрах на Микротике написать достаточно сложно. Но если пользоваться интернетом, то вполне можно организовать свой рандомайзер очень даже просто и не затратно в смысле ресурсов. Вот вам пример получения рандомного числа в отрезке от 1 до 6 :
Но на случай потери канала придётся придумывать ещё какой-то способ переключить канал. Но я бы настолько жестоко заморачивался бы лишь при крайней необходимости
Если есть свой сервер на , тогда генерация порядка срабатывания интерфейсов на python может выглядеть так:
Код: Выделить всё
{
:global RandomOrg "";
/tool fetch url="https://www.random.org/integers/\?num=1&min=1&max=6&col=1&base=10&format=plain&rnd=new" keep-result=yes dst-path="pass.txt";
delay 3;
:global RandomOrg [/file get pass.txt contents];
/file remove pass.txt;
:put $RandomOrg
}
Если есть свой сервер на , тогда генерация порядка срабатывания интерфейсов на python может выглядеть так:
Код: Выделить всё
import random
print random.sample(range(1, 7), 6)
Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...