Переадресация трафика с одного порта на другой и наоборот

Цель: заставить процесс A отправлять сообщения процессу B и наоборот через TCP (я использую ROSBridge).

Проблема: только один процесс может использовать порт одновременно

Решение (?): Иметь процесс A, использующий порт 9090, но перенаправить трафик на 9091, а процесс B использовать порт 9091, но перенаправить трафик на порт 9090.

Вопрос: сработает ли это решение или я получу бесконечный цикл повторяющихся данных? Любой способ не делать этого? Если это сработает, как мне это настроить? Если это не сработает, что еще я могу сделать?

1 ответ

Решение

Похоже, мое понимание о портах не хватало. Хост для ROSBridge настроен на использование порта 9090, так что любой, кто хочет подключиться к нему, запросит порт 9090 хоста для подключения, но все равно будет использовать любой порт, который он хочет на своей собственной стороне. В обоих приложениях я могу заявить, что порт "Host" - это 9090 без конфликтов, потому что клиентское приложение все равно будет открывать другой случайный порт для собственного использования для подключения к порту хоста. Поэтому проблема, с которой я сталкиваюсь, связана не с "совместным использованием портов", поскольку это не то, что происходит. Только один хостинг на 9090.

Другие вопросы по тегам