Информация
Настройка
Новости
Контакты
Новинка
Распродажа
Оплата
Доставка
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • Changelogs
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    RouterOS
    freedns.afraid.org Скрипт

    freedns.afraid.org Скрипт

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    freedns.afraid.org Скрипт, RouterOS
     
    kneuzgi
    Guest
    #1
    0
    04.04.2014 08:09:00
    Как микротик-роутер может автоматически обновлять публичный IP-адрес через скрипт? Я пользуюсь сервисом «freedns.afraid.org» (например, myprivatecomputer.chickenkiller.com). Думаю, что просто взять скрипт с «http://wiki.mikrotik.com/wiki/Dynamic_DNS_Update_Script_for_dynDNS» и заменить первые три строки — не получится? У меня роутер на версии v6.10. Спасибо за помощь!
     
     
     
    james442
    Guest
    #2
    0
    15.02.2016 07:54:00
    Я никогда не пользовался “freedns.afraid.org”. Я использую “no-ip.com” (домен “.biz”). Покажу свой скрипт.
     
     
     
    LESHIYODESSA
    Guest
    #3
    0
    11.09.2015 23:24:00
    Ура!!! Джошуа Андерсон добавил мой скрипт на официальный сайт. Произошло недоразумение — моё первое письмо до него не дошло. Джош — очень классный парень, а его сервис — самый крутой из всех Dynamic DNS.
     
     
     
    LESHIYODESSA
    Guest
    #4
    0
    16.09.2015 22:21:00
    Дополнения для скрипта

    Цвета сообщений в логе

    КРАСНЫЙ — сообщение об ошибке  
    («Service Dynamic DNS: старый IP-адрес $“dns-domain-ip” для $“dns-domain” ИЗМЕНЁН на → $“current-ip”»)

    СИНИЙ — предупреждение  
    («IP-адрес НЕ ИЗМЕНЁН, обновление не требуется»)
     
     
     
    Kuchkro01
    Guest
    #5
    0
    04.02.2016 07:19:00
    Я пользуюсь сервисом «freedns.afraid.org» (например, myprivatecomputer.chickenkiller.com).
     
     
     
    omnedon
    Guest
    #6
    0
    12.08.2014 23:01:00
    Я пытаюсь настроить и запустить скрипт из предыдущего поста от a.devecerski, но роутер почему-то не сохраняет этот скрипт. Постоянно выскакивает сообщение «Не удалось сохранить скрипт» и что-то про таймаут в 13 секунд. Несколько раз при попытке настроить скрипт меня выбрасывало на экран входа в систему. Моя цель — настроить портфорвардинг, но это мало поможет, если я не смогу зайти домой извне. Кто-нибудь может подробно объяснить, как это правильно сделать? Спасибо.
     
     
     
    LESHIYODESSA
    Guest
    #7
    0
    26.08.2014 10:37:00
    Привет! Извини, я не знаю английский, поэтому использую переводчик. Я написал свой собственный скрипт для freedns.afraid.org. Главное!!! Скрипт работает, если у вас несколько доменов.

    ############## Скрипт FreeDNS.afraid.org ##################
    ############## РЕДАКЦИЯ ПАРСЕРА ##################
    ############## СОЗДАН 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\?dedC0TirYibYdzBYnnhVRiJJb8Q6iDY1Mji3mQ=="

    # Укажите 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=62egb6606ci46cbe6eo8iga61de6ia101858a08­n"

    # Укажите ваш домен или поддомен.
    :global "dns-domain" "name.com"

    # Определите переменные для внешнего (WAN) интерфейса
    # Регистр важен.
    :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 ("Сервис Dynamic DNS: старый IP адрес $"dns-domain-ip" для $"dns-domain" ИЗМЕНЁН на -> $"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 адрес НЕ ИЗМЕНИЛСЯ, обновление не требуется")
    }

    # Начиная с версии RouterOS 6.0rc12 поддерживается шифрование /tool fetch mode=https
    # В :global "direct-url" нужно менять на https://
    # Для RouterOS версии 6.xx
    # /tool fetch mode=https url=$"direct-url"
    # :global "direct-url" "https://freedns.afraid.org/dynamic/update.php\?UVdjU2lzQmQwSkdjZW9aWkNleTdJdXFtOjg2NTI0NzE="

    # 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

    ############## Скрипт FreeDNS.afraid.org ##################

    Скрипт может не работать, если не выставить все политики в расписании /system scheduler
    add disabled=no interval=1m name=freedns.afraid.org on-event="/system script run freedns.afraid.org" policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api start-time=startup

    Дополнения для скрипта
    Цветные сообщения в лог:
    КРАСНЫЙ — лог ошибок (“Сервис Dynamic DNS: старый IP адрес $“dns-domain-ip” для $“dns-domain” ИЗМЕНЁН на → $“current-ip””)
    СИНИЙ — :log warning (“IP адрес НЕ ИЗМЕНЁН, обновление не требуется”)
     
     
     
    omnedon
    Guest
    #8
    0
    29.08.2014 20:34:00
    У меня возникли проблемы с загрузкой скриптов на роутер, у меня версия 5.26, и пока ничего не получилось. Веб-консоль для этого подходит, или лучше заходить по SSH (если да, то какой лучший способ редактировать)? Скрипт запускается при старте или по расписанию? Какие права доступа ему нужны? Всё остальное до этого момента было проще.
     
     
     
    LESHIYODESSA
    Guest
    #9
    0
    01.09.2014 09:17:00
    Используйте WinBox для создания скрипта. Нет необходимости запускать или отлаживать скрипт в консоли. Скрипт гарантированно работает при соблюдении условий: перед знаком "?" поставьте обратный слеш "\". Если версия RouterOS 5.xx, то из URL нужно убрать шифрование — измените “https” на “http”. Читайте комментарии в скрипте.

    /system scheduler add disabled=no interval=1m name=freedns.afraid.org on-event=“/system script run freedns.afraid.org” policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api start-time=startup
     
     
     
    jmsierra
    Guest
    #10
    0
    01.09.2014 22:04:00
    Спасибо, у меня всё отлично работает. WinBox v6.19 на RB951G-2HnD.
     
     
     
    omnedon
    Guest
    #11
    0
    06.09.2014 18:19:00
    Думаю, это и была проблема, с которой я столкнулся раньше. Сейчас, кажется, всё работает, но точно узнаю только после смены IP. Мне удалось зайти в веб-консоль — просто перетащил в поле «source» и отредактировал личные ссылки. На этот раз сохранилось без ошибок и, похоже, всё работает. Спасибо!
     
     
     
    seb364
    Guest
    #12
    0
    09.08.2015 20:11:00
    LESHIYODESSA: спасибо! Твой скрипт сработал отлично. Сначала я спешил и не обратил внимания на инструкции/комментарии; сегодня прочитал всё внимательно, внес нужные изменения — и всё заработало! Просто магия! Как всегда, читай чёртову инструкцию! Ещё раз спасибо! Кстати, этот скрипт не упоминается в справочниках mikrotik/agraid.org, было бы здорово, если бы его там добавили: «ПРИМЕЧАНИЕ: Если вы написали клиент или добавили поддержку afraid.org в свой продукт, пожалуйста, напишите мне, чтобы я мог добавить его в список поддерживаемых клиентов. dnsadmin@afraid.org»
     
     
     
    LESHIYODESSA
    Guest
    #13
    0
    10.08.2015 13:47:00
    Я уже писал на dnsadmin@afraid.org, но ответа так и не получил.
     
     
     
    SparcAsia
    Guest
    #14
    0
    10.06.2016 10:59:00
    Остальные у меня уже не работают. Я обновил предыдущий скрипт под свои нужды. Этот ниже теперь работает даже за другим роутером (DMZ)! Пожалуйста, не злоупотребляйте источником внешнего публичного IP, не запускайте скрипт постоянно. Это нужно просто, чтобы я мог найти адрес для администрирования, а не для публичного доступа, так что около 30+ минут для расписания — вполне достаточно. К тому же TTL для домена, который я использую на Afraid, — час (3600 секунд), так что обновлять чаще 30 минут смысла нет. Вам нужно задать свои afraidDomain и domainUpdateLink. Ссылка на обновление домена содержит уникальную зашифрованную строку для каждой записи. Она чуть скрыта в их относительно новой версии 2 (предпочтительный метод #1 — randomised update token) http://freedns.afraid.org/dynamic/v2/

    С этим скриптом, вероятно, можно использовать разные ссылки и/или провайдеров. Важно: основное отличие в том, что он определяет публичный IP через ICanHazIP.com, так что, если вы за другим роутером, всё равно будет работать. Поскольку для доступа через Dynamic DNS нужен именно публичный IP, важно проверить и зарегистрировать именно его.

    # Автор: MasterJames  
    # Дата: 2016:06:10  
    # Компания: SparcAsia Holdings Inc.

    :global afraidDomain "yourCustom.AfraidDomain.top"  
    :global domainUpdateLink "http://sync.afraid.org/u/CrypticV2UpdateStringFromAfraidOrg/"

    /tool fetch url="http://icanhazip.com/" dst-path="/whatsMyIP.txt";  
    :global pubIP [/file get whatsMyIP.txt contents]

    :for i from=( [:len $pubIP] - 1 ) to=0 do={
     :if ( [:pick $pubIP $i] = "\n") do={
       :global curIP [:pick $pubIP 0 $i];
       :if ([:resolve $afraidDomain] != $curIP) do={
         /tool fetch url="$domainUpdateLink" keep-result=no;  
         :log info "Afraid.org Update: $afraidDomain - $curIP";  
       } else={  
         :log info "Afraid.org: обновлять не нужно: $curIP";  
       }  
     }  
    }
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2025 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры