На помощь приходит небольшой скрипт erazel
Добавляем скрипт в System – Scripts , например с именем NAT Kyivstar
Вначале добавляем проброс портов, по обычной схеме
Chain: dstnat
Dst. Address: наш динамический IP (например от Киевстар Украина)
Dst. Port: 4899 – порт который будет доступен из интернет
Action: dst-nat
To Addresses: 192.168.0.20 – локальный ip внутренней сети Mikrotik
To Ports: 4899 – порт внутренней сети Mikrotik
После чего создаем комментарий записи: Comment: radmin
На каждую последующую запись делаем свой комментарий
После того как создали записи, добавляем скрипт в System – Scripts , например с именем NAT Kyivstar
Код:[Выделить]:global ddnsipold [ /ip firewall nat get [find comment="radmin"] dst-address] :global ddnsip [ /ip address get [find interface="ISP2"] address ] :for i from=( [:len $ddnsip] - 1) to=0 do={ :if ( [:pick $ddnsip $i] = "/") do={ :set ddnsip [:pick $ddnsip 0 $i]; } } :if ($ddnsipold != $ddnsip) do={ /ip firewall nat set [find dst-address=$ddnsipold] dst-address=$ddnsip; }
В отличии от 1го варианта, в этом скрипте мы сравниваем старый ip в записи с комментарием radmin и в случае если значение изменилось, меняем ip на новый адрес во всех записях где фигурировал старый ip.
Данный метод избавляет нас от необходимости создавать кучу записей с комментариями.