Intereting Posts
Дифференцирование отладочной и производственной сборки приложения для Android Как использовать шаблон Android MVVM с фрагментами? Приложение чата с использованием Firebase: получите уведомление при получении нового сообщения – Android Как импортировать новый модуль (проект библиотеки Android) с помощью Android studio 0.3.0 Как отключить отслеживание кликов по событию Framelayout Установленное соединение было прервано программным обеспечением вашей хост-машины Использование FragmentStatePagerAdapter БЕЗ поддержки библиотеки Парольная авария при создании пользователя Отключить уведомления в URI ContentProvider Android-браузер запускает браузер при вызове loadurl Почему datepicker добавляет календарь на мой взгляд? Как настроить пользовательский заголовок в запросе Volley Невозможно добавить библиотеку поддержки v7 AppCompat Что означает MEDIA_ERROR_SERVER_DIED? Как создать пользовательский макет уведомлений в android?

Доступ к беспроводной локальной сети (без шлюза) и мобильной сети одновременно

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

У меня есть малина Pi, и она работает как горячая точка среди прочего. По дизайну DHCP не передает шлюз по умолчанию. Моим вариантом использования является одно или несколько устройств, взаимодействующих с Pi в качестве сервера.

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

В данный момент:

IOS : Это работает точно так же, как я ожидаю в IOS – он чувствует, что сеть WiFi не имеет шлюза по умолчанию и отправляет внешний трафик по ячейке.

Android : Это не работает вообще. Android упорно видит WiFi подключен и отключает сотовый, даже со шлюзом по умолчанию.

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

Надеюсь, это имеет смысл. Вопрос: Как включить эту функциональность по всем направлениям в 2015 году? 🙂 Для моих целей, Pi как частная непрозрачная точка доступа работает лучше, чем WiFi напрямую или Bluetooth. И помните, я не прошу телефон МАРШРУТ; Мне нужно, чтобы мое пользовательское приложение могло одновременно подключаться к Pi и к общедоступному Интернету. Я хочу, чтобы все телефоны делали то, что делает IOS в этом отношении.

Мой нынешний сценарий – это Pi-хостинг веб-страницы (среди прочего), и это мое предпочтение, но может ли это быть решено изначально?

Solutions Collecting From Web of "Доступ к беспроводной локальной сети (без шлюза) и мобильной сети одновременно"

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

Это маршрутизация, потому что трафик с телефона должен быть перенаправлен на один из двух интерфейсов. Там не может быть маршрутизация по телефону, но это все еще проблема маршрутизации. К счастью, кажется, что часть маршрутизации работает на всех трех платформах.

Это также необычная форма привязки. Единственное отличие состоит в том, что трафик не исходит из Pi, а из телефона, а Pi вместо телефона действует как точка доступа.

Думая об этом с точки зрения привязки, важно, потому что это показывает, что Android МОЖЕТ иметь WiFi и сотовый актив в одно и то же время (по крайней мере, в режиме «горячей точки», но, вероятно, также в режиме клиента). В этом отношении мой ответ не завершен – я не могу сказать, КАК это сделать.

Что касается проблемы с телефоном Windows, которую вы упомянули: чтобы устранить эту проблему, сначала определите, где находится DNS-сервер, который знает о FQDN Pi. Об этом знает общедоступный DNS-сервер, хотя он явно находится в частной сети?

Есть два возможных объяснения для вашего наблюдения:

  • Нет общедоступного DNS-сервера, который даже знает это полное доменное имя. В этом случае IOS, вероятно, использует что-то вроде mDNS для поиска малины Pi.
  • Существует общедоступный DNS-сервер, который знает это полное доменное имя. В этом случае, возможно, Windows Phone проверяет ответ DNS для марсиан и отклоняет его, думая, что это атака.

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

Другой способ может заключаться в том, чтобы вообще не использовать DNS, но вместо этого используйте файл hosts.