Настройка динамического DNS от Mikrotik
Обновлено: 21.11.2024
С выпуском RouterOS v6.14 компания Mikrotik предлагает услугу динамического DNS для устройств RouterBOARD.
(Примечание. В настоящее время выполняется общедоступная бета-версия. Доступность сервера может варьироваться, а синтаксис может измениться)
Это позволяет вам иметь доступ к вашему маршрутизатору из любой точки Интернета без необходимости подписываться на сторонние службы динамической DNS или писать сценарии для поддержания динамически изменяющихся адресов в актуальном состоянии где-либо. К вашему сведению, это не сработает, если с вашим маршрутизатором не связан общедоступный адрес.
Это удобно, если вам нужен доступ к:
- Доступ к камерам наблюдения за вашей сетью
- Управление маршрутизатором или маршрутизаторами за ним.
- Доступ к локальному файловому серверу
- VPN в вашу домашнюю сеть из любой точки мира.
Чтобы включить эту функцию, убедитесь, что на RouterBOARD установлена последняя версия.
Перейдите в Система > Пакеты и нажмите Проверить наличие обновлений. Затем «Загрузить и обновить» в правой части нового окна. Теперь ваш маршрутизатор перезагрузится и установит последнюю версию RouterOS.
После его установки у вас появится новая опция в вашем IP-меню под названием «облако» :
После открытия все, что вам нужно сделать, это выбрать «Включено», и он будет обновляться с помощью динамических DNS-серверов Mikrotik.
Успех! Сохраните свое DNS-имя где-нибудь, это будет адрес, который вы сможете использовать из любого места для доступа к нему, и у вас всегда будет доступ к вашему маршрутизатору/сети.
Последние шесть лет скрипт в моей Mikrotik Routerboard обновлял мое бесплатное доменное имя без IP-адреса с помощью моего динамического IP-адреса, позволяя мне подключиться к маршрутизатору через VPN. В какой-то момент из-за обновления RouterOS скрипт перестал обновлять мой ddns и мне пришлось искать другой скрипт или исправлять текущий. Тогда я решил использовать новую функцию Mikrotik, IP Cloud.
Несмотря на то, что IP Cloud кажется неподходящим для использования ddns, поскольку он назначает вам трудно запоминающийся домен, полученный из mac Routerboard, мы можем сопоставить наше бесплатное доменное имя no-ip с CNAME с нашим облачным доменом ip, который никогда не изменения, так как он привязан к оборудованию. Таким образом, мы также можем иметь прокси-сервер с удобным для человека доменом для доступа к внутренним службам.
Настройки Микротика
Удалите скрипт ddns и отключите планировщик скрипта, если он есть. Перейдите в раздел system->scripts и system->scheduler.
Для NTP можно использовать либо SNTP-клиент Mikrotik, либо NTP-сервер облачных серверов Mikrotik. Я выбрал облачный NTP-сервер.
Мы можем отключить SNTP-клиент платы маршрутизатора, выбрав система->SNTP-клиент.
Включите Cloud, выбрав IP->Cloud
Включение облачного ddns на Mikrotik
Роутер свяжется с серверами Mikrotik, создаст домен на основе роутера и назначит его. С этого момента этот домен привязан к конкретному роутеру и будет сохраняться и при сбросе настроек.
Настройки без IP-адреса
Теперь, когда известен домен нашего RB, мы можем приступить к изменению бесплатного домена, зарегистрированного с помощью no-ip, с записи A на CNAME (каноническое имя), что означает, что вместо указания IP-адреса наш домен без IP будет указывать на другой домен, домен нашего маршрутизатора Mikrotik.
Войдите на панель мониторинга no-ip, перейдите в раздел Мои службы->Записи DNS, выберите CNAME и скопируйте и вставьте DNS-имя, назначенное RB, в целевую запись на панели мониторинга no-ip.
изменение имени хоста на CNAME
CNAME распространилась
Готово! Теперь мы можем продолжать использовать наш VPN для нашего маршрутизатора или получать доступ к нашему прокси-серверу, используя наш обычный домен, без поддержки скрипта.
Вы можете использовать нашу службу динамического DNS с маршрутизаторами Mikrotik, выполнив следующие простые действия.
Сначала вам нужно скопировать и вставить следующий скрипт в окно терминала (измените значения, выделенные жирным шрифтом). Обратите внимание, что вам нужно экранировать специальные символы, такие как " и $, а также вставить символы управления строкой \r\ и \n.
/системный сценарий
add name=Dynu
policy=read,write,test
:global ddnsuser "your_Dynu_username"
:global ddnspass "your_Dynu_password"
: global theinterface "WAN_Interface_Name"
:global ddnshost "your_Dynu_hostname"
:global ipddns [:resolve $ddnshost];
:global ipfresh [ /ip address get [/ip address find interface=$theinterface ] address ]
:if ([ :typeof $ipfresh ] = nil ) do= :log info ("DynuDDNS: Нет IP-адрес на $theinterface .")
> else= :for i from=( [:len $ipfresh] - 1) to=0 do= :if ( [:pick $ipfresh $i] = "/" ) do= :set ipfresh [:pick $ipfresh 0 $i];
>
>
:if ($ipddns != $ipfresh) do= :log info ("DynuDDNS: IP-Dynu = $ipddns")
:log info (" DynuDDNS: IP-Fresh = $ipfresh")
:log info "DynuDDNS: требуется обновление IP, отправка UPDATE. "
:global str "/nic/update?hostname=$ddnshost&myip=$ipfresh" < br />/tool fetch address=api.dynu.com src-path=$str mode=http user=$ddnsuser password=$ddnspass dst-path=("/Dynu.".$ddnshost)
:delay 1
:global str [/file find name="Dynu.$ddnshost"];
/file remove $str
:global ipddns $ipfresh
:log info "DynuDDNS: IP обновлен до $ipfresh!"
> else= :log информация "DynuDDNS: изменения не нужны";
> >"
Вы также можете создать сценарий с помощью WinBox, перейдя в меню Система, а затем Сценарий. Откройте всплывающее окно диалогового окна, в которое вы можете напрямую вставить содержимое исходного раздела из приведенного выше скрипта.
В случае двойного NAT вы можете использовать этот сценарий вместо приведенного выше, чтобы определить IP-адрес из Интернета. Обратите внимание, что вам нужно экранировать специальные символы, такие как " и $, а также вставить символы управления строкой \r\ и \n.
:if ($ipddns != $currentIP) do= :log info ("DynuDDNS: IP-Dynu = $ipddns")
:log info ("DynuDDNS: IP-Fresh = $currentIP") < br />:log info "DynuDDNS: требуется обновление IP, отправка UPDATE. "
:global str "/nic/update?hostname=$ddnshost&myip=$currentIP"
:log info "currentIP is $currentIP "
/tool fetch address=api.dynu.com src-path=$str mode=http user=$ddnsuser password=$ddnspass
dst-path=("/Dynu.".$ddnshost)
:delay 1
:global str [/file find name="Dynu.$ddnshost"];
/file remove $str
:global ipddns $currentIP
:log info "DynuDDNS: IP обновлен до $currentIP!"
> else= :log информация "DynuDDNS: никаких изменений не требуется";
>
Вы можете убедиться, что сценарий успешно добавлен, выбрав Система, а затем Сценарии.
Убедившись, что скрипт корректно обновляет IP-адрес вашего хоста, вы можете добавить запись в планировщик для запуска скрипта каждые 5 минут.
/системный планировщик добавить комментарий="Обновление Dynu DDNS" interval=5m name=ddns_sheduller \
on-event="/системный скрипт запуска Dynu\r\n" policy=чтение, запись, время начала тестирования =запуск
Сегодня небольшой пост, чтобы показать вам, как настроить эквивалент динамического DNS на вашем маршрутизаторе Mikrotik. Я делаю это руководство, используя RouterBOARD 750G r3, но это будет работать практически на любом устройстве Mikrotik, использующем RouterOS.
Так зачем это нужно? Это действительно классное решение, когда у вас есть динамический общедоступный IP-адрес для подключения к Интернету, а не статический общедоступный IP-адрес. Когда у вас есть динамический IP-адрес, вам сложно узнать новый IP-адрес вашего устройства, полученный после отключения от Интернета. Это решает эту проблему, но автоматически обновляет новый IP-адрес до услуги, которую любезно предоставляет Mikrotik.
Теперь вам не нужно платить за какие-либо сторонние решения для обновления IP-адреса, потому что Mikrotik делает это из коробки. Для этого упражнения вам понадобится следующее:
- Winbox для подключения к устройству Mikrotik. Вы можете скачать его здесь.
- Доступ к настройкам DNS вашего собственного домена, если вы хотите создать CNAME (не обязательно)
Приступим.
Откройте Winbox и подключитесь к маршрутизатору Mikrotik, используя имя пользователя и пароль для вашего устройства. Вы должны увидеть что-то похожее на следующее:
Теперь нажмите IP и выберите Cloud, как показано на следующем снимке экрана:
Теперь мы включим службу DDNS и настроим ее на использование вашего локального общедоступного адреса UP. Следуя скриншоту ниже:
Первоначальная настройка завершена.
Каждый раз, когда Интернет на вашем маршрутизаторе отключается, служба DDNS обновляет недавно полученный общедоступный IP-адрес, облегчая вам подключение. Как описано в Mikrotik Wiki здесь.ваш маршрутизатор выполнит следующее:
DDNS или Dynamic DNS – это служба, которая периодически обновляет IPv4-адрес для записей A и IPv6-адрес для записей AAAA. Такая услуга очень полезна, когда ваш интернет-провайдер предоставил динамический IP-адрес, который периодически меняется, но вам всегда нужен адрес, который вы можете использовать для удаленного подключения к вашему устройству. Ниже вы можете найти сведения об операциях, которые относятся к службе DDNS IP/Cloud:
Если вы нашли это полезным, вы можете подписаться на нашу рассылку, где вы будете получать уведомления о том, когда мы публикуем новые статьи, и полезные инструкции. Просто заполните свои данные ниже, и мы сделаем все остальное…
Читайте также: