Должен ли удаленный TCP-сервер работать только с публичным IP-адресом

270
reddi hari

Я подключил модуль GSM (Uni4 SIM800) к модулю Raspberry-pi-3B, используя AT-команды для запуска простого TCP-сервера и другую пару GSM и Rospberry-pi для запуска TCP-клиента. Теперь оператор связи (ISP) назначит IP-адреса модулям GSM, тогда мои вопросы

  1. Являются ли эти назначенные IP-адреса общедоступными?
  2. Если да и если IP-адрес сервера известен, может ли мой клиент подключиться к этому серверу?
  3. Если назначенные IP-адреса являются частными, может ли мой клиент подключиться к серверу? и как?.
  4. Когда IP-адрес сервера периодически изменяется, есть ли способ узнать IP-адрес сервера от клиента перед началом последовательности соединений TCP (например, сканирование хоста или использование известного MAC / IMEI-адреса сервера).
-1

1 ответ на вопрос

1
RalfFriedl
  1. Возможно, но не вероятно.
  2. Да, но смотри 1.
  3. Навряд ли. Возможно, если они находятся в одной сети, если только провайдер не блокирует это.
  4. Сервер должен опубликовать свой адрес, используя что-то вроде DynDNS.

Если у вас есть личный адрес, лучше всего подключиться к VPN-серверу и принять соединения оттуда.