четверг, 10 апреля 2014 г.

Переход с DynDNC на FreeDNC.

Мой старенький коммутатор поддерживает только DynDNS и не дает настроить другой сервис. Именно по этому, я был так терпелив.  Тем не менее, полный отказ DynDNS от бесплатных сервисов, заставил искать альтернативу. noip.com — не рассматривался. т. к. он идет тем-же путем. Нам нужен полностью бесплатный сервис способный обеспечить нас несколькими бесплатными доменными именами.

Для несведущих, коротко опишу суть сервиса динамических доменных имен DNC. Ваш провайдер интернета периодически предоставляет вам некий внешний IP, который постоянно меняется. Если вы хотите подключаться к своему компьютеру удалено вам необходимо знать этот IP на момент подключения. Можно купить у провайдера постоянный т. е. cтатический IP или настроить уникальное доменное имя, которое будет предъявлять ваш текущий IP при каждом обращении. Осталось найти бесплатный сервис который предоставить вам такое имя и будет его поддерживать.



Открываем в браузере ссылку FreeDNS и кликаем строчку Dynamic DNS в меню левого верхнего угла страницы.
Получаем приглашение залогиниться и выбираем создание нового аккаунта Setup an account here
заполняем форму и ждем письма с подтверждающей ссылкой.

Перейдя по ссылке получаем приглашение создать новое субдоменное имя.
Выбирайте любой из халявных доменов. Тип можно оставить А. Главное не ставьте галочку разрешающую другим использовать ваш субдомен для создания новых субдоменных имен иначе рискуете быть заблокированным за спам о котором ничего не знаете.
В результате у нас есть уникальное имя и пришло время вашему серверу настроить с ним  связь. Некий процесс на вашем сервере должен периодически логинится на сервис DNC имен и предъявлять ваш текущий IP адрес. Это может делать коммутатор, программа-клиент типа (ddclient) или даже менеджер закачек — wget вместе со службой выполнения задач по расписанию — cron.
Осталось скачать настройки для cron по ссылке quick cron example и подставить их в настройки. Нас интересует последняя строчка в конце скачанного файла:
3,8,13,18,23,28,33,38,43,48,53,58 * * * * sleep 15 ; wget --no-check-certificate -O - https://freedns.afraid.org/dynamic/update.php?_хэш_ключ_>> /tmp/freedns_cleaner_ignorelist_com.log 2>&1 &
первую череду цифр правильнее заменить на
*/5 * * * * sleep 49 ; wget -O - http://freedns.afraid.org/dynamic/update.php?https://freedns.afraid.org/dynamic/update.php?_хэш_ключ___>> /tmp/freedns_cleaner_ignorelist_com.log 2>&1 &
Собственно, работу команды можно потестить в окне терминала.
wget -O - http://freedns.afraid.org/dynamic/update.php?https://freedns.afraid.org/dynamic/update.php?_хэш_ключ___>> /tmp/freedns_cleaner_ignorelist_com.log 2>&1 &
Если хотим одновременно IPv4 и IPv6 можно использовать сгенеренные скрипты для обоих адресов подряд. Добавляем задание используя редактор gedit:

sudo EDITOR=gedit crontab -e
В первый раз терминал ответит: no crontab for root - using an empty one Вставляем строчку инициализации в конец редактируемого файла и сохраняем результат. В ответ: crontab: installing new crontab
Можете перезагрузиться.

Пора тестировать старые сервисы. Помните, что для их работы на том-же сервере коммутатор должен поддерживать loopback. Для новых сервисов не забываем пробрасывать порты — функция NAT->Virtual Servers коммутатора.

2 комментария:

  1. привет! а зачем перед выполнением пауза? какой в ней сакральный смысл?

    ОтветитьУдалить
    Ответы
    1. Что бы дать время загрузиться системе и прочим основным сервисам.

      Удалить