vetrov1 Posted April 26, 2014 плиз скрипт бы для микротика для версии 6.10 для DDNS https://freedns.afraid.org/ у кого есть буду благодарен Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
izuware Posted May 14, 2014 :local ddkey "RUxххххххххххххххххххххххy" /tool fetch keep-result=no url="http://freedns.afraid.org/dynamic/update.php\?$ddkey" Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
nukunuku Posted May 20, 2014 Вчера только настраивал! Надо ещё проверку смены ип делать, чтобы не долбить сервис напрямую слишком часто :global currentIP; :local newIP [/ip address get [find interface="интерфейс-с-инетом"] address]; :if ($newIP != $currentIP) \ do={ \ :set currentIP $newIP; \ :log info "ip address $currentIP changed to $newIP"; \ /system script run фетч-скрипт; \ } else={ \ :log info "No change of IP"; \ } Вот этот скрипт уже можно часто запускать. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
leshiy_odessa Posted September 6, 2014 (edited) Вот сделал скрипт. Самое главное, что он работает когда несколько доменов. Внимательно читаем комментарии. ############## Script FreeDNS.afraid.org ################## ############## PARSER EDITION ################## ############## CREATED LESHIY_ODESSA ################## # Указываем "Direct URL", который находится https://freedns.afraid.org/dynamic/ # Если версия RouterOS 5.xx, то убрать из URL шифрование - "https" поменять на "http". Так же смотри ниже. # Перед знаком "?" поставьте обратный слеш "\". :global "direct-url" "http://freedns.afraid.org/dynamic/update.php\?КVуjН2lzQmQwSkdkвW9atеNкeTdJаXFtOjg7NTО04zE=" # Указываем URL API "ASCII" # Войдите под своим аккаунтом и откройте страницу https://freedns.afraid.org/api/ # Затем скопируйте свой URL - Available API Interfaces : ASCII (!!! НЕ XML !!!) # ВНИМАНИЕ !!!! - Перед вопросительным знаком поставьте обратный слеш "\". # Если версия RouterOS 5.xx, то убрать из URL шифрование - "https" поменять на "http". :global "api-url" "http://freedns.afraid.org/api/\?action=getdyndns&sha=62ebн4404cd46сbe38eа8faк01be7dа101478a58b" # Указываем ваш домен или субдомен. :global "dns-domain" "name.com" # Задаем переменную для внешнего (WAN) интерфейса # при DUAL ACCESS указываем PPPoE (PPTP) интерфейс. Учитываем регистр букв. :global "out-interface" "pppoe" # !!!!!!!!!!!!!!!!! Больше ничего редактировать не нужно !!!!!!!!!!!!!!!!! # Проверяем есть ли файл с IP домена - freedns.txt :if ([:len [/file find name=freedns.txt]] > 0) do={ } else={ /tool fetch url=$"api-url" dst-path="/freedns.txt" } # Узнаем IP адрес домена с помощью API и парсинга. # Парсим файл :local "result" [/file get freedns.txt contents] :local "startloc" ([:find $"result" $"dns-domain"] + ([:len $"dns-domain"] + 1)) :local "endloc" ([:find $"result" $"direct-url" -1] -1) :global "dns-domain-ip" [:pick $"result" $"startloc" $"endloc"] # Узнаем текущий IP адрес на внешнем интерфейсе :global "current-ip" [/ip address get [find interface=$"out-interface"] address] # Из полученного IP адреса исключаем маску подсети :set "current-ip" [:pick $"current-ip" 0 ([:len $"current-ip"]-3) ] # Сравниваем внешний IP с IP адресом DNS домена. :if ($"current-ip" != $"dns-domain-ip") do={ # Если разные, то отправляем на freedns.afraid.org наш внешний IP с помощью Direct URL :log info ("Service Dynamic DNS: old IP address $"dns-domain-ip" for $"dns-domain" CHANGED to -> $"current-ip"") /tool fetch url=$"direct-url" keep-result=no # Скачиваем файл с новым IP через 5 сек. :delay 5 /tool fetch url=$"api-url" dst-path="/freedns.txt" } else={ # Чтобы не засорять лог можно/нужно закомментировать эту строку. :log info ("IP address is NOT CHANGED, the update is not required") } # Начиная с версии RouterOS version 6.0rc12 поддерживается шифрование /tool fetch mode=https # В :global "direct-url" нужно тоже изменить на https:// # Для версии RouterOS 6.xx # /tool fetch mode=https url=$"direct-url" # http://wiki.mikrotik.com/wiki/Manual:Scripting # http://wiki.mikrotik.com/wiki/Manual:Scripting-examples # http://wiki.mikrotik.com/wiki/Manual:Tools/Fetch # http://forum.ixbt.com/topic.cgi?id=14:60498-86#2373 ##############Script FreeDNS.afraid.org################## Edited September 8, 2014 by leshiy_odessa Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alex8031 Posted January 7, 2017 Вот сделал скрипт. Самое главное, что он работает когда несколько доменов. Внимательно читаем комментарии. ############## Script FreeDNS.afraid.org ################## ############## PARSER EDITION ################## ############## CREATED LESHIY_ODESSA ################## # Указываем "Direct URL", который находится https://freedns.afraid.org/dynamic/ # Если версия RouterOS 5.xx, то убрать из URL шифрование - "https" поменять на "http". Так же смотри ниже. # Перед знаком "?" поставьте обратный слеш "\". :global "direct-url" "http://freedns.afraid.org/dynamic/update.php\?КVуjН2lzQmQwSkdkвW9atеNкeTdJаXFtOjg7NTО04zE=" # Указываем URL API "ASCII" # Войдите под своим аккаунтом и откройте страницу https://freedns.afraid.org/api/ # Затем скопируйте свой URL - Available API Interfaces : ASCII (!!! НЕ XML !!!) # ВНИМАНИЕ !!!! - Перед вопросительным знаком поставьте обратный слеш "\". # Если версия RouterOS 5.xx, то убрать из URL шифрование - "https" поменять на "http". :global "api-url" "http://freedns.afraid.org/api/\?action=getdyndns&sha=62ebн4404cd46сbe38eа8faк01be7dа101478a58b" # Указываем ваш домен или субдомен. :global "dns-domain" "name.com" # Задаем переменную для внешнего (WAN) интерфейса # при DUAL ACCESS указываем PPPoE (PPTP) интерфейс. Учитываем регистр букв. :global "out-interface" "pppoe" # !!!!!!!!!!!!!!!!! Больше ничего редактировать не нужно !!!!!!!!!!!!!!!!! # Проверяем есть ли файл с IP домена - freedns.txt :if ([:len [/file find name=freedns.txt]] > 0) do={ } else={ /tool fetch url=$"api-url" dst-path="/freedns.txt" } # Узнаем IP адрес домена с помощью API и парсинга. # Парсим файл :local "result" [/file get freedns.txt contents] :local "startloc" ([:find $"result" $"dns-domain"] + ([:len $"dns-domain"] + 1)) :local "endloc" ([:find $"result" $"direct-url" -1] -1) :global "dns-domain-ip" [:pick $"result" $"startloc" $"endloc"] # Узнаем текущий IP адрес на внешнем интерфейсе :global "current-ip" [/ip address get [find interface=$"out-interface"] address] # Из полученного IP адреса исключаем маску подсети :set "current-ip" [:pick $"current-ip" 0 ([:len $"current-ip"]-3) ] # Сравниваем внешний IP с IP адресом DNS домена. :if ($"current-ip" != $"dns-domain-ip") do={ # Если разные, то отправляем на freedns.afraid.org наш внешний IP с помощью Direct URL :log info ("Service Dynamic DNS: old IP address $"dns-domain-ip" for $"dns-domain" CHANGED to -> $"current-ip"") /tool fetch url=$"direct-url" keep-result=no # Скачиваем файл с новым IP через 5 сек. :delay 5 /tool fetch url=$"api-url" dst-path="/freedns.txt" } else={ # Чтобы не засорять лог можно/нужно закомментировать эту строку. :log info ("IP address is NOT CHANGED, the update is not required") } # Начиная с версии RouterOS version 6.0rc12 поддерживается шифрование /tool fetch mode=https # В :global "direct-url" нужно тоже изменить на https:// # Для версии RouterOS 6.xx # /tool fetch mode=https url=$"direct-url" # http://wiki.mikrotik.com/wiki/Manual:Scripting # http://wiki.mikrotik.com/wiki/Manual:Scripting-examples # http://wiki.mikrotik.com/wiki/Manual:Tools/Fetch # http://forum.ixbt.com/topic.cgi?id=14:60498-86#2373 ##############Script FreeDNS.afraid.org################## Доброго времени суток всем!!! тут попытался разобраться с сервисом http://freedns.afraid.org/ так как no-ip.com хоть вроде бы пока как бы и бесплатный но с некоторого времени приходится обновлять свою учетку каждый месяц что не совсем удобно и поэтому решил посмотреть насчёт замены пробовал прикрутить к микротику вышеизложенный скрипт в результате некоторых танцев с бубном http://freedns.afraid.org/ схватил мои послания и всё бы хорошо но как то это разовые и нестабильные случаи и как сказано в описании что должно быть обязательно несколько доменов это критично для работы сервиса?? или только для скрипта?? Может есть ещё какие то идеи на этот счёт И стоит ли связываться с этим сервисом какой у них интервал обновления информации.... в доменной сети И может кто подскажет что нибудь другое что можно прикрутить к мкротику.... За ранее благодарен. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...