Страница 1 из 3

Доступ к созданному домену по динам. ip

Добавлено: 19 июл 2013, 15:12
okouser
Добрый день.
Прочитал подобные темы, но ответа для себя не нашел. Может, что-то пропустил.
Проблема такова.
Необходимо иметь доступ к определенному домену через Open Server по динамическому ip-адресу, просто вводя строку вида http://ip/.
Пока что при доступе таким образом отображается лишь пустая страница, но доступ есть, просто неясно, к какому домену идет запрос.
В настройках сервера указано использование всех доступных ip. Папка localhost переименована в openserver. Проброс портов на маршрутизаторах настроен.
На форуме есть много отсылок к использованию алиасов, но поскольку ip-адрес может постоянно меняться, это не подходит.
Хочется сразу заметить, как это решалось в денвере. Там в файлах .htaccess необходимого домена можно было задать строку вида
dnwr_ip ip_адрес_сетевого_интерфейса
И происходило перенаправление на этот домен при доступе с заданного сетевого интерфейса.
И в настоящее время, если просто переносить папку из Open Server в Denwer, то доступ по ип-адресу с перенаправлением работает.

Добавлено: 20 июл 2013, 20:00
okouser
Продолжение истории.
Решил все-таки протестировать ту или иную доступность.
Сначала протестировал доступ по 80-му порту.
Из внешки запросов нет вообще. Из локальной сети доходит, в логах пишется:
имя_домена: ip_источника [20/Jul/2013:17:26:41 +0300] "GET / HTTP/1.0" 304 - "-" параметры_браузера
Но каково же было мое удивление, когда на аналогичные запросы из внешки, но на 443-й порт, в логах оказалось:
имя_домена: ip_внешнего_источника [20/Jul/2013:17:26:01 +0300] "GET / HTTP/1.0" 400 950 "-" "-"
Во-первых, почему есть коннект на 443-й порт?
Во-вторых, почему тогда нет коннекта на 80-й порт?

Добавлено спустя 2 часа 27 минут 17 секунд:
В общем, оказалось, что блокировка 80-го порта происходит на уровне провайдера.
Так что частично вопрос снимается.
Но вопрос, почему автор не хочет реализовать сходную с денвером функциональность по привязке динамических адресов к определенному сетевому интерфейсу, непонятно.
В самом простом случае можно отслеживать по таймеру каждый сетевой интерфейс и текущий внешний ip по нему, и динамически вписывать новые алиасы в Default_aliases.txt, и потом перезагружать сервер.
В принципе, эту дополнительную функциональность можно и самому дописать в виде костыля, но если автор добавит ее в виде отдельных пунктов настроек будет вообще отлично.
В любом случае спасибо за разработку.

Добавлено: 23 июл 2013, 09:35
S30N1K
okouser, так в настройках самой программы можно вписывать алиасы же.

Добавлено: 23 июл 2013, 21:45
okouser
Я же вроде детально описал ситуацию.
Если ip-адрес динамический, сил не хватит вписывать алиасы.
А если сделать алиас на локальный адрес адрес сетевого интерфейса, то перенаправление происходит только при доступе по локальной сети.
Именно поэтому в денвере была команда dnwr_ip, которая могла повесить домен на локальный адрес некоторого сетевого интерфейса, оставляя к нему доступ извне по внешнему адресу этого интерфейса.

Добавлено: 25 июл 2013, 16:38
Ganster41
Для таких целей есть сервисы типа dyndns. Зачем нужны эти костыли?

Добавлено: 25 июл 2013, 16:45
okouser
Зачем нужны эти костыли?
Уже получше вопросы.
Рассказываю.
В некоторых сетях доступ к сайтам, хостящимся с помощью сервисов вида dyndns, блокируется по доменному имени, а по прямому ip-адресу нет.
Тем более, любой DNS-сервер всегда может накрыться, и нужно помнить, что стоит за красивыми адресами в окне браузера.
Так что доступ по динамическому ip очень нужная вещь. И в денвере не зря для этого придумали команды.
Кстати, указанную проблему удалось решить без костылей, но сначала хочется услышать комментарии Максима по этому поводу (особенно в контексте документации http://open-server.ru/wiki/doku.php?id= ... 1%83%D0%BF).

Добавлено: 31 июл 2013, 15:46
Максим
Прочитал бегло всю вашу канитель... в общем что могу сказать, читайте документацию. Там ясно написано, что нужно вписать * вместо IP, т.е. выбрать работу на всех доступных адресах, хотя в данном случае вам это нужно из-за динамического IP. И по поводу доступа по IP вам правильно сказали, настраивайте DynDNS, иначе как же вы будете получать доступ к домену при отсутствии статического IP адреса.

Добавлено: 31 июл 2013, 16:26
okouser
Всё это было сделано. И все проблемы удалось решить, причем, как я понимаю, вопреки документации.
Но вопрос ведь был в другом.
Объясняю на пальцах.
Вот, допустим, у меня домен (без всяких DynDNS) с динамическим ip. По идее, на хост можно заходить и просто по ip. В денвере для привязки сетевого интерфейса (в том числе с динамическим ip-адресом) к определенному локальному домену использовалась директива dnwr_ip в соответствующем .htaccess.
Вы же утверждаете, что в Open Server для привязки конкретного домена к определенному сетевому интерфейсу нужно явным образом прописывать алиасы вида ip - домен (что в случае динамических ip категорически не подходит), и никак иначе. В документации ведь не сказано, что прописывая "*", домены становятся доступными извне по всем сетевым интерфейсам.
"*" (согласно документации) ведь означает только то, что Open Server будет прослушивать запросы всех сетевых интерфейсов?
Так?

Добавлено: 31 июл 2013, 16:39
Максим
okouser писал(а):По идее, на хост можно заходить и просто по ip.
Можно, если сделаете алиас.
okouser писал(а):В денвере для привязки сетевого интерфейса (в том числе с динамическим ip-адресом) к определенному локальному домену использовалась директива dnwr_ip в соответствующем .htaccess.
Перестаньте писать слово интерфейс. Привязывается не интерфейс, а IP адрес.
okouser писал(а):Вы же утверждаете, что в Open Server для привязки конкретного домена к определенному сетевому интерфейсу нужно явным образом прописывать алиасы вида ip - домен (что в случае динамических ip категорически не подходит), и никак иначе.
Да. Это написано в документации. Только не к интерфейсу привязка, а к IP адресу. Перестаньте использовать это слово, идентификатором сетевого интерфейса является MAC адрес, который к серверу не имеет отношения.
okouser писал(а):"*" (согласно документации) ведь означает только то, что Open Server будет прослушивать запросы всех сетевых интерфейсов?
Да, будет прослушивать. Только без создания алиасов открываться ничего не будет, просто белый лист.

Добавлено: 31 июл 2013, 19:45
okouser
Перестаньте писать слово интерфейс
Так я же не интерфейс привязываю к ip, а домен. Сам сетевой интерфейс, конечно, привязывается к мак-адресу, но характеризуется он локальным и внешним ip-адресами. Не зря же получить ip-адреса во многих языках программирования можно именно у объектов класса NetworkInterface.
Только без создания алиасов открываться ничего не будет
Вот-вот. Я сам думал, что придется писать костыль в виде приложения, отслеживающего ip в каждый момент времени и вносящего соответствующие изменения в алиасы.
Но, кажется, не все так просто.
И вы сами того не желая как-то реализовали возможности, схожие с командой dnwr_ip.
Поскольку мне удалось, удалив из соответствующего конфига апача (версия 2.4.4) раздел, связанный с настройкой первичного виртуального хоста, дать доступ к сайтам домена именно по ip без ввода всяких алиасов.
Как это срабатывает я еще сам не разобрался. Но факт в том, что такой способ работает.