想讓一臺沒有公網(wǎng) ip 的電腦 A 連接到另一臺沒有公網(wǎng) ip 的電腦 B 的端口。手頭只有一個掛機寶,也就是說只開放了一個 SSH 端口。
可以使用 SSH 端口轉發(fā)功能實現(xiàn)這樣的需求。
在電腦 B 上運行這個 Python 腳本,用于測試連接:
from flask import *
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__=="__main__":
print("starting server...")
app.run(host='0.0.0.0',port=8081)
print("server is running")
電腦 B 瀏覽器輸入 127.0.0.1:8081,可看到 Hello World。
打開電腦 B 的終端,輸入類似這樣的指令,將本地 8081 映射到中轉服務器的 18081:
ssh root@XXX.XXX.XXX.XXX -R 18081:127.0.0.1:8081 -p XXXXX
接下來打開電腦 A 的終端,輸入類似這樣的指令,將中轉服務器的 18081 映射到本地 8081:
ssh root@XXX.XXX.XXX.XXX -L 8081:127.0.0.1:18081 -p XXXXX
電腦 A 瀏覽器輸入 127.0.0.1:8081,也可以看到 Hello World 了。