GNU/Linux >> Linux の 問題 >  >> Linux

socatを使用したTCPプロキシ

はじめに:
最近、プロジェクト用に純粋な双方向TCPプロキシを作成する必要がありました。このために、haproxy、nginx、cat、socatなどの代替手段がたくさんあります。コマンドが単純なため、socatを使用することにしましたが、catのコマンドも表示します。

NCATメソッド:
次のコマンドは、データを両方向に転送するためのパイプを使用します。一度に接続できるクライアントは1つだけです。
cd /var/tmp
mkfifo fifo &>/dev/null
/bin/nc -l -p $frontend_port -s $frontend_addr <fifo | /bin/nc $backend_addr $backend_port >fifo

SOCATメソッド(ベスト!):
注:このメソッドはスクリーンセッションでコマンドを実行しますが、プロセスを一時的に実行する必要がある場合は実行する必要はありません。
/usr/bin/screen -d -m /usr/bin/socat -d -d -lmlocal2 \
TCP4-LISTEN:$frontend_port,bind=$frontend_addr,reuseaddr,fork,su=daemon \
TCP4:$backend_addr:$backend_port,bind=$backend_iface_addr


Linux
  1. Linuxでのripgrep(rg)コマンドの使用

  2. コマンドを使用してLinuxでプロセスを強制終了する方法は?

  3. 5 実用的な Linux fuser コマンドの例

  1. 「?」を使用したコマンド置換

  2. Linux での dmsetup コマンドの使用例

  3. コマンドの出力をBashを使用して列ごとに分割しますか?

  1. 画面コマンドを使用したスリープコマンドがPsに表示されませんか?

  2. scpコマンドを使用する10の実際的な例

  3. コマンドラインを使用してLinuxを再起動する方法