LINUX.ORG.RU

Перенаправить траффик с tcp порта сервера на tcp порт хоста

 , , ,


0

1

Ситуация:

Сервер. Есть сервер на Win, который посылает на свой 1001 порт данные с датчика. Делает он это с помощью ser2net. С сервером все.

Хост. Хост - Debian 10. На нем в wine запущена прога, куда нужно передавать данные с 1001 tcp порта сервера, предварительно проброшенные в виртуальный последовательный (COM) порт. Т.е. хост принимает данные с сервера, пишет их в vCOM порт, и прога в wine читает все это дело.

Проблема: Считать данные с tcp порта сервера и записать их в vCOM.

Возможное решение: Как решение есть следующая идея: привязать виртуальный COM порт хоста к, например, 1000 tcp порту хоста же с помощью ser2net. Тогда данные, передаваемые на порт 1000 хоста будут автоматом конвертироваться в serial data. То, что нужно. Но есть затык: КАК сделать так, чтобы данные с 1001 порта сервера пересылались на 1000 порт хоста?

Собственно вопрос:

Как перенаправить траффик с tcp порта сервера на tcp порт хоста?

P.S. На сервер влиять невозможно.

P.S.S. Пытался использовать socat.

socat pty,link=/dev/ttyV0,raw,waitslave tcp:10.10.30.30:1001&

Эта вещь вроде как соединение с портом сервера устанавливает, но при попытке подключения/чтения данных с ttyV0 либо: | Если запущено от user = разрывает соединение | Если запущено от root = пишет, что порт занят другим процессом.