2015-07-29 8 views
4

У меня есть веб-приложение, подножка в фронтальном сети, которая соединяет через протокол TCP WebSocket на Android устройства в той же локальной сети через Wi-Fi.Обнаружение служб в локальной сети с помощью WebSockets

В настоящее время устройство Android устанавливает сервер WebSocket (поскольку большинство веб-браузеров не поддерживают сервер WebSocket, создавая его, которое выступает в качестве сервера), и я вручную вставляю IP-адрес устройства в веб-приложение и нажимаю «connect ", чтобы начать общение.

Я хотел бы автоматически выполнять эту связь, делая веб-приложение для поиска WebSocket серверов в локальной сети. Как это может быть сделано? Будет ли применяться грубая сила, пытаясь подключиться ко всем возможным IP-адресам? Есть ли другой эффективный подход?

спасибо.

ответ

1

Итериальный подход будет работать, если подсеть мала, большинство домашних маршрутизаторов имеют небольшие подсети ... Однако в более сложной сети итеративный подход не был бы осуществим, вам нужно будет использовать протокол обнаружения службы, например mdns или ssdp. Однако они, вероятно, недоступны для веб-браузера, лучшим вариантом в качестве альтернативы будет сервер, сидящий в Интернете, где устройства могут встречаться и обмениваться информацией локального IP-адреса ... Однако, если сеть достаточно сложна, даже устройства с тем же внешним IP-адресом, возможно, не сможет связываться между их соответствующими подсетями.

+0

Исправить. В конце я использовал итеративный подход, поскольку подсеть была небольшой. – Alex

 Смежные вопросы

  • Нет связанных вопросов^_^