тут человек мучает меня вопросом, есть у него сервер на windows в локальной сети, есть белый ip — арендовал у провайдера. хочет этот белый ip прицепить к серверу, чтобы ходить на него откуда угодно. как сделать не знает. я погуглил, тоже ничего не нашел, даже минимального понимания.
есть роутер. кроме этого ip-адреса ничего больше у него нет.
подскажите плз просто в общих в чертах, без конкретики, какая последовательность действий?
Здравствуйте, Dair, Вы писали:
D>Здравствуйте, dmitry251, Вы писали:
D>>есть роутер.
D>На роутере найти port forwarding, прокинуть нужный порт с роутера на нужный адрес этого "сервера на windows".
Есть такое, да. но как узнать какой порт "нужный"?
Т.е. получается это провайдер должен направить выданный белый ip на [куда? адрес роутера?] и выдать порт???
Здравствуйте, dmitry251, Вы писали:
D>Есть такое, да. но как узнать какой порт "нужный"?
D>Т.е. получается это провайдер должен направить выданный белый ip на [куда? адрес роутера?] и выдать порт???
Провайдер должен только выдать белый IP.
Мысленно удалим роутер и подключим этот компьютер непосредственно к проводу от провайдера. Установим на нем этот белый IP. Все, что идет на этот IP, попадет на этот компьютер.
Теперь вернем роутер и белый IP дадим ему. Все пойдет на него, а он должен перебросить на этот компьютер.
Какие порты — зависит от того, что там на этом сервере. Если там HTTP сервер, то 80 обычно, если FTP — 21 и 22. Ну и т.д.
Здравствуйте, dmitry251, Вы писали: D>>На роутере найти port forwarding, прокинуть нужный порт с роутера на нужный адрес этого "сервера на windows". D>Есть такое, да. но как узнать какой порт "нужный"?
От того, как именно планируется "подключаться" к "серверу на windows".
D>Т.е. получается это провайдер должен направить выданный белый ip на [куда? адрес роутера?] и выдать порт???
Нет. От провайдера только IP-адрес. Порты — сами, сами.
Рекомендую почитать какой-нибудь faq на тему работы IP-сетей, как там что устроено.
Здравствуйте, dmitry251, Вы писали:
D>тут человек мучает меня вопросом, есть у него сервер на windows в локальной сети, есть белый ip — арендовал у провайдера. хочет этот белый ip прицепить к серверу, чтобы ходить на него откуда угодно. как сделать не знает. я погуглил, тоже ничего не нашел, даже минимального понимания.
Лучше с таким уровнем понимания никак. Потому что следующий от него вопрос будет, как извести из сервера на windows 100500 вирусов, которые весело на нем резвятся, мешая друг другу.
Здравствуйте, Pavel Dvorkin, Вы писали:
D>>Т.е. получается это провайдер должен направить выданный белый ip на [куда? адрес роутера?] и выдать порт???
PD>Провайдер должен только выдать белый IP.
Собственно, если речь идет об исходящих соединениях, то ничего больше делать не надо.
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Какие порты — зависит от того, что там на этом сервере. Если там HTTP сервер, то 80 обычно, если FTP — 21 и 22. Ну и т.д.
Я сталкивался с ситуацией, когда прокидывание 80 порта не работало. Вероятно потому, что на нём висел веб-интерфейс этого роутера. Понятно, что он снаружи не доступен, но — не работало.
Здравствуйте, Dair, Вы писали:
D>Здравствуйте, dmitry251, Вы писали: D>>>На роутере найти port forwarding, прокинуть нужный порт с роутера на нужный адрес этого "сервера на windows". D>>Есть такое, да. но как узнать какой порт "нужный"?
D>От того, как именно планируется "подключаться" к "серверу на windows".
D>>Т.е. получается это провайдер должен направить выданный белый ip на [куда? адрес роутера?] и выдать порт???
D>Нет. От провайдера только IP-адрес. Порты — сами, сами.
D>Рекомендую почитать какой-нибудь faq на тему работы IP-сетей, как там что устроено.
D>Я быстро нагуглил статью от 2007 года.
спасибо, но... гм, это получается в перенаправлении порта я просто пишу любой порт например 11111 как внешний, и указываю внутренний локальный ip "сервера на windows" и внутренний порт который мне нужен — например 80.
и теперь открывая [публичый ip]:11111 я должен увидеть стартовую страницу IIS так?
такого не происходит =) tracert выдает только одну позицию pppoe...xxx сервер провайдера и больше ничего.
Здравствуйте, vsb, Вы писали:
vsb>Я сталкивался с ситуацией, когда прокидывание 80 порта не работало. Вероятно потому, что на нём висел веб-интерфейс этого роутера. Понятно, что он снаружи не доступен, но — не работало.
Я думаю, что это должно как-то лечиться, если болезнь в этом. Я не могу представить себе, что создатели роутера сделали его таким, что нельзя за ним иметь web-сервер.
Здравствуйте, Pavel Dvorkin, Вы писали:
vsb>>Я сталкивался с ситуацией, когда прокидывание 80 порта не работало. Вероятно потому, что на нём висел веб-интерфейс этого роутера. Понятно, что он снаружи не доступен, но — не работало.
PD>Я думаю, что это должно как-то лечиться, если болезнь в этом. Я не могу представить себе, что создатели роутера сделали его таким, что нельзя за ним иметь web-сервер.
Ну очевидных способов лечить я не нашел. 443 порта мне в принципе хватило. Подозреваю, что порты обычно прокидывают для игр и тд, а не для веб-серверов, по крайней мере на домашних роутерах.
Здравствуйте, dmitry251, Вы писали:
D>>Я быстро нагуглил статью от 2007 года. D>спасибо, но... гм, это получается в перенаправлении порта я просто пишу любой порт например 11111 как внешний, и указываю внутренний локальный ip "сервера на windows" и внутренний порт который мне нужен — например 80. D>и теперь открывая [публичый ip]:11111 я должен увидеть стартовую страницу IIS так?
да.
D>такого не происходит =) tracert выдает только одну позицию pppoe...xxx сервер провайдера и больше ничего.
Здравствуйте, Dair, Вы писали:
D>Здравствуйте, dmitry251, Вы писали:
D>>>Я быстро нагуглил статью от 2007 года. D>>спасибо, но... гм, это получается в перенаправлении порта я просто пишу любой порт например 11111 как внешний, и указываю внутренний локальный ip "сервера на windows" и внутренний порт который мне нужен — например 80. D>>и теперь открывая [публичый ip]:11111 я должен увидеть стартовую страницу IIS так?
D>да.
D>>такого не происходит =) tracert выдает только одну позицию pppoe...xxx сервер провайдера и больше ничего.
D>tracert откуда куда?
мммм. точно. поскольку все происходит у одного провайдера то одна строчка и должна быть.
Здравствуйте, Pavel Dvorkin, Вы писали:
Pzz>>Собственно, если речь идет об исходящих соединениях, то ничего больше делать не надо.
PD>Несомненно. Даже белый IP не нужен, если имеют место только исходящие соединения. NAT все сам сделает.
Не, ну может кому надо в такие места заходить, куда с "левых" IP не пускают. Такое встречается, хоть и не часто.
Здравствуйте, dmitry251, Вы писали:
D>спасибо, но... гм, это получается в перенаправлении порта я просто пишу любой порт например 11111 как внешний, и указываю внутренний локальный ip "сервера на windows" и внутренний порт который мне нужен — например 80. D>и теперь открывая [публичый ip]:11111 я должен увидеть стартовую страницу IIS так?
Теперь мысленно отсоединим от роутера провайдера и на роутер повесим 2 компьютера. Получится локальная сеть, без Интернета.
На первом компьютере развернем IIS. На 80 порту, естественно. Допустим, его IP 192.168.0.1
Второй компьютер делает на него запрос 192.168.0.1:80 и получает стартовую IIS.
Теперь восстанавливаем связь с провайдером. Пусть у роутера белый адрес a.b.c.d
Запрос из внешнего мира придет на a.b.c.d:80. А не на 11111, потому что никто в нормальных условиях запросы для HTTP по порту 11111 не делает, а делает по 80
Вот и надо перебросить 80 порт от роутера на 192.168.0.1 на порт IIS, то есть тоже на 80
D>такого не происходит =) tracert выдает только одну позицию pppoe...xxx сервер провайдера и больше ничего.
tracert — это ICMP протокол, для него нет порта вообще.
Здравствуйте, dmitry251, Вы писали:
D>>>такого не происходит =) tracert выдает только одну позицию pppoe...xxx сервер провайдера и больше ничего. D>>tracert откуда куда?
D>мммм. точно. поскольку все происходит у одного провайдера то одна строчка и должна быть.
Больше скажу — traceroute — он про пинги.
Проверять проброс портов рекомендую снаружи настраиваемой сети.
Например, выключив в смартфоне вайфай и с его броузера.
Здравствуйте, dmitry251, Вы писали:
D>я вот к нему щас подключился удаленно, открываю в браузере этот самый белый ip. D>выдается пустая корневая директория "\"
D>получается, что какой-то комп отвечает.
D>как понять, какой? =) в роутере для 80 порта ничего не настроено.
Если последнее правда, то, видимо, кто-то висит на 80 порту. Например, сам роутер. Можно открыть URL не браузером, а curl'ом, тогда увидишь заголовки ответа и там будет имя и версия сервера, может, наведёт на мысль, но маловероятно.
А если настроить проброс другой пары портов, например, 3000:3000 и настроить сервер на этот порт? Причём, сервером может быть любой скрипт или программа, например, https://gist.github.com/huyng/814831.
Кстати, помимо NAT как проброса отдельных портов на внутренний комп, есть ещё DMZ, который пробрасывает все порты на заданный внутренний ip.
И ещё, а есть уверенность, что этот "белый ip" — ваш? Может, кто-то другой на нём? Что выдаёт http://httpbin.org/ip, если открыть ссылку из-под того компа?
А вообще, лучше попросить/заказать какого-то спеца и дать ему удалённый доступ (TeamViewer или аналог), а не гадать, не имея опыта.