@PEACE_dez

Как организовать сетевую ( интернет) коммуникацию между девайсами, БЕЗ IP?

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

Задача : есть много-много разбросанных по миру девайсов ( пусть будет IoT).
Система - децентрализованная ( тоесть нет никакого "главного" сервера).
каждому девайсу можно назначить свой уникальный ID.

Вопрос:
Как организвать связь между ними, чтобы каждый из девайсов, указав ID другого,
мог с ним связаться?
Через IP - не выйдет, они могут подкл к инету в разных местах,
и даже если и удастся привязать к IP - 99% что это будет динамический адрес.
( и, подозреваю/боюсь, что раз нет IP , то и систему DNS серверов тоже заюзать не удастся ?)
( а как же тогда? не хочется слать широковещательный запрос тыщам девайсов по всему миру..)

//и на вс случай: ничего плохого не задумываю. Это не бот-нет или иная затея чтобы кому то нагадить)
  • Вопрос задан
  • 145 просмотров
Пригласить эксперта
Ответы на вопрос 3
dollar
@dollar
Делай добро и бросай его в воду.
Совсем без IP - никак.

А так можно, чтобы девайсы сканировали весь Интернет на предмет наличия друг друга. Когда выяснены ip и порты друг друга, то дальше уже можно натягивать шифрованные каналы и т.д. Те девайсы, которые с белыми (выделенными) ip, могут взять на себя роли временных серверов и координировать остальных. Как-то так.

DNS - вообще практически не нужен. Он для людей, а не для девайсов. Но если его использовать как систему регистрации ip, то польза есть, но тогда нарушается условие про децентрализацию. Если уж мутить координацию через сервер, то есть и другие решения, помимо dynamic dns.
Ответ написан
@Drno
Ну мы из этой ситуации вышли поднятием своего ВПН сервера...

можно ее попробвоать способом которым IP камеры конектятся... там типо p2p по IDшникам... но я не разобрался. кто вкурсе - скиньте сервер\клиент где нарыть)
Ответ написан
@rPman
Смотри как работают сети, используемые приложениями нодами для криптовалют и клиенты торрент, сомотреть как реализован dht

Выход за nat с помощью upnp, при использовании udp можно подключиться к 'чужому' каналу. Каждое устройство должно хранить список последних id:ip:port по каждому устройству или подмножеству, достаточному для связности, каждое устройство при выходе в сети обновляет информацию о себе и загружает оперативно обновление от других.

Первоначальный список ip адресов кто то по любому должен выдать, используя либо жестоко забитый домен в клиенте, где будет гарантировано запущена первая нода, собственно через dns первоначальный список нод так, называется dnsseed, а последствии эту главную ноду можно будет закрыть, а ip адреса в dns выдать о постоянных узлах сети
upd. .. либо спросить пользователя, например для подключения к сети уже рабочая нода должна выдать 'инвайт', например в виде qr-кода, в котором будет адрес эту ноды.

В локальной сети можно искать работающие ноды широковещательными рассылками или тупым перебором адресов, для рассылок нода должна их соответственно слушать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы