Как подключиться к компьютеру, у которого нет публичного IP-адреса

Как подключиться к компьютеру, у которого нет публичного IP-адреса

например, я мог бы запустить веб-сервер на моем компьютере с подключением к маршрутизатору, который предполагает, что у него нет публичного IP-адреса. Как я могу отправить на него данные с другого клиента или сервера?

Веб-сокет кажется многообещающим, но мне нужно решение с хорошей поддержкой в ​​командной строке, не требующее изменения настроек маршрутизатора, таких как переадресация портов.

решение1

Перенаправление порта

Переадресация портов — это, безусловно, самое простое решение.

Обратный SSH-туннель

Другой способ — задействовать сторонний общедоступный сервер в качестве ретранслятора. Вам придется инициировать соединение с этим сторонним сервером с веб-сервера (поскольку ваш маршрутизатор блокирует входящие соединения), а затем использовать это соединение для ретрансляции HTTP-трафика через сторонний сервер.

Это почти наверняка можно сделать с помощью SSH-туннелирование

Мне часто нужно получитьдоступ к машине за брандмауэромдля веб-разработки, но у меня нет VPN. Не проблема — просто используйте обратный SSH-туннель. К концу этого руководства мы сможем подключаться по SSH к удаленному серверу, а такжепросмотреть любые веб-страницы, к которым сервер имеет доступ.

(выделено мной)

решение2

В качестве альтернативы туннелированию ssh вы можете рассмотреть туннелирование ipv6. Я используюgogo6/freenet6 как провайдер ipv6(хотя есть и другие провайдеры). В Windows клиент обычно просто работает. В Linux вам нужно будет скомпилировать клиент. Однако после этого вы сможете получить доступ к системе через любую систему, поддерживающую ipv6.

Преимущество настройки туннеля IPv6 заключается в том, что вы можете выполнять все действия так, как будто это обычный публичный IP-адрес, поскольку так оно и есть.

Связанный контент