Софт

Dyndns что это

Рейтинг: 4.9/5.0 (165 проголосовавших)

Категория: Linux

Описание

Перепост DynDNS своими руками

В связи с тем, что dyndns.org испортился и начал хотеть денег за свои услуги, пришлось таки озаботиться этим вопросом, изучить матчасть.

В общем-то, динамические апдейты в DNS реализованы уже много лет назад, но как обычно, есть некоторые тонкости. Под катом краткое руководство для тех, кому интересно.
Подразумевается, что у вас уже есть собственный домен, собственный первичный DNS-сервер для этого домена (BIND), и клиент под юниксом/линуксом. Вероятно, на роутере, работающем под openwrt/dd-wrt, такой метод тоже сработает с небольшими поправками, но я лично не пробовал.

1. На клиенте генерируем секретный ключ (на самом деле, генерировать его можно где угодно, но поскольку он нужен на клиенте, то удобнее прямо там):
dnssec-keygen -a hmac-sha256 -b 128 -n HOST -r /dev/urandom dyndns

Тонкости:
-a: алгоритм можно выбирать из HMAC-MD5, HMAC-SHA1, HMAC-SHA224, HMAC-SHA256, HMAC-SHA384, HMAC-SHA512, но MD5 уже считается небезопасным, SHA1 тоже слабоват, поэтому ориентируемся на SHA256 и выше.

-b: длина ключа в битах, может быть от 1 до 512, но не более длины контрольной суммы, поэтому, например, для SHA256 ключ не может быть длиннее 256 бит.

-n: должно быть HOST, другие значения предназначены для других целей.

-r: устройство для получения случайных чисел. В принципе, его можно и не указывать, но с ним генерация ключей работает гораздо быстрее.

последний параметр (dyndns): название генерируемого ключа. Его можно выбирать достаточно произвольно.

2. В результате этой операции получаем два файла:
Knnnn.+aaa+iiiii.key и Knnnn.+aaa+iiiii.private где nnnn – название ключа (dyndns), aaa – номер алгоритма (например, hmac-sha256 – это 163, а hmac-sha512 – 165), iiiii – идентификатор (fingerprint) ключа.

Cкладываем оба файла куда-нибудь в /usr/local/etc/dyndns/, и на всякий случай даём доступ к ним только руту.

Внтури обоих файлов есть строка с ключом, закодированным в base64. Выглядит этот ключ примерно так: wVkp4d562LIR/h1JUm4fiulmkoijaF7lZTVp3YeEsVk=

3. Переходим к серверу. Предположим, у вас есть домен example.com. В принципе, можно настроить динамические изменения прямо в нём, но из соображений паранойи безопасности лучше завести отдельный поддомен и разрешить изменения только в нём.

Итак, на первичном DNS-сервере зоны example.com (будем считать, что его зовут ns1.example.com, а адрес у него 10.2.3.4) в файле зоны example.com заводим отдельный NS для поддомена:

Можно также указать дополнительные NS’ы для поддомена. Они совершенно не обязательно должны совпадать с NS’ами самого домена example.com. В принципе, и первичный NS тоже вполне может быть на другом IP, тогда надо настроить записи в example.com точно так же, как это делается для обычного делегирования поддомена. Я этот вариант не рассматриваю, предполагая, что всё настраивается на одном и том же сервере, но вообще это не обязательно.

4. В конфиг сервера заносим ранее сгенерированный ключ:

Название ключа dyndns. не обязано совпадать c тем, что было указано при генерации, но лучше использовать то же самое, чтоб было понятно, что это за ключ.

И создаём запись про поддомен:

Название файла не обязано совпадать с именем зоны, но так яснее.

Тонкость: в процессе динамического изменения зоны BIND создаст журнал (файл с тем же именем и суффиксом .jnl) в той же директории, где лежит файл зоны. И время от времени будет переносить изменения из журнала в файл зоны. Соответственно, сам файл зоны и директория, где он лежит, должны быть писабельными для пользователя (или хотя бы группы), от которых запущен BIND (обычно bind:bind). Поэтому лучше положить файл зоны в стандартную директорию для временных файлов BIND’а (в линуксе обычно /var/cache/bind).

Хинт: если маршрут к файлу в директиве file не абсолютный, он отсчитывается от директории, указанной в конфиге директивой directory (которая по умолчанию и указывает на этот самый /var/cache/bind).
Либо можно указать в file абсолютный маршрут.

И не забыть проверить права на файл и директорию, чтоб BIND мог там читать и писать.

5. Создаём в выбранной директории начальный файл для зоны dyn.example.com примерно такого содержания:

Не забываем поменять ему владельца на bind, или от кого там у вас BIND запускается..

Тонкости:
– Поскольку вся эта конструкция собирается для адресов, которые будут относительно часто меняться, TTL по умолчанию должен быть достаточно маленьким, чтобы предотвратить длительное кэширование записей в кэширующих NS’ах после того, как адреса уже поменялись в авторитетных.
– серийник будет автоматически увеличиваться BIND’ом при каждом изменении зоны, поэтому классический вариант YYYYMMDDNN не имеет смысла. Лучше использовать какое-нибудь маленькое число, хотя бы и 1.
– refresh и retry должны быть достаточно маленькими, сравнимыми с TTL, чтобы вторичные авторитетные серверы (если они предусмотрены) побыстрее синхронизировались с первичным, если посылаемые туда уведомления об изменении зоны случайно потеряются.
– expire — по желанию.
– negative TTL тоже должен быть маленьким, лучше даже меньше TTL по умолчанию, чтоб предотвратить длительное кэширование отрицательных ответов.
– а вот конкретно для записей NS можно явно указать большой TTL, они обычно редко меняются. Но это тоже по желанию.

6. Перезапускаем BIND, убеждаемся, что он поднялся и нормально отдаёт записи SOA и NS для поддомена (других там пока нет).

7. Возвращаемся на клиентскую машину и пробуем оттуда обновить зону:

Затем запрашиваем у авторитетного сервера адрес хоста foo.dyn.example.com, должно получиться 127.1.2.3.
Если не получилось, добавляем перед send команды debug yes и show. читаем логи, и т.п.

8. Автоматизируем процесс узнавания клиентского IP и отправки его на сервер примерно таким скриптиком /usr/local/sbin/dyndns_update.sh:

9. И засовываем его в крон, скажем, раз в 15 минут. Можно ещё приделать непосредственно к DHCP-клиенту в /etc/dhcp/dhclient-exit-hooks.d/, тогда он после обновления адреса будет срабатывать оперативнее

Похожие записи:

Dyndns что это:

  • скачать
  • скачать
  • Другие статьи, обзоры программ, новости

    Динамический ДНС (DynDNS) - Уфанет - Друзья всегда с тобой!

    1. Что такое
    Использование технологии динамического DNS (dynamic DNS, dyndns) позволяет решить следующую проблему: "как узнать IP-адрес сервера, если если этот адрес меняется при очередном подключении сервера к интернет". Если у Вас нет сервера, который Вы хотите сделать общедоступным, то дальше можно не читать.

    Итак, Ваш сервер подключается к Уфанет по технологии VPN (это может быть протокол PPTP или PPPoE). Благодаря dyndns пользователи Интернет всегда могут соединиться с Вашим сервером по имени, которое зависит от логина, использованного при подключении сервера.

    Например, если Ваш сервер подключается к Интернет с логином 12345, то его имя в Интернет будет выглядеть так: 12345.dyn.ufanet.ru. Никаких настроек для этого, кроме включения услуги в личном кабинете, не требуется. Услуга бесплатна.

    Сначала нужно включить услугу в личном кабинете. Обратите внимание, что для логинов, которые прикреплены к субдоговорам (например, к услуге "Свобода"), включение динамического DNS надо производить в меню соответствующего субдоговора. Ссылка на субдоговоры находится в левом верхнем углу личного кабинета.

    Далее нужно запомнить несколько несложных правил касательно использования динамического DNS:

    - имя сервера в Интернет определяется логином, который был использован при подключении. Схема такая: <login>[-<realm>].dyn.ufanet.ru, где <login> - ваш цифровой логин, использованный при подключении, а <realm> - необязательный суффикс (например, @local). Таким образом, при подключении с логином 12345 имя Вашего сервера в Интернет будет выглядеть как 12345.dyn.ufanet.ru, а при подключении с логином 12345@local имя сервера будет выглядеть как 12345-local.dyn.ufanet.ru

    - если Вы используете несколько одновременных подключений к Интернет с одним логином, то имя вида <login>.dyn.ufanet.ru будет соответствовать последнему по времени подключению.

    - время жизни (TTL) записей в зоне dyn.ufanet.ru равно 10 минутам. Это значит, что если Вы разорвали соединение и заново установили его, то еще в течение 10 минут пользователи Вашего сервера могут получать прежний IP, который был у вашего сервера до переподключения.

    - для городов кроме Уфы, dyn.ufanet.ru надо заменить на:
    Ишимбай: dyn.igs.ufanet.ru
    Стерлитамак: dyn.str.ufanet.ru
    Салават: dyn.slv.ufanet.ru
    Октябрський: dyn.oktgs.ufanet.ru
    Нефтекамск: dyn.neft.ufanet.ru
    Орск: dyn.orsk.ufanet.ru
    Оренбург: dyn.o56.ru

    Наиболее частое применение технологии динамического DNS - размещение на домашнем сервере какого-либо сайта. Тут есть небольшая сложность - клиентам Вашего сайта тяжело будет запоминать имена вроде 12345.dyn.ufanet.ru. Это совсем не проблема! Вы можете приобрести любое удобозапоминаемое доменное имя (скажем для определенности, mysite.ru) и настроить DNS таким образом, чтобы имя www.mysite.ru было синонимом имени 12345.dyn.ufanet.ru. В DNS это называется "запись типа CNAME". Стандартная запись для ISC BIND выглядит примерно так: "www IN CNAME 12345.dyn.ufanet.ru.". О том, как добавить эту запись в DNS, спрашивайте у Вашего поставщика услуги "размещение DNS".

    4. Отказ от обязательств

    Услуга "динамический DNS" предоставляется на условиях "как есть". АО «Уфанет» отказывается от каких-либо обязательств и гарантий относительно содержания или использования услуги "динамический DNS". АО «Уфанет» не несет ответственности за прямой или косвенный ущерб, возникший вследствие использования или неиспользования услуги "динамический DNS".

    Обсуждение и ответы на многие вопросы есть на форуме Уфанет в теме DynDNS .

    DynDNS - всегда online!

    Клуб любителей ASPLinux

    21 Сентябрь, 2007 - 07:56 — Mimino

    Или "Статический сайт - на динамическом IP"

    Второе название статьи - просто забавная игра слов "статический - динамический". На самом деле возможности описываемой ниже технологии DynDNS (Dynamic DNS) охватывают больший круг вопросов и решают больше полезных задач.

    Чему обязано появление технологии DynDNS (Dynamic DNS)? Одной из причин является довольно прозаическое обстоятельство - нехватке статических IP-адресов в Internet-пространстве, из-за чего провайдеры зачастую вынуждены раздавать своим клиентам динамические адреса.
    Предпримчивые разработчики и эту нехватку обратили в доходную статью - появились публичные сервисы www.no-ip.com. www.tzo.com и другие, которые позволяют на динамическом IP размещать полноценные сайты, почтовые-, jabber-серверы и другие сервисы, которые в своем первозданном виде обычно требуют наличия статического IP.

    В нашей статье мы рассмотрим практическое использование известного сервиса www.dyndns.com. клиенты которого существуют не только в Soft-виде, но и встраиваются в аппаратные продукты - маршрутизаторы, модемы, и т.п.

    Принцип их действия довольно прост - на своем динамическом хосте устанавливается dyndns-клиент, который периодически "сливает" адрес своего хоста на свой публичный dyndns-сервис, на котором зарегистрирован ваш домен, а этот сервис каждый раз корректирует настройки DNS-зоны в соответствии с изменившимся адресом хоста. Иными словами, сервис осуществляет их периодическую синхронизацию таким образом, чтобы доменное имя всегда соответствовало "гуляющему" IP-адресу вашего хоста.

    Имя домена можно выбрать как бесплатное 3-го уровня из предоставляемых на сервисе списка. так и свое уникальное за оплату.
    DynDNS клиентов на данном сервисе предлагается несколько для различных платформ - Windows, Mac/OS и Linux/Unix.

    Рассмотрим наиболее распространенный клиент ddclient. Его можно скачать отсюда в тарболе (текущая версия 3.7.3), а можно взять готовый пакет, например, ddclient-3.6.6-1.fc4.noarch.rpm из нашей "Файлокопилки" в разделе " Утилиты ". который устанавливается в среду ASPLinux 11.2 сразу, без ее дополнительной подготовки.
    Более старшие версии ddclient при установке требуют дополнительных библиотек, но обладают дополнительными возможностями. Например, начиная с версии 3.7.0 реализована поддержка протокола HTTPS, что обеспечивает более высокий уровень безопасности при использовании сервиса DynDNS .

    Установка и настройка клиента ddclient

    1. Регистрация своего dynsdns-акаунта
    Регистрируемся на сайте www.dyndns.com обычным порядком.
    Для этого выбираем ссылку Create Account и вводим свой ник, реальный email и пароль.
    Например:
    - pupkin ,
    - pupkin@mymail.com
    - passpass

    после чего отмечаем согласие с двумя условиями
    - "I agree to the AUP"
    - "I will only create one (1) free account"

    и нажимаем кнопку " Create Account ".

    2. Квитирование email
    После регистрации на ваш email должно прийти письмо следующего содержания:

    Цитата:
    DynDNS Support
    Тема. Your DynDNS Account Information
    Дата. Wed, 19 Sep 2007 15:53:37 -0400 (EDT)
    Кому. pupkin@mymail.com

    Your DynDNS Account 'pupkin' has been created.
    You need to visit the confirmation address below within 48 hours to complete the account creation process:

    Вкратце его смысл сводится к тому, что если вы не нажмете предложенную ссылку, то вашему аккаунту останется жить 48 часов.

    3. Завершение регистрации аккаунта
    Нажимаем предложенную ссылку и попадаем на страницу сервиса DynDNS, в которой обнаруживаем радостное сообщение:

    Цитата:
    Account Confirmed

    The account pupkin has been confirmed. You can now login and start using your account.

    4. Вход на сайт www.dyndns.com
    Логинимся на сайте DynDNS под выбранным ником и попадаем в богатые закрома сервиса, из которых в данном случае нас интересует раздел поддержки динамического IP, попасть в который можно, например, кратчайшим путем по ссылке https://www.dyndns.com/services/dns/dyndns 5. Ввод регистрационных данных своего хоста
    Нажимаем кнопку " Create Host " и попадаем на страницу с параметрами, которые заполняем своими данными:

    - Hostname pupkin.dyndns.org :Доменное имя своего хоста.
    - Wildcard? да/нет. Использование альяса типа www
    - TTL. 60 сек (по умолчанию) или 4 часа
    - Service Type. обычно используется "A-record pointed to IP address"
    - IP Address :здесь нужно ввести текущий адрес вашего хоста. поэтому самое время вернуться к нашему клиенту.

    6. Устанавка dyndns-клиента
    Запускаем инсталляцию пакета:
    # rpm -ihv ddclient-3.6.6-1.fc4.noarch.rpm
    Исполняемый файл устанавливается как /usr/sbin/ddclient ;
    файл конфигурации - как /etc/ddclient.cconf

    Клиент устанавливается как сервис и его можно увидеть в их списках, но после установки он сам еще не стартует, и это логично - сначала его нужно отконфигурировать.

    7. Конфигурирование ddclient'а
    Конфигурационные данные находятся в файле /etc/ddclient.cconf
    Первым делом выбрасываем из файла конфигурации всю ту муть голубую, которую напихали в него заботливые разработчики, и оставляем только самое необходимое:

    Казалось бы, все учли. Так оно и есть, но следует упомянуть об одной мелкой пакости, которую подготовил разработчик ddclient'a для его пользователей.
    Обратите внимание на параметр "имя своего хоста". В отличие от других параметров, он не имеет собственной идентификатора - просто имя хоста и все.
    А это привело к тому, что любая перестановка этого имени выше предусмотренной для него строки приводит к неработоспособности клиента.
    Трудно судить, чем вызвано такое решение - то ли у афтора исчерпалась фантазия на придумывание имен идентификаторов, то ли просто не хватило букофф, но так или иначе, это "бесценное" ноу-хау придется учитывать при настройке клиента.

    8. Проверка работоспособности и запуск в эксплуатацию
    Для проверки запускаем клиент обычным порядком:
    # /usr/sbin/ddclient
    и, если параметры из файла конфигурации клиента совпадают с соответствующими параметрами аккаунта в сервисе DynDNS, то выполнение завершится молчаливым возвратом в командную строку, в противном случае вы получить соответствующий диагностичесий текст.

    Если все нормально, запускаем наш ddclient на постоянную орбиту:

    # /sbin/service ddclient start

    9. Примечание
    Благодаря dyndns-технологии можно обойти большинство проблем, связанных с отсутствием статического IP-адреса и строить полноценные проекты на динамических адресах.
    При этом, однако, нужно учитывать реалии, сложившиеся в Internet. Например, если вы запустите на DynDNS почтовый сервер, то он будет замечательно функционировать, исправно рассылая и принимая POP3/SMTP почту в online-режиме. Другое дело, что антиспам-системы, принимая почту от такого почтового сервера, обнаруживают странную, по их мнению, непрямую связь между почтовым доменом и его IP, и беспощадно банят их. Чтобы этого не происходило, следует в качестве SMTP-сервера выбрать какой-нибудь релей, базирующийся на постоянном IP. 10. Заключение
    Сервис DynDNS - удачное технологическое решение, позволяющие обойти проблемы нехватки статических адресов, уменьшающее риск DOS-атак по постоянным адресам и имеющие другие возможности, все из которые в одной статье не рассмотрены.
    Желающие ее дополнить приглашаются.
    Custom DNS

    Рассмотрим еще случай, когда Пупкину становится тесно в рамках бесплатных доменных имен, предоставляемых сервисом DynDNS, и он захотел поддерживать с его помощью свой домен pupkin.com, зарегистрированный ранее.

    Для этого случая ему нужно выбрать подсервис Custom. предоставляющий такую возможность, и нажать кнопку " Add DNS Hosting " :

    После этого в следующем окне нужно заполнить меню с учетом того, что домен есть есть, что этот домен нуждается в первичной зоне на ресурсах DynDNS и что нужно организовать почту на сервисе MailHop :

    Выбираем срок поддержки домена и почты сроком на один год:

    Предварительно не мешает поразмыслить - $54,90/год без предоставления места под сайт и почту - а не слишком ли многовато ли хотят господа буржуины за свой ненавязчивый сервис? Ведь в сущности, это оплата лишь за псевдостатический IP.
    При нынешних ценах за эту сумму можно взять полноценный просторный хост с почтой.
    Политика цен на DynDNS явно застряла на отметке прошлого тысячелетия.

    Dynamic DNS - установка и настройка

    Dynamic DNS - установка и настройка

    Участник с: 09 февраля 2009

    Что такое Dynamic DNS?

    Dynamic DNS это сервис позволяющий привязать динамический IP-адрес к домену.

    Каждый раз при установлении соединения с интернетом каждый пользователь получает IP-адрес. Очень часто бывает так, что провайдер дает динамический IP-адрес, который меняется при каждом новом подключении.

    Понятно, что в такой ситуации невозможно привязать обычный домен к динамическому IP-адресу и тут на помощь приходит Dynamic DNS.

    У пользователя должна быть установлена специализированная программа, которая при каждом изменении IP-адреса будет передавать новый адрес на сервис Dynamic DNS.

    Хочется заострить внимание на том, что сервис Dynamic DNS не работает на «серых» IP-адресах, ему нужен только «реальный» IP-адрес.

    Первое с чего следует начать это выбрать подходящий сервис Dynamic DNS.

    Для себя я выбрал сервис DynDNS (http://www.dyndns.com/ ), на нем можно получить бесплатно два домена третьего уровня.

    Регистрация на сервисе DynDNS весьма проста и не замысловата. Заполняем несколько полей (username, email, password) и соглашаемся с правилами (policy).

    После регистрации на ящик указанный при регистрации будет выслано письмо с подтверждением регистрации.

    Домен создается так же просто как и проходит регистрация.

    Идем на страницу регистрации домена (https://www.dyndns.com/account/services/hosts/add.html ) и заполняем необходимые поля.

    • Hostname — указываем желаемое имя и выбираем по вкусу доменное имя второго уровня
  • Service type - оставляем значение по умолчанию (Host with IP address)
  • IP address - оставляем без изменений (здесь будет указан Ваш текущий IP-адрес)

    После заполнения необходимых полей жмем на кнопку Create Host.

    Все, домен создан. Еще можно создать один бесплатный домен, ну а если захотите еще, то уже придется платить.

    Установка и настройка клиента

    Мне больше всего понравился клиент inadyn, он очень простой и легко настраивается. В принципе, ddclient настраивается точно также, отличия только в названии демона.

    Установка клиента будет автоматической, так как он есть в репозитории.

    Устанавливаем клиента вот так:


    Теперь необходимо создать файл конфигурации /etc/inadyn.conf (по умолчанию он не создается).

    Есть возможность создать файл конфигурации автоматически, для этого воспользуемся механизмом создания файла конфигурации (https://www.dyndns.com/support/tools/clientconfig.html ), который нам предоставляет сервис DynDNS.

    На странице создания файла конфигурации выбираем необходимый домен, клиента и жмем кнопку Generate.

    Теперь осталось скопировать полученную конфигурации и вставить ее в файл. Нам еще нужно добавить в файл свой логин и пароль (логин и пароль которые мы использовали при регистрации на сервисе).

    От себя хочу сказать, что в сгенерированной конфигурации я поменял один параметр (update_period_sec ) с 600 сек. на 60 сек. Этот параметр отвечает за период обновления IP-адреса и сделал я это для того что бы адрес быстрей обновлялся при разрывах соединения.

    Теперь можно произвести первый запуск клиента:


    Затем необходимо настроить запуск клиента автоматически. Для этого добавте демон inadyn в rc.local

    На этом все работы можно считать завершенными и теперь ваши динамические IP-адреса будут привязываться к вашим доменам.

  • Прощай DynDNS, да здравствует no-ip

    Прощай DynDNS, да здравствует no-ip.

    В связи с отключением бесплатных аккаунтов на dyn.com появилась необходимость перейти на что-то похожее. Вкратце, этот сервис предоставлял возможность получить статичное имя на динамический белый IP. Было удобно, т.к. он поддерживался моим модемом, который отвечал за это. Увы, халява кончилась Первое, что я придумал — написать скриптик, который бы лез на internet.yandex.ru, получал IP и писал его в файлик, который синхронизировался с каким-нибудь облаком. Всё отлично, но на домашнем компе был установлен только клиент Dropbox`а, а он имеет привычку уведомлять о том, что какой-то файлик изменился, что очень раздражает, т.к. синхронизацию планировалось проводить раз в 10 минут. И тут я вспомнил про noip.com. Это полный аналог DynDNS, но не поддерживается моим модемом, так что клиента надо ставить на сам сервер. Немного покурив мануалы, я понял, что это не так уж и сложно

    Установка клиента noip.com

    Для начала зарегистрируемся. выбрав бесплатный аккаунт. Список хостов в дальнейшем можно посмотреть здесь. Скачаем и распакуем клиент:

    Настройка службы no-ip

    Dynamic DNS-привязка динамического IP-адреса к домену

    05.01.2016 ↔ нет комментариев

    Dynamic DNS-привязка динамического IP-адреса к домену

    Dynamic DNS Здесь я постараюсь обобщить разнородную информацию с которой я сталкивался при настройке Dynamic DNS. Что такое Dynamic DNS? Dynamic DNS это сервис позволяющий привязать динамический IP-адрес к домену.

    Как это работает? Каждый раз при установлении соединения с интернетом каждый пользователь получает IP-адрес. Очень часто бывает так, что провайдер дает динамический IP-адрес, который меняется при каждом новом подключении. Понятно, что в такой ситуации невозможно привязать обычный домен к динамическому IP-адресу и тут на помощь приходит Dynamic DNS. У пользователя должна быть установлена специализированная программа, которая при каждом изменении IP-адреса будет передавать новый адрес на сервис Dynamic DNS. Хочется заострить внимание на том, что сервис Dynamic DNS не работает на «серых» IP-адресах, ему нужен только «реальный» IP-адрес. С чего начать? Первое с чего следует начать это выбрать подходящий сервис Dynamic DNS. Для себя я выбрал сервис DynDNS (http://www.dyndns.com), на нем можно получить бесплатно два домена третьего уровня. Регистрация аккаунта Регистрация на сервисе DynDNS весьма проста и не замысловата. Заполняем несколько полей (username, email, password) и соглашаемся с правилами (policy). После регистрации на ящик указанный при регистрации будет выслано письмо с подтверждением регистрации. Прямая ссылка на страницу регистрации: https://www.dyndns.com/account/create.html Создание домена Домен создается так же просто как и проходит регистрация. Идем на страницу регистрации домена (https://www.dyndns.com/account/services/hosts/add.html) и заполняем необходимые поля. Hostname — указываем желаемое имя и выбираем по вкусу доменное имя второго уровня (меня привлекло homelinux.com) Wildcard — ставим галку если хотим что бы работали имена вроде ftp.host.domain.org или www.host.domain.org Service type — оставляем значение по умолчанию (Host with IP address) IP address — оставляем без изменений (здесь будет указан Ваш текущий IP-адрес) После заполнения необходимых полей жмем на кнопку Create Host. Все, домен создан. Еще можно создать один бесплатный домен, ну а если захотите еще, то уже придется платить. Установка и настройка клиента Мне больше всего понравился клиент inadyn, он очень простой и легко настраивается. Установка клиента будет автоматической, так как он есть в репозитории (по крайней мере он есть в репозитории Ubuntu). Устанавливаем клиента вот так: sudo apt-get install inadyn Теперь необходимо создать файл конфигурации /etc/inadyn.conf (по умолчанию он не создается). Есть возможность создать файл конфигурации автоматически, для этого воспользуемся механизмом создания файла конфигурации (https://www.dyndns.com/support/tools/clientconfig.html), который нам предоставляет сервис DynDNS. На странице создания файла конфигурации выбираем необходимый домен, клиента и жмем кнопку Generate. Теперь осталось скопировать полученную конфигурации и вставить ее в файл. Нам еще нужно добавить в файл свой логин и пароль (логин и пароль которые мы использовали при регистрации на сервисе). От себя хочу сказать, что в сгенерированной конфигурации я поменял один параметр (update_period_sec) с 600 сек. на 60 сек. Этот параметр отвечает за период обновления IP-адреса и сделал я это для того что бы адрес быстрей обновлялся при разрывах соединения. Теперь можно произвести первый запуск клиента (sudo /usr/sbin/inadyn). Надо так же проконтролировать работу программы. Это можно сделать посмотрев лог файл (/var/log/syslog). Самый простой способ это сделать командой tail (tail -n 5 /var/log/syslog). В лог файле должны появится строки наподобие следующих: INADYN: Started ‘INADYN version 1,96’ — dynamic DNS updater. INADYN: IP address for alias ‘mea.homelinux.com’ needs update to ‘xxx.xxx.188.75’ INADYN: Alias ‘mea.homelinux.com’ to IP ‘xxx.xxx.188.75’ updated successful. Теперь нам необходимо настроить запуск клиента автоматически и самый простой способ это запуск клиента через cron. Вызываем на редактирование кронтаб (sudo crontab -e). Добавляем строку запуска (@reboot /usr/sbin/inadyn). Сохраняем кронтаб и выходим. Проверяем сохранилась ли в кронтабе наша строка (sudo crontab -l). Смотрим запущен ли клиент (ps -A | grep inadyn). На этом все работы можно считать завершенными и теперь ваши динамические IP-адреса будут привязываться к вашим доменам. Взято тут http://ymaltsev.livejournal.com/3445.html

    Статьи по теме

    Сам себе dyndns: dil

    Сам себе dyndns

    В связи с тем, что dyndns.org испортился и начал хотеть денег за свои услуги, пришлось таки озаботиться этим вопросом, изучить матчасть.

    В общем-то, динамические апдейты в DNS реализованы уже много лет назад, но как обычно, есть некоторые тонкости. Под катом краткое руководство для тех, кому интересно.
    Подразумевается, что у вас уже есть собственный домен, собственный первичный DNS-сервер для этого домена (BIND), и клиент под юниксом/линуксом. Вероятно, на роутере, работающем под openwrt/dd-wrt, такой метод тоже сработает с небольшими поправками, но я лично не пробовал.

    1. На клиенте генерируем секретный ключ (на самом деле, генерировать его можно где угодно, но поскольку он нужен на клиенте, то удобнее прямо там):
    dnssec-keygen -a hmac-sha256 -b 128 -n HOST -r /dev/urandom dyndns

    Тонкости:
    -a: алгоритм можно выбирать из HMAC-MD5, HMAC-SHA1, HMAC-SHA224, HMAC-SHA256, HMAC-SHA384, HMAC-SHA512, но MD5 уже считается небезопасным, SHA1 тоже слабоват, поэтому ориентируемся на SHA256 и выше.

    -b: длина ключа в битах, может быть от 1 до 512, но не более длины контрольной суммы, поэтому, например, для SHA256 ключ не может быть длиннее 256 бит.

    -n: должно быть HOST, другие значения предназначены для других целей.

    -r: устройство для получения случайных чисел. В принципе, его можно и не указывать, но с ним генерация ключей работает гораздо быстрее.

    последний параметр (dyndns): название генерируемого ключа. Его можно выбирать достаточно произвольно.

    2. В результате этой операции получаем два файла:
    Knnnn.+aaa+iiiii.key и Knnnn.+aaa+iiiii.private. где nnnn – название ключа (dyndns), aaa – номер алгоритма (например, hmac-sha256 – это 163, а hmac-sha512 – 165), iiiii – идентификатор (fingerprint) ключа.

    Cкладываем оба файла куда-нибудь в /usr/local/etc/dyndns/, и на всякий случай даём доступ к ним только руту.

    Внтури обоих файлов есть строка с ключом, закодированным в base64. Выглядит этот ключ примерно так: wVkp4d562LIR/h1JUm4fiulmkoijaF7lZTVp3YeE sVk=

    3. Переходим к серверу. Предположим, у вас есть домен example.com. В принципе, можно настроить динамические изменения прямо в нём, но из соображений паранойи безопасности лучше завести отдельный поддомен и разрешить изменения только в нём.

    Итак, на первичном DNS-сервере зоны example.com (будем считать, что его зовут ns1.example.com, а адрес у него 10.2.3.4) в файле зоны example.com заводим отдельный NS для поддомена:

    Можно также указать дополнительные NS’ы для поддомена. Они совершенно не обязательно должны совпадать с NS’ами самого домена example.com. В принципе, и первичный NS тоже вполне может быть на другом IP, тогда надо настроить записи в example.com точно так же, как это делается для обычного делегирования поддомена. Я этот вариант не рассматриваю, предполагая, что всё настраивается на одном и том же сервере, но вообще это не обязательно.

    4. В конфиг сервера заносим ранее сгенерированный ключ:

    Название ключа dyndns. не обязано совпадать c тем, что было указано при генерации, но лучше использовать то же самое, чтоб было понятно, что это за ключ.

    И создаём запись про поддомен:

    Название файла не обязано совпадать с именем зоны, но так яснее.

    Тонкость: в процессе динамического изменения зоны BIND создаст журнал (файл с тем же именем и суффиксом .jnl) в той же директории, где лежит файл зоны. И время от времени будет переносить изменения из журнала в файл зоны. Соответственно, сам файл зоны и директория, где он лежит, должны быть писабельными для пользователя (или хотя бы группы), от которых запущен BIND (обычно bind:bind). Поэтому лучше положить файл зоны в стандартную директорию для временных файлов BIND’а (в линуксе обычно /var/cache/bind).

    Хинт: если маршрут к файлу в директиве file не абсолютный, он отсчитывается от директории, указанной в конфиге директивой directory (которая по умолчанию и указывает на этот самый /var/cache/bind).
    Либо можно указать в file абсолютный маршрут.

    И не забыть проверить права на файл и директорию, чтоб BIND мог там читать и писать.

    5. Создаём в выбранной директории начальный файл для зоны dyn.example.com примерно такого содержания:

    Не забываем поменять ему владельца на bind, или от кого там у вас BIND запускается..

    Тонкости:
    - Поскольку вся эта конструкция собирается для адресов, которые будут относительно часто меняться, TTL по умолчанию должен быть достаточно маленьким, чтобы предотвратить длительное кэширование записей в кэширующих NS’ах после того, как адреса уже поменялись в авторитетных.
    - серийник будет автоматически увеличиваться BIND’ом при каждом изменении зоны, поэтому классический вариант YYYYMMDDNN не имеет смысла. Лучше использовать какое-нибудь маленькое число, хотя бы и 1.
    - refresh и retry должны быть достаточно маленькими, сравнимыми с TTL, чтобы вторичные авторитетные серверы (если они предусмотрены) побыстрее синхронизировались с первичным, если посылаемые туда уведомления об изменении зоны случайно потеряются.
    - expire — по желанию.
    - negative TTL тоже должен быть маленьким, лучше даже меньше TTL по умолчанию, чтоб предотвратить длительное кэширование отрицательных ответов.
    - а вот конкретно для записей NS можно явно указать большой TTL, они обычно редко меняются. Но это тоже по желанию.

    6. Перезапускаем BIND, убеждаемся, что он поднялся и нормально отдаёт записи SOA и NS для поддомена (других там пока нет).

    7. Возвращаемся на клиентскую машину и пробуем оттуда обновить зону:

    Затем запрашиваем у авторитетного сервера адрес хоста foo.dyn.example.com, должно получиться 127.1.2.3.
    Если не получилось, добавляем перед send команды debug yes и show. читаем логи, и т.п.

    8. Автоматизируем процесс узнавания клиентского IP и отправки его на сервер примерно таким скриптиком /usr/local/sbin/dyndns_update.sh:

    9. И засовываем его в крон, скажем, раз в 15 минут. Можно ещё приделать непосредственно к DHCP-клиенту в /etc/dhcp/dhclient-exit-hooks.d/, тогда он после обновления адреса будет срабатывать оперативнее, но мне лень.

    Оригинал этой записи в личном блоге.
    Любые материалы из этого блога запрещается использовать на сайте livejournal.ru в любой форме и любом объёме.

    Сервис - General

    У меня роутер DSL-524T подключен к Стриму. На нем висят 2 компа. Сеть я между ними сделал и все работает. Делаю следующий шаг и пытаюсь подключить сервис dyndns.org который в бесплатном варианте, как я понял, обзывает мой динамический IP постоянным именем например мое_имя.homelinux.com. Настройки этого сервиса есть у меня в роутере, где я просто выбираю сервис и ввожу свои логин и пароль. Вроде после этого роутер автоматически каждый раз подключается к dyndns.org и я имею постоянное имя в сети. Подчеркиваю- роутер поключается, а не специальная программа на одном из компов. Теперь я пытаюсь через аномайзеры выйти на сайт мое_имя.homelinux.com и узнаю что такого в сети нет. При этом если в браузере набрать мое_имя.homelinux.com то я попадаю в меню входа в роутер т.е это тоже самое если набрать 192.168.1.1. Мне непонятно где же сервис dyndns.org где же обещанное подсоединение к компьютеру по имени независимо от динамических dns?

    Re: Dyndns.org сервис

    ну правильно, роутер сообщает дуньднсу свой внешний IP, на который ты можешь зайти изнутри (браузер), а вот внешний трафик на 80 порт (анонимайзер) фильтруется

    Re: Dyndns.org сервис

    Чтобы проверить правильно ли работает dyndns.org набери nslookup мое_имя.homelinux.com (ну или что там выбрал) и сравни ip адрес ответа с тем что выдал тебе стрим (еси что, то это дело видно в логе на рутере)

    >я пытаюсь через аномайзеры выйти на сайт мое_имя.homelinux.com и узнаю что такого в сети нет

    А что ты ожидал. Или у тебя таки поднят свой веб сервер и настроен форвардинг 80-го порта на рутере?

    Не имени нет, а просто никто по этому адресу не откликается (от того, что некому).

    ЗЫ Поднимай свой сервант, настраивай форвард и вперед и с песней ;)

    ЗЗЫ У меня вот все работает =)