1

Инструмент должен подключаться к любым двум серверам TCP/IP и прозрачно маршрутизировать отправку и получение между ними. Инструмент должен подключаться к обоим серверам TCP/IP и прозрачно пересылать любые данные, которые он получает между ними.

Проблема, которую должен решить инструмент, состоит в том, что есть два сетевых устройства, каждое из которых ведет себя как сервер. Одно из устройств отправит данные TCP/IP своему клиенту, когда на нем произойдет событие, а другое ожидает, что эти данные будут отправлены ему.

3 ответа3

4

ПРИМЕЧАНИЕ: ответ полностью пересмотрен на основе разъяснений.

У ОП есть два сервера, оба слушают. Один отправляет данные, другой ждет их поступления. Но они оба слушатели и требуют, чтобы клиент TCP/IP подключался к ним обоим одновременно.

По сути, вам нужна конвейерная программа, которая подключается к обоим серверам одновременно, и все, что отправлено с одного сервера, должно быть отправлено на другой.

Оформить заказ на программу netcat (версия для Windows доступна здесь). Вы могли бы сделать что-то вроде этого:

nc <send svr> <send svr port> | nc <recv svr> <recv svr port>
1

Серверы с TCP/IP уже могут свободно общаться, если они находятся в одной сети. Вот что делает TCP/IP. Возможно, вам понадобится подключить какой-либо маршрутизатор, если они находятся в разных сетях. Если это ваша проблема, вам нужно описать ее более полно, потому что то, что может быть полезно для подключения изолированных сетей, может не подойти для подсетей, использующих NAT с одним IP-адресом.

Упоминая "сервер" и "клиент", вы, похоже, подразумеваете какое-то приложение, которое взаимодействует с TCP. Однако многие программы имеют разные роли клиента и сервера, которые не являются взаимозаменяемыми. Например, сервер Subversion не будет проверять исходное дерево. Там нет автоматического перевода, и не может быть, так как люди продолжают писать новые программы. Если у вас есть конкретное приложение или список, вы можете добавить это к своему вопросу.

0

Основываясь на пересмотренном тексте: «По сути, вам нужна конвейерная программа, которая подключается к обоим серверам одновременно, и все, что отправлено из одного сокета, должно быть помещено в другой», это звучит для меня как балансировщик нагрузки. И для этого вы можете взглянуть на оборудование балансировки нагрузки / отработки отказа. И этот тип соединения лучше всего управляется аппаратными устройствами.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .