В контексте веб-приложения, включающего клиентов и веб-службу (сервер), я хочу иметь HTTP-связь клиента с сервером через Интернет.

Мне известно, что IP-адрес является динамическим и может изменяться, поэтому невозможно идентифицировать сервер по его IP-адресу для связи.

Я знаю, что могу использовать доменное имя. На самом деле у меня его нет, но я нашел несколько онлайн-сервисов, таких как NoIP, для этого. Тем не менее, я хотел бы знать, есть ли другие решения для такой проблемы.

Я слышал о туннелировании или о чем-то подобном, но понятия не имею об этом.

Заранее спасибо.

2 ответа2

0

Если проблема заключается в том, что ваш интернет-провайдер меняет ваш IP-адрес, вы можете попросить его указать фиксированный IP-адрес (некоторые интернет-провайдеры просят оплатить выделение этого номера). Обратите внимание, что обычно, пока маршрутизатор не выключен, он будет сохранять свой внешний IP-адрес.

Или вы можете использовать динамический DNS-сервис, который дает вам DNS-адрес на их сервере, который автоматически обновляется при загрузке вашего компьютера или маршрутизатора. Прошивка моего роутера имеет такую возможность. Примером является Dyn DNS.

0

Как установить связь между клиентом и сервером без доменного имени?

Вы можете использовать соответствующие IP-адреса для установления связи.

IP-адрес сервера является динамическим и может измениться.

В этом случае использование доменного имени является лучшим решением. Доменные имена - это просто понятные псевдонимы для IP-адресов.

Я слышал о туннелировании, но понятия не имею об этом.

Туннелирование обычно используется, чтобы помочь данным проходить через сеть, что в противном случае было бы невозможно. Однако, насколько мне известно, для этого обычно требуется известное место назначения.


Я знаю, что могу использовать доменное имя. Тем не менее, я хотел бы знать, есть ли другое решение этой проблемы.

Теоретически, если вы не хотите, чтобы доменное имя подключалось непосредственно к самому серверу, вы могли бы заставить сервер обновлять клиенты о своем IP-адресе с помощью других средств.

Гипотетически, вы могли бы:

  1. Пусть сервер свяжется с клиентами напрямую для этого обновления.

  2. Пусть сервер свяжется с не связанным сайтом и отправит свой IP-адрес в виде текста, доступного через Интернет, на этот сайт.

В любом случае небольшая программа на клиенте получит / получит эти данные. Как эти данные будут использоваться на клиенте, будет зависеть от вас. Некоторые мысли могут быть:

  1. Оставьте это как текстовый файл.

  2. Запишите IP в системный файл hosts .

  3. Создайте скрипт для запуска определенной программы / процесса с соответствующим IP.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .