Товари
 
Виробники
 
Новини
 
Статті

Использование MikroTik с сервисом No-IP

28.05.2012

Содержание:

  1. Регистрация и создание домена на сервисе No-IP
  2. Настройка скрипта MikroTik для использования сервиса No-IP
  3. Проверка работы скрипта с сервисом No-IP

Некоторые провайдеры (например Укртелеком) предоставляют своим пользователям динамический IP адрес, который постоянно изменяется при переподключении. Если вам необходимо подключиться к роутеру MikroTik удаленно из интернета, вы не сможете этого сделать, поскольку не будете знать, какой новый динамический адрес присвоил провайдер.

В этой ситуации нам придет на помощь сервис no-ip.com. Сервис позволяет бесплатно создать доменное имя третьего уровня (например: mikrotik.no-ip.org) и быстро обновлять информацию о том, какой IP адрес соответствует вашему доменному имени. Благодаря сервису No-IP вы сможете подключаться к роутеру MikroTik из интернета не по IP адресу, а по доменному имени.

Для удаленного подключения к роутеру MikroTik с динамическим IP адресом необходимо выполнить следующее:

  • Зарегистрироваться на сайте no-ip.com и создать свое доменное имя;
  • Настроить в роутере MikroTik скрипт, который будет обновлять информацию о текущем IP адресе роутера.

Регистрация и создание домена на сервисе No-IP

Заходим на сайт no-ip.com и нажимаем ссылку Create Account.

Регистрируемся на сервисе No-Ip

В поле Free DNS нажимаем кнопку Sign Up.

Free DNS - No-IP

Вводим информацию для регистрации:

  • First Name: - ваше имя;
  • Last Name: - ваша фамилия;
  • Email: - адрес электронной почты;
  • Username: - имя пользователя;
  • Password: - пароль;
  • Confirm Password: - подтверждаем пароль;
  • Security Question: - выбираем секретный вопрос, ответив на который, вы сможете восстановить пароль, если его забудете.
  • Your Answer: - секретный ответ на секретный вопрос;
  • Birthday: - день рождения.

Потом ставим галочку напротив «I agree that I will only create one free No-IP account» и для создания аккаунта нажимаем кнопку Accept, Create My Account.

No-IP: Вводим информацию для регистрации

Далее появится сообщение о том, что вам необходимо зайти на свой электронный почтовый ящик и подтвердить регистрацию.

No-IP: Подтвердите регистрацию

Заходим на свой email и подтверждаем регистрацию нажатием на ссылку.

Подтверждаем регистрацию на сервисе No-IP

После этого вас перебросит на страницу, которая сообщает об успешной регистрации.

No-IP: Регистрация успешно завершена

Теперь нажимаем на ссылку Login, вводим свой email, пароль и нажимаем кнопку Login.

No-IP: Вводим email и пароль

Выбираем Add a Host (добавить доменное имя).

No-IP: Добавляем доменное имя

В поле Hostname указываем имя и выбираем, в каком домене оно будет. Мы выбрали имя technotrade в домене no-ip.org. Для создания доменного имени нажимаем кнопку Create Host.

No-IP: Указываем доменное имя

Следующее окно говорит о том, что мы успешно создали доменное имя technotrade.no-ip.org

No-IP: Доменное имя успешно создано

Настройка скрипта MikroTik для использования сервиса No-IP

Добавим в роутер MikroTik скрипт, который будет обновлять IP адрес для нашего доменного имени на сервисе No-IP.

Подключаемся к MikroTik с помощью утилиты WinBox.

Подключаемся к роутеру MikroTik с помощью WinBox

Открываем меню System - Scripts и нажимаем кнопку Add (красный крестик), чтобы создать новый скрипт.

MikroTik: Создаем скрипт

В поле Name: указываем имя скрипта, например noip.
Оставляем права для скрипта : write, test, read.

MikroTik: Настраиваем параметры скрипта

В поле Source: вставляем следующий скрипт:

# Параметры подключения к NO-IP.com
:local ddnsuser "логин на NO-IP.com"
:local ddnspass "пароль на NO-IP.com"
:local ddnshostname "ИМЯ.no-ip.org
:local ddnsinterface "ИМЯ ИНТЕРФЕЙСА на Mikrotik"

# Описание глобальных переменных
:global ddnslastip
:local str
:local ddnsip
:local ip

:if ([ :typeof $ddnslastip ] = nil ) do={ :global ddnslastip "0" }

:local ddnsip [ /ip address get [/ip address find interface=$ddnsinterface ] address ]

:if ([ :typeof $ddnsip ] = nil ) do={
   :log info ("ServiceDNS: No ip address on $ddnsinterface .")
} else={

# Из полученного на интерфейсе IP адреса исключаем маску
   :for i from=( [:len $ddnsip] - 1) to=0 do={ 
      :if ( [:pick $ddnsip $i] = "/") do={ 
       :set ddnsip [:pick $ddnsip 0 $i];
      } 
   }

  :if ($ddnsip != $ddnslastip) do={

    :log info ("ServiceDNS: $ddnshostname -> $ddnsip")

# Отправляем новый IP адрес на сервис No-IP с помощью HTTP запроса
    :local str "/nic/update?hostname=$ddnshostname&myip=$ddnsip"
    /tool fetch url="http://dynupdate.no-ip.com/$str" mode=http user=$ddnsuser password=$ddnspass \ dst-path=("/ServiceDNS.".$ddnshostname)
    :delay 1 

# Сохраняем результаты в лог файлах
    :local str [/file find name="ServiceDNS.$ddnshostname"];
    :log info [/file get $str contents];
    /file remove $str
    :global ddnslastip $ddnsip

  } 

}

 

Теперь изменим в скрипте параметры подключения к сервису NO-IP. Для этого редактируем следующие переменные:

  • :local ddnsuser "логин на NO-IP.com" - указываем в кавычках логин;
  • :local ddnspass "пароль на NO-IP.com" - указываем в кавычках пароль;
  • :local ddnshostname "ИМЯ.no-ip.org" - в кавычках указываем ваше доменное имя;
  • :local ddnsinterface "ИМЯ ИНТЕРФЕЙСА MikroTik" - в кавычках указываем имя WAN интерфейса. В нашем случае это ether1. Если вы используете PPPoE соединение, то необходимо указать имя PPPoE интерфейса.

Для сохранения скрипта нажимаем кнопку OK.

Теперь в окне Script List появился наш скрипт.

MikroTik: Список скриптов

 

Далее необходимо настроить планировщик (Sheduler), который будет выполнять скрипт с определенной периодичностью.

Открываем меню System - Sheduler и нажимаем кнопку Add (красный крестик), чтобы добавить новую задачу.

MikroTik: Добавить задание в планировщик

В открывшемся окне настраиваем параметры задачи:

  • в поле Name указываем имя задачи, например noip;
  • в поле Interval указываем с какой периодичностью будет выполняться скрипт. Мы указали интервал 5 минут. Для первичной отладки лучше указать интервал 30 секунд;
  • в поле On Event указываем, какую команду необходимо выполнить при запуске задачи. Мы указали команду /system script run noip, которая запускает скрипт noip;
  • выбираем права для задачи: write, test, read;
  • нажимаем кнопку OK для сохранения задачи.

MikroTik: Настройка параметров задачи планировщика

После этого скрипт начнет свою работу.

Проверка работы скрипта с сервисом No-IP

Открываем меню NewTerminal и вводим команду system script environment print.
В консоли в столбце VALUE отобразится ваш IP адрес.

MikroTik: Отобразить IP адрес для No-IP

 

Теперь проверим, изменяется ли IP адрес на сервисе No-IP.

Логинимся на сайте no-ip.com и выбираем Manage Hosts.

No-IP: Управление доменными именами

Как видим, на сайте IP тоже изменился.

No-IP: Проверка обновления IP адреса

Теперь вы можете подключаться к роутеру MikroTik с помощью утилиты WinBox по доменному имени (в нашем случае по имени technotrade.no-ip.org).

Напоследок перезагрузите роутер MikroTik, чтобы провайдер присвоил ему новый IP адрес, и повторите проверку работы скрипта.

Друкована версія Поділіться статтею:
  • Звичайна форма
  • Facebook

Відгуки про статтю

  Оцінка: 5, Голосів: 26, Коментарів: 59

Залишити коментар
Ваше ім’я: *
Ваша пошта:  

Коментар: *
Оцiнка:  
Введіть символи: *
Поновити
 
Сергей 17.06.2021 15:27:48
А если у меня провайдеры приходят на два порта, которые работают в режиме резервирования) как тогда прописать :local ddnsinterface "ИМЯ ИНТЕРФЕЙСА MikroTik" ? Можно для этого использовать Interface list?
Sergei 02.08.2022 16:26:08
Вопрос очень актуален! Жаль что ответа на него не последовало
Техпідтримка 07.08.2022 14:22:14
В MikroTik давно появилась встроенная функция Dynamic DNS в меню IP - Cloud.
Павел 30.11.2020 13:08:32
Скажите, а что такое "ИМЯ ИНТЕРФЕЙСА на Mikrotik" где его взять?
Техпідтримка 30.11.2020 18:48:01
"ИМЯ ИНТЕРФЕЙСА MikroTik" - в кавычках указываем имя WAN интерфейса (порт в который подключается интернет кабель провайдера). В нашем случае это ether1.
Список всех портов (интерфейсов) можно посмотреть в меню Interfaces - вкладка Interface.
Павел 30.11.2020 19:11:51
Ага, спасибо)
Vitaliy 05.10.2018 15:58:33
Возможно этот скрипт применить не к WAN-интерфейсу а к Caller ID VPN клиента? И если да, что нужно поменять?
Pavel 01.04.2018 19:54:54
Статья как раз актуальная.
Ростелеком выдает белый динамический IP на интерфейс PPPoE, но прикрывает его серым (если искать его обычным способом 2ip.ru)
Сервис Cloud показывает не верный адрес, как и 2ip.ru, и поэтому не подходит совсем.
leff, спасибо.
лишний / в начале строчки
:local str "/nic/update?hostname=$ddnshostname&myip=$ddnsip"
И еще мешал \ в этой строчке
\ dst-path=("/ServiceDNS.".$ddnshostname)
Я убрал и заработало!
Спасибо автору за статью, очень выручил!
Vitold 19.10.2017 13:34:31
Хорошая, но не нужная статья. Есть https://wiki.mikrotik.com/wiki/Manual:IP/Cloud
Начиная с RouterOS v6.14 MikroTik предлагает службу имен динамических DNS для устройств RouterBOARD. Это означает, что ваше устройство может автоматически получать рабочее доменное имя, это полезно, если ваш IP-адрес часто изменяется, и вы всегда должны знать, как подключиться к вашему маршрутизатору.
Техпідтримка 19.10.2017 17:41:18
Когда писалась статья, у MikroTik еще не было Cloud.
Vitold 21.10.2017 22:51:49
Хорошо было бы это указать в начале статьи. Что бы люди не тратили зря время, многие просто не знают этой фишки, а из бесплатных осталась только noIP и то раз в месяц нужно по ссылке из письма переходить.
Onisimchuk Oleksandr 02.06.2019 19:04:39
для себя лично выбрал именно сервис no-ip, тк доменное имя от Микротик слабочитаемое, поскольку используется 12 знаков серийного номера. с другой стороны, как писали, нужно у no-ip подтверждать имя каждый месяц
Fil 30.05.2017 14:50:56
Подскажите настройки DDNS для сервиса nic.ru
Ерік 27.10.2016 15:06:12
Потрібна допомога. Є зовн ip адреса. Наприклад: 195.230.154.77
Як налаштувати NAT,Ip Firewall що заходити по цій адресі через winbox з любої точки світу
Техпідтримка 28.10.2016 10:07:37
Нужно открыть в фаерволе порт 8291. Созданное правило перетащить выше запрещающих.
/ip firewall filter add action=accept chain=input disabled=no in-interface=ether1 dst-port=8291 protocol=tcp comment="access to winbox"
Ерік 28.10.2016 10:12:52
Так роблю як ви пишете, з локальної мережі, яка роздана по dhcp мікротіком заходить на умовний зовнішній адрес 195.230.154.77, як через WinBox так і через Веб.
А з інших ПК, наприклад з роботи ні через веб ні через WinBox не пускає.
Можливо проблема в тому, що я при налаштуванні роутера видалив всі стандартні налаштування Firewall???
Техпідтримка 28.10.2016 12:22:37
Значит IP не белый. Включите в меню IP-Cloud все галочки и подключайтесь по имени типа xxxxxxxxxxxx.sn.mynetname.net
leff 01.06.2016 09:19:00
не работал http-запрос пока не убрал слэш в начале строки
:local str "/nic/update?hostname=$ddnshostname&myip=$ddnsip"
Иван 06.04.2016 12:42:47
А как подключиться? я все запреты полностью отключил. У меня не хочет ни через winbox коннектится, ни через браузер, так как там выдает IIS.
Сторінки: 1, 2, 3, 4
Магазин
Техпідтримка
Наші партнери
   
© 2003–2024 «Компанія ТехноТрейд»
інтернет-магазин мережевого обладнання
×
×
Валюта: