我正在運行這樣的隧道:
socat TCP-LISTEN:9090,fork TCP:192.168.1.3:9090
我想運行一個腳本來執行程式碼,其中字串穿過隧道。
該腳本不會更改字串,僅獨立處理字串,但允許在兩端之間不更改的情況下通過。
這可能嗎?
答案1
它是現在可能與 socat v2. socat v2 引入了以下想法地址鏈。您可以使用以下命令執行腳本EXEC
:stdin/stdout(檔案描述符 0 和 1)連接到偵聽套接字,檔案描述符 3 和 4 連接到發送套接字:
socat - "TCP-LISTEN:localhost:8000 | EXEC:myscript.sh | TCP:myserver:80"
在範例 myscript.sh 中:
- stdin(fd 0) - 從連接埠 8000 讀取數據
- stdout(fd 1) - 將資料寫入連接埠 8000
- fd 3 - 從 myserver 連接埠 80 讀取數據
- fd 4 - 將資料寫入 myserver 連接埠 80