Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • 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
    Обновление No-IP и DNSdynamic

    Обновление No-IP и DNSdynamic

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Обновление No-IP и DNSdynamic, RouterOS
     
    Shlyahov
    Guest
    #1
    0
    03.04.2017 16:19:00
    Отличный рабочий скрипт для обновления DDNS NO-IP совместно с DNSdynamic Services. Отладка и проверка проведены. Сделано из-за ненадёжности долгосрочной работы без подтверждения на сервисе NO-IP. Извиняюсь за мой плохой английский. #No-IP #DNSdynamic update

    #--------------- Измените значения в этом разделе под вашу конфигурацию ------------------

    #Информация об учётной записи пользователя
    :local noipuser "NO-IP_User_Name"
    :local noippass "NO-IP_password"
    :local dnsdynamicuser "DNSdynamic_User_Name"
    :local dnsdynamicpass "DNSdynamic_password"
    :local noiphost "NO-IP_host"
    :local dnsdynamichost "DNSdynamic_host"

    # Укажите название интерфейса, который получает динамический IP-адрес
    :local inetinterface "Internet_Interface_Name"

    #------------------- Больше изменений не требуется --------------------------------------

    :global previousIP

    :if ([/interface get $inetinterface value-name=running]) do={
    # Получаем текущий IP на интерфейсе
      :local currentIP [/ip address get [find interface="$inetinterface" disabled=no] address]

    # Отрезаем маску подсети от IP-адреса
      :for i from=( [:len $currentIP] - 1) to=0 do={
          :if ( [:pick $currentIP $i] = "/") do={
              :set currentIP [:pick $currentIP 0 $i]
          }
      }

      :if ($currentIP != $previousIP) do={
          :log info "IP: Текущий IP $currentIP не равен предыдущему IP, требуется обновление"
          :set previousIP $currentIP

    # URL обновления No-Ip. Обратите внимание, что "\3F" — это шестнадцатеричный код знака вопроса (?), он нужен, так как ? — специальный символ в командах.
          :local url "http://dynupdate.no-ip.com/nic/update\3Fmyip=$currentIP"
          :local noiphostarray
          :set noiphostarray [:toarray $noiphost]
          :foreach host in=$noiphostarray do={
              :log info "No-IP: Отправка обновления для $host"
              /tool fetch url=($url . "&hostname=$host") user=$noipuser password=$noippass mode=http dst-path=("no-ip_ddns_update-" . $host . ".txt")
              :log info "No-IP: Хост $host обновлён на No-IP с IP $currentIP"
          }

    # URL обновления dnsdynamic. Обратите внимание, что "\3F" — это шестнадцатеричный код знака вопроса (?), он нужен, так как ? — специальный символ в командах.
          :local url "https://www.dnsdynamic.org/nic/nic/update\3Fmyip=$currentIP"
          :local dnsdynamichostarray
          :set dnsdynamichostarray [:toarray $dnsdynamichost]
          :foreach host in=$dnsdynamichostarray do={
              :log info "dnsdynamic: Отправка обновления для $host"
              /tool fetch url=($url . "&hostname=$host") user=$dnsdynamicuser password=$dnsdynamicpass mode=http dst-path=("dnsdynamic_ddns_update-" . $host . ".txt")
              :log info "dnsdynamic: Хост $host обновлён на dnsdynamic с IP $currentIP"
          }
      } else={
          :log info "IP: Предыдущий IP $previousIP равен текущему IP, обновление не требуется"
      }
    } else={
      :log info "IP: Интерфейс $inetinterface сейчас не активен, обновление не выполняется."
    }
     
     
     
    saintofinternet
    Guest
    #2
    0
    22.12.2017 02:01:00
    Это был тот же самый, который я использовал до обновления routeros. После обновления он перестал работать.
     
     
     
    ahmedalmi
    Guest
    #3
    0
    14.05.2017 01:17:00
    включите облачный DDNS или используйте эту команду /ip cloud set ddns-enabled=yes, затем попробуйте этот скрипт:

    {  
    :local noipuser "your@email.com"  
    :local noippass "yourpassword"  
    :local noiphost "yourname.ddns.net"  
    :local inetinterface "yourinterface"  
    :global previousIP;

    :if ([/interface get $inetinterface value-name=running]) do={
       :local currentIP [/ip cloud get public-address];
       :for i from=( [:len $currentIP] - 1) to=0 do={
           :if ( [:pick $currentIP $i] = "/") do={
               :set currentIP [:pick $currentIP 0 $i]
           }  
       }  
       :if ($currentIP != $previousIP) do={  
           :log info "No-IP: Текущий IP $currentIP не совпадает с предыдущим, нужно обновление"  
           :set previousIP $currentIP  
           :local url "http://dynupdate.no-ip.com/nic/update?myip=$currentIP"  
           :local noiphostarray  
           :set noiphostarray [:toarray $noiphost]
           :foreach host in=$noiphostarray do={  
               :log info "No-IP: Отправляю обновление для $host"  
               /tool fetch url=($url . "&hostname=$host") user=$noipuser password=$noippass mode=http dst-path=("no-ip_ddns_update-" . $host . ".txt")  
               :log info "No-IP: Хост $host обновлён на No-IP с IP $currentIP"  
           }  
       } else={  
           :log info "No-IP: Предыдущий IP $previousIP совпадает с текущим, обновление не нужно"  
       }  
    } else={  
       :log info "No-IP: Интерфейс $inetinterface сейчас не работает, обновление не производится."  
    }  
    }
     
     
     
    qbek
    Guest
    #4
    0
    15.05.2017 07:38:00
    Спасибо, но я сейчас использую freedns.afraid.org.
     
     
     
    saintofinternet
    Guest
    #5
    0
    05.06.2017 16:44:00
    Версия 6.38.3 совсем не работает со скриптами для No-IP... Кто-нибудь может помочь, пожалуйста?
     
     
     
    sam2030
    Guest
    #6
    0
    21.12.2017 19:53:00
    попробуй это https://wiki.mikrotik.com/wiki/Dynamic_DNS_Update_Script_for_No-IP_DNS
     
     
     
    ErfanDL
    Guest
    #7
    0
    22.12.2017 07:09:00
    Привет, попробуй этот скрипт, он работает на версиях 6.40.x и 6.41.x RC  
    # Автоматическое обновление Dynamic DNS для No-IP

    :local noipuser "username"  
    :local noippass "password"  
    :local noiphost "hostname-kamu.ddns.net"  
    :local inetinterface "ether-inet"  

    :global currentIP  
    :global previousIP  

    :if ([/interface get $inetinterface value-name=running]) do={
    :local currentIP [/ip address get [find interface="$inetinterface" disabled=no] address]
    :for i from=( [:len $currentIP] - 1) to=0 do={
     :if ( [:pick $currentIP $i] = "/") do={
      :set currentIP [:pick $currentIP 0 $i]
     }  
    }  

    :if ($currentIP != $previousIP) do={  
     :log info "No-IP Updater: Текущий IP-адрес $currentIP не совпадает с предыдущим, требуется обновление"  
     :set previousIP $currentIP  

     :local url "http://dynupdate.no-ip.com/nic/update\3Fmyip=$currentIP"  
     :local noiphostarray  
     :set noiphostarray [:toarray $noiphost]
     :foreach host in=$noiphostarray do={  
      :log info "No-IP Updater: Отправка обновления для $host"  
      /tool fetch url=($url . "&hostname=$host") user=$noipuser password=$noippass mode=http dst-path=("no-ip_ddns_update-" . $host . ".txt")  
      :log info "No-IP Updater: Запрос на обновление отправлен. Имя хоста $host будет обновлено с IP $currentIP"  
     }  
    } else={  
     :log info "No-IP Updater: Предыдущий IP-адрес $previousIP совпадает с текущим, обновление не требуется"  
    }  
    } else={  
    :log info "No-IP Updater: Интерфейс $inetinterface сейчас не активен, обновление не будет выполнено"  
    }
     
     
     
    linhchivas
    Guest
    #8
    0
    29.12.2017 11:07:00
    У меня проблема с версией 6.36. В логе написано: «No-IP Updater: Previous IP address 42.x.x.x is equal to current IP, no update needed». Но я проверяю на noip, и там IP совсем не обновляется. Пожалуйста, помогите.
     
     
     
    ortegaav
    Guest
    #9
    0
    18.11.2020 11:55:00
    Это новый скрипт, который работает на версии 6.46.8 System/Script/Add Name: «Update_NOIP» или любое другое имя по вашему желанию Policy: check - Не требовать прав -read -write -test ##############Настройки скрипта##################

    :local NOIPUser "your_no-ip_user"  
    :local NOIPPass "your_no-ip_pass"  
    :local WANInter "your_external_interface"  
    :local NOIPDomain "hostname.no-ip.net"

    ###############################################

    # Получаем текущий IP на интерфейсе  
    :local currentIP [/ip address get [find interface="$WANInter" disabled=no] address]

    # Отрезаем маску подсети у IP-адреса  
    :for i from=( [:len $currentIP] - 1) to=0 do={
       :if ( [:pick $currentIP $i] = "/") do={
           :set currentIP [:pick $currentIP 0 $i]
       }  
    }

    :if ([:resolve $NOIPDomain] != $currentIP) do={
       /tool fetch mode=http user=$NOIPUser password=$NOIPPass url="http://dynupdate.no-ip.com/nic/update\3Fhostname=$NOIPDomain&myip=$currentIP" keep-result=no  
       :log info "NO-IP Update: $NOIPDomain - $currentIP"  
    }  

    System/Scheduler/Add Name: любое имя по вашему желанию Start Date: «Oct/30/2020» например Start Time: «00:00:00» например Interval: «00:00:10» или любое другое по вашему желанию Policy: check -read -write -test On Event: «Update_NOIP» или имя, которое вы дали скрипту
     
     
     
    leduycuong12345
    Guest
    #10
    0
    30.09.2023 06:30:00
    Ответ ortegaav по-прежнему работает безупречно. Проверено на routerboard rb750gr3 с версией 6.49.7. Спасибо, ребята.
     
     
     
    pockybum522
    Guest
    #11
    0
    16.01.2024 19:59:00
    Отлично сработало и у меня на RB4011iGS+ с RouterOS 7.13.1, спасибо.
     
     
     
    spamdog
    Guest
    #12
    0
    08.02.2024 16:11:00
    С декабря 2023 года этот скрипт у меня не работает. Устройство: RB4011iGS+5HacQ2HnD. Но начиная с версии v7.13.4 у меня в логе появилась такая строка:  
     
    Настройки скрипта такие:  
     
     
     
    Amm0
    Guest
    #13
    0
    08.02.2024 16:46:00
    Может попробовать добавить политику «ftp».
     
     
     
    spamdog
    Guest
    #14
    0
    23.02.2024 10:17:00
    Amm0, спасибо, всё работает. (Но почему ftp — именно такое название, а?)
     
     
     
    morph8070
    Guest
    #15
    0
    10.08.2024 14:28:00
    У меня это не работает. Mikrotik находится в режиме моста за роутером провайдера. Mikrotik добавлен в DMZ на роутере провайдера. Я запускаю скрипт, но IP на no-ip не обновляется. routerOS v6.49.10. Для логирования я создал скриптовый лог (с действием: memory), но не вижу ошибок и никаких записей о том, что скрипт что-то сделал. Я также сделал следующее, чтобы проверить, произойдет ли обновление IP на 3.0.3.3: /tool fetch mode=http url=“http://myUSERNAME:myPASSWORD@dynupdate.no-ip.com/nic/update?hostname=MYDNSNAME.ddns.net&myip=3.0.3.3” — но обновления не произошло. Если вставить эту же строку в веб-браузер, IP на сервере NO-IP обновляется на 3.0.3.3. Есть идеи? Я совсем новичок.
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры