Добрый день,
У меня есть два компьютера за брандмауэром без переадресации портов. Эти два компьютера должны общаться друг с другом, используя только исходящие соединения.
Я ищу прокси-инструмент, который будет запущен на сервере и будет работать следующим образом:
- Боб периодически проверяет сервер, хочет ли Алиса говорить.
- Алиса отправляет запрос на сервер, что она хочет поговорить с Бобом.
- Боб проверяет сервер и получает информацию, с которой Алиса хочет поговорить - он принимает.
- Прокси-сервер открывает входящие порты 8100 и 8200 для входящих TCP-соединений.
- Алиса подключается к порту 8100 и ждет, когда Боб присоединится к ней.
- Боб подключается к порту 8200.
- Пакеты HELO отправляются Алисе и Бобу, указывая, что обе стороны установили соединение.
- Затем соединение переключается в дуплексный режим пересылки, где Алиса может отправлять пакеты на порт 8100, и они будут пересылаться с порта 8200 на Боба.
- Боб также может отправлять пакеты на порт 8200, и они будут перенаправлены с порта 8100 на Алису.
- Боб отключается, и соединение с Алисой обрывается.
Я хотел спросить, есть ли такой прокси-протокол уже доступен. Прежде чем написать собственную реализацию, я решил спросить здесь о любых доступных решениях (желательно для Linux).
Идея заключается в простом перенаправителе пакетов, который может соединить два входящих соединения. Буду признателен, если кто-нибудь сможет поделиться знаниями о подобных проектах с открытым исходным кодом.