Как лучше всего использовать публичное доменное имя для доступа к серверу, работающему на моем ноутбуке?
Примечание: IP-адрес моего ноутбука не является статическим и может находиться где угодно: в моей квартире, в кафе, быть привязанным к моему мобильному телефону и т. д.
Вариант использования
Вариант использования — отладка. В частности, для разработки Amazon Lambda, где удаленная отладка на самом деле не поддерживается. Мне нужны внешние сервисы, такие какТвилиоиСлакчтобы иметь возможность запускать экземпляр API отладки, чтобы я мог устанавливать точки останова и выполнять код по шагам.
Возможные решения
Я слышал, что что-то под названием "DNS Tunnel" может быть хорошим способом. Или, может быть, что-то вроде OpenVPN? Я недостаточно разбираюсь в сетях, чтобы знать, с чего начать.
решение1
Я все еще ищу лучшее решение этой проблемы, но решил опубликовать то, что мне удалось найти.
Существуют бесплатные и платные сервисы, которые могут облегчить это. Некоторые сервисы платные, поскольку для этого требуется фактический промежуточный сервер для туннелирования. Бесплатные сервисы обычно имеют платную опцию.
Обычно бесплатные сервисы предоставляют только эфемерный поддомен. Что хорошо для многих вещей, но не если вам нужно отладить, как внешние сервисы, такие как Twilio, взаимодействуют с вашим API, потому что вы будете постоянно заходить и менять настройки URL.
Я не нашел бесплатного сервиса, предоставляющего постоянный поддомен, который решил бы большинство проблем, с которыми я сталкивался при использовании бесплатных сервисов.
Самый очевидный платный сервис — ngrok.com, но цены там действительно высокие.
На этой странице Github представлен полный список бесплатных и платных сервисов: https://github.com/anderspitman/awesome-tunneling
Вот некоторые из бесплатных сервисов, требующих установки на публичном сервере, которые я там видел:
Платная услуга, которая мне особенно понравилась: