Dynamic DNS client в unix

DynDNSВ этой статье я не буду расписывать что такое сервис Dynamic DNS, что такое внешний ip и зачем делать привязку доменного имени к вашему ip адресу. Предполагается, что у вас уже есть аккаунт с сервера www.dyndns.com а также вы скачали клиента ddclient, т.к. сегодня я хочу рассказать именно о нем.

Для пользователей ubuntu linux я хочу только посоветовать следовать всем инструкциям и внимательно вбивать ответы на вопросы 🙂 Т.к. правка конфига и всякие вкусности будут сопровождать вас на всем протяжении


sudo apt-get install ddclient

Для freebsd систем клиента можно поставить из портов.

Для остальных ОС установка клиента тоже проста до безобразия. В readme все написано, но кому лень читать приведу здесь.
Заходим в папку к ddclient и выполняем


  cp ddclient /usr/sbin/
  mkdir /etc/ddclient
  mkdir /var/cache/ddclient
  cp sample-etc_ddclient.conf /etc/ddclient/ddclient.conf

Настройка ddclient.conf и запуск сервиса.

1. Выполним команду для просмотра ip на сетевых интерфейсах, а также посмотрим работает ли команда ddclient.


# ddclient -daemon=0 -query
use=if, if=lo address is 127.0.0.1
use=if, if=eth0 address is 192.168.0.1
use=web, web=dyndns address is 91.122.xx.xx

Все работает, наш внешний адрес мы увидели.
2. Теперь правим ddclient.conf и приводим его к такому виду


daemon=300       # проверять смену адреса каждые 300 сек
syslog=yes         # записываем действия в системный журнал
mail=root            # кому шлем письма об успешном обновлении
mail-failure=root                  # кому письма об ошибках
pid=/var/run/ddclient.pid
ssl=no                                  # не используем метод ssl

login=mik                #логин на dyndns.com
password=password           #пароль на dyndns.com

use=web      #метод определения анешнего ip-адреса
use=if, if=eth3      #интерфейс где определим этот эдрес

server=members.dyndns.org,       \  #сервер
protocol=dyndns2                        \ #протокол
hostname.dyndns.com                #ваш зарегистрированный домен

Вот и все. Можно запускать первое тестовое принудительное обновление ip.


ddclient -force

Если обновление ddns прошло успешно, то можно ставить сервис в автозагрузку. Если не успешно, то смотрим логи syslog.
Для redhat подобных систем в каталоге ddclient есть примеры стартовых скриптов.
Выполняем


  cp sample-etc_rc.d_init.d_ddclient /etc/rc.d/init.d/ddclient
#добавим в стартовые скрипты
  /sbin/chkconfig --add ddclient
#первый раз стартуем руками
  /etc/rc.d/init.d/ddclient start
#не забываем про команды остановки и рестарта
  /etc/rc.d/init.d/ddclient stop
  /etc/rc.d/init.d/ddclient restart

Нюансы, если у вас статический ip адрес.

Dyndns.com требует чтобы у вас раз в 15 дней проходило обновление вашего хоста, а иначе DDNS посчитает, что ваш хост неактивный. Я столкнулся с этой проблемой, когда перешел на статику. Т.к. адрес у меня не меняется, то и ddclient не хотел обновлять мой ip.
Выход я нашел – прописал в ddclient.conf


use=ip, ip=91.122.xx.xx        # static IP's

static=yes,                             \
server=members.dyndns.org,              \
protocol=dyndns2                        \
hostname.dyndns.com

И не стал запускать ddclient как сервис, а просто поставил в crontab раз в неделю обновлять ip по принуждению командой ddclient -force.

Кстати, вот еще такой способ обновлять ваш ip адрес через браузер, но для этого надо знать свой ip. В браузере набираете в одной строчке

http://Login_DynDNS:Password@members.dyndns.org/nic/update?
system=dyndns&hostname=you_hostname.dyndns.com&myip=91.122.xx.xx

Только почистите потом историю браузера, чтобы не светить пароль 🙂

Возможные проблемы:
Если вы уверены, что все правильно сделали, а обновление адреса подвисает и тупит долгое время а потом не обновляется, то скорей всего проблема в вашем firewall. Должен быть доступ с сайта members.dyndns.org с 80 порта на ваш хост.
Например для iptables в linux. (пишем в одну строку)


iptables -A INPUT -i eth3 -p tcp -s 204.13.248.112/32 --source-port 80
 -d Ваш_IP --destination-port 1024:65535 -j ACCEPT

204.13.248.112/32 – это members.dyndns.org

Вроде все…

Запись опубликована в рубрике Программы с метками , , , , . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *