Работа с глобальными переменными (для IPsec-соединений)
Добавлено: 04 апр 2014, 08:55
Добрый день,
Решаю задачу связки двух сайтов (на обоих концах "Микротики") по IPsec поверх Интернета. Публичные адреса на WAN'ах "Микротиков" могут меняться и, соответственно необходимо менять IP-адреса в /ip ipsec peer и /ip ipsec policy.
Для этого на два WAN'а прикрутил DDNS и теперь необходимо периодически проверять, не поменялся ли IP на этих DDNS'ах. Для этого пытаюсь сохранить старый IP в глобальной переменной, но ее значение почему-то не доступно изнутри скрипта. Делаю:
2. Затем создаю простой скрипт:
и запускаю его. Ожидается, что первый запуск покажет в логе "Variable 456", а второй "Variable test1". Но в логе ничего не видно. Где ошибка?
Решаю задачу связки двух сайтов (на обоих концах "Микротики") по IPsec поверх Интернета. Публичные адреса на WAN'ах "Микротиков" могут меняться и, соответственно необходимо менять IP-адреса в /ip ipsec peer и /ip ipsec policy.
Для этого на два WAN'а прикрутил DDNS и теперь необходимо периодически проверять, не поменялся ли IP на этих DDNS'ах. Для этого пытаюсь сохранить старый IP в глобальной переменной, но ее значение почему-то не доступно изнутри скрипта. Делаю:
Код: Выделить всё
1. из командной строки
> :global b;
> :set b "456"
> /system/script/environment/print
# NAME VALUE
0 b 456
2. Затем создаю простой скрипт:
Код: Выделить всё
:log info "Variable $b"
:set b "test1"
и запускаю его. Ожидается, что первый запуск покажет в логе "Variable 456", а второй "Variable test1". Но в логе ничего не видно. Где ошибка?