191

DDNS. Поиск и устранение проблем.

Вы зарегистрировались у провайдера DDNS (dyndns.com или no-ip.com). Настроили клиент DDNS. Настроили сервер у себя на компьютере (web, ftp или какой-нибудь игровой), но подключиться не удается. Для выявления проблемы следуйте это несложной инструкции (бета-версия, постепенно буду улучшать):


Этап 1. Сервер работает?

Для начала необходимо убедиться, что ваш сервер настроен правильно. Если вы подключаетесь к интернет через маршрутизатор, попробуйте подключиться к серверу используя его адрес в локальной сети (10.0.х.х или 192.168.х.х). Например у вас веб-сервер установлен на компьютере с внутренним ip 192.168.1.2. Для проверки откройте браузер и в адресной строке введите http://192.168.1.2/. Если страница отобразиться, значит сервер и фаервол настроены правильно. Если нет, проверяйте настройки веб-сервера, а также настройки фаервола. Если компьютер (он же сервер) подключен к интернет напрямую, то можно обратиться к серверу использую внешний ip, полученный от провайдера.

Если сервер на запросы из вне по-прежнему не отвечает, переходим к следующему этапу.

Этап 2. Открыт ли порт?

Проверить порт можно множеством способов. Как вариант предлагаю инструмент от Dyndns — Open Port Tool.

Open Port Tool

Open Port Tool

Красным отмечено поле в котором нужно указать номер тестируемого порта. Нажимаете кнопку Send и ждете ответ.
Возможны три варианта ответа:

  1. Connection Open— значит все ок. Никаких препятствий к подключению нет.
  2. Connection Refused или — порт открыт, но сервер отклоняет соединение. Следует проверить запущена ли служба/сервер и правильно ли настроен форвардинг портов на маршрутизаторе.
  3. Connection Timed Out — порт заблокирован. Порт может блокироваться провайдером, файерволом на маршрутизаторе или на компьютере. Проверьте настройку форвардинга портов на маршрутизаторе. Проверьте настройку файрвола на компьютере. На время тестирования можно полностью отключить файервол, если заработает — значит проблема в нем.

Этап 3. DDNS работает?

Откройте http://network-tools.com/nslook/Default.asp в поле domain введите ваш домен DDNS и нажмите ввод. В поле Answer records напротив имени домена будет указан ip-адрес на который указывает домен (на рисунке выделено красным внизу).

NSlookup

NSlookup

Теперь откройте http://checkip.dyndns.com:8245/. На этой странице будет указан ваш текущий внешний ip-адрес.
Если клиент DDNS настроен правильно, то этот ip должен совпадать с полученным через nslookup.
Обратите внимание, что в некоторых случаях обновление ip-адреса клиентом DDNS может занять до 10 минут (dyndns.com) или до 30 минут (no-ip.com).
Если адреса не совпадают, то проблема скорее всего в клиенте DDNS. Необходимо проверить настройки клиента (очень частая ошибка — опечатки в имени пользователя и при вводе пароля). В некоторых случаях имеет смысл поменять клиент. Например, если используется встроенный клиент маршрутизатора, отключите его и  поставьте программный клиент на компьютер.

Настройте фаервол так, чтобы клиент не блокировался. Клиент dyndns использует порт 80. В отличие от него клиент no-ip использует порт 8245, но с помощью опции «Use alternate port» его можно перенастроить на использование 80-го порта.

Что еще?

Loopback connection error. Очень частая проблема, когда не получается подключиться к серверу, находящемуся в той же локальной сети, с использованием внешнего ip или домена DDNS. При этом из вне подключение проходит без проблем. Причина в маршрутизаторе. Насколько мне известно, почти все Длинки страдают этим. На маршрутизаторах Linksys решить проблему можно активировав опцию «Filter Internet NAT Redirection» в настройках безопасности.

Также проблему можно решить прописав домен DDNS в файле hosts (делать это надо на компьютере, с которого пытаетесь подключиться).
Например вы зарегистрировали домен DDNS — mydomain.no-ip.org и сервер к которому вам необходимо обратиться находится в локальной сети по адресу 192.168.1.3.
Открываем папку c:\windows\system32\drivers\etc\ в ней открываем для редактирования файл hosts. Внизу файла прописываем:

192.168.1.3   mydomain.no-ip.org

Теперь при обращении к mydomain.no-ip.org с этого компьютера, домен будет связан не с внешним ip, а с внутренним.

Форвардинг портов. Еще известен как проброс портов, виртуальный сервер (Port Forwarding, Virtual Server). Маршрутизатору требуется указать куда пересылать пакеты (внутренний ip и номер порта) при получениии запроса на внешний порт.
Вот как это делается на моем Dlink DI-804HV. На компьютере с внутренним адресом 192.168.10.3 я запустил ftp сервер (порт 21, протокол TCP). На маршрутизаторе в разделе Virtual Server создаю следующее правило:

Проброс портов на Dlink DI-804HV

Проброс портов на Dlink DI-804HV

Ссылки:

Метки: Dynamic DNS (DDNS)