Мне кажется, что более новые устройства Android работают за NAT, где локальный адрес — это внутренний адрес оператора или адрес локальной сети, а публичный адрес — это внешний адрес, назначенный маршрутизатором или оператором.
Тем не менее, новые телефоны не возвращают тот же адрес, используя NetworkInterface, что и при доступе к службе обнаружения IP.
Таким образом, подключение через прямые P2P SocketChannels по своей сути не удается.
Существуют ли общие решения этой проблемы, разработанные для платформы Android? Может ли кто-нибудь прояснить, что вызывает эту проблему безопасности, похожую на NAT -?
Любые ссылки на Java NAT traversal учебники или примеры(НЕ эссе или тезисы )также будут оценены как полезные (, поскольку я не совсем уверен, как реализовать это на Java ).
Я, конечно же, приму любые другие решения, которые кто-либо может предложить!