Как использовать самостоятельный DDNS как часть потребительского продукта (потенциально >>1000 поддоменов)?

Как использовать самостоятельный DDNS как часть потребительского продукта (потенциально >>1000 поддоменов)?

Я разрабатываю продукт, который позволяет пользователям запускать службу дома, которая является частью более крупной сети. С этой службой должна регулярно связываться служба координации, работающая в облаке (на VPS). Механизм, реализованный для этого, полагается на обычный переадресацию портов на маршрутизаторе пользователя, выходящем в Интернет, но также нуждается в надежном способе обнаружения: введите DDNS.

Я хотел бы реализовать службу DDNS, которую можно было бы легко настроить с помощью службы, запущенной у пользователя (представьте, что служба просто имеет дополнительную функциональность клиента обновления DDNS). (Вы можете спросить, почему бы службе просто динамически не обновлять свойство "externalIP" и не информировать службу координации, но по нескольким причинам предпочтительнее сохранять эту конфигурацию статической и иметь постоянный контактный псевдоним для службы за брандмауэром пользователя)

На стороне сервера я надеюсь обойтись решением, которое может легко работать на VPS и предоставлять DDNS, например someuniqueid.nodes.mydomain.com(где mydomain.comпринадлежит мне и указывает на VPS).

Решение должно надежно поддерживать потенциально тысячи клиентов (уникальные идентификаторы). (Для надежности координация, DDNS и вспомогательные службы, вероятно, будут масштабироваться с помощью k8s в конфигурации HA).

Есть ли какие-нибудь идеи относительно возможного эффективного решения этой проблемы?

решение1

Предположение, что

это опирается нанормальныйпереадресация портов на маршрутизаторе пользователя, подключенном к Интернету

будет надежно работать без вмешательства «эксперта», для большинства ваших пользователей, вероятно, имеет недостатки.

Типичное решениеhttps://en.m.wikipedia.org/wiki/Универсальный_Подключи_и_Воспроизведине поддерживается повсеместно.

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

В общем, вы видите, что клиенты используют центральный сервер/сервис (через https на порту https по умолчанию), а не одноранговые соединения, и тогда вам не нужно назначать имена DNS для поиска ваших пользователей. Ваши пользователи найдут вас (или, скорее, ваши серверы)

что делает ваш вопрос и предполагаемое решение путем, по которому вам просто не следует идти.

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