我想了解通過公共服務器將客戶端暴露在 NAT 后面的理論,例如將客戶端用作代理(最好是 SOCKS5)。找到一個現成的解決方案是理想的,但理論就足夠了。指出我的意思。NAT 后面的客戶端不直接監聽 TCP。它只是打開到應該公開客戶端的公共服務器的 TCP 連接。NAT 后面的客戶端上的 SOCKS5 代理沒有直接暴露,因此撥號的 TCP 連接應該以某種方式表現得像一個 TCP 偵聽器。如果 NAT 后面的客戶端連接到公共服務器,其他用戶如何連接,我應該如何轉發請求?我認為基本上它與 TeamViewer 使用的技術相同:“在建立會話時,TeamViewer 會確定最佳連接類型。通過我們的主服務器握手后,在所有情況下(即使在標準網關、NAT 和防火墻之后),70% 都會通過 UDP 或 TCP 建立直接連接。其余的“但具體如何?
1 回答

犯罪嫌疑人X
TA貢獻2080條經驗 獲得超4個贊
總而言之,對于 golang 中的代理服務器,您必須
創建一個偵聽帶有一些參數的請求的服務器。
當收到請求時,它將向所需地址發出請求。
然后它將響應返回給私有網絡中的原始客戶端。
- 1 回答
- 0 關注
- 108 瀏覽
添加回答
舉報
0/150
提交
取消