программирование сокетов Android за роутером

Эй, ребята, у меня есть вопрос или проблема. Я пытаюсь сделать p2p соединение между двумя телефонами Android. У меня есть каждый телефон, подключенный к моему серверу, и я получаю их частный (192.168.1.1) и публичный (76.123.288.22) IP, а также порты, которые они подключают к моему серверу. Я отправляю ответ, когда телефон подключается к серверу, чтобы открыть сокет сервера с определенным портом. Я также отправляю на другой телефон общедоступный IP-адрес и порт открытой розетки, но он не подключается. Я прочитал несколько потоков здесь, что это невозможно сделать p2p-соединение, если оба телефона или компьютера находятся за двумя разными маршрутизаторами. Мой вопрос: правда ли это, и если да, то как LogMeIn или другие приложения p2p работают за разными маршрутизаторами? Это ошибка программирования или сетевая архитектура этого не позволяет?

Ответы на вопрос(2)

Ваш ответ на вопрос