Я использую компьютер с Windows Server 2008 R2 и мне было любопытно, есть ли какое-либо программное обеспечение, которое позволило бы мне открыть порт 3307 и направить любые данные, отправленные на него, на порт 3306. Например, если я подключаюсь из сети, которая блокирует исходящий порт 3306, есть ли что-нибудь, что позволит мне подключиться к порту 3307 и локально (на компьютере Windows) перенаправить данные на локальный порт 3306? С другой стороны, это для сервера MySQL. Спасибо!
1 ответ
Вы можете использовать socat для этого. Есть порт Windows, основанный на Cygwin.
Раздел примеров имеет это
socat -d -d -lmlocal2 \
TCP4-LISTEN:80,bind=myaddr1,su=nobody,fork,range=10.0.0.0/8,reuseaddr \
TCP4:www.domain.org:80,bind=myaddr2
Переадресация TCP-портов, каждая сторона связана с другим локальным IP-адресом (bind). В этом примере обрабатывается практически произвольное количество параллельных или последовательных соединений путем разветвления нового процесса после каждого accept (). Это обеспечивает небольшую безопасность, позволяя никому не поддаваться после разветвления; он разрешает соединения только из частной сети 10 (диапазон); из-за reuseaddr, он позволяет немедленный перезапуск после завершения главного процесса, даже если некоторые дочерние сокеты не полностью закрыты. С -lmlocal2 socat регистрирует в stderr, пока не достигнет цикла приема. Дальнейшее ведение журнала направляется в системный журнал с помощью средства local2.
Хотя этот пример относится к порту 80 (HTTP), вы можете использовать socat для создания двунаправленной ретрансляции практически для любого протокола.
Вы заметите, что это указывает на происхождение Linux/Unix. Я не знаю, насколько хорошо работает порт Windows в Windows или какие-то параметры не подходят для Windows. Я бы попробовал.
Для производственной системы я бы попробовал
- заставить MySQL прослушивать несколько номеров портов (в настоящее время это невозможно)
- использовать трансляцию портов в роутере?
- Использование socat на Linux-сервере для ретрансляции с трансляцией портов. И ТЕСТ НА УНИЧТОЖЕНИЕ.
(Ик)