兩台 NAT 機器之間的直接本機流量 TCP 檔案傳輸

兩台 NAT 機器之間的直接本機流量 TCP 檔案傳輸

目的:

我希望在公共連接埠無法重定向到兩台電腦中的任何一台(本機原則)的情況下,在位於兩個不同 NAT 後面的兩台電腦之間執行盡可能最快的基於 TCP 的檔案傳輸。

近似值:

到目前為止,我可以:1)設定一個帶有充當中繼的中央公共節點的VPN(OpenVPN),2)設定一個網狀VPN以在兩台機器之間獲得直接連結而無需中繼(tinc) 。然後,可以無縫地使用 VPN 透過任何第三方檔案傳輸用戶端/伺服器執行資料傳輸(就好像兩台電腦位於同一 LAN 上一樣)。

問題:

兩台機器之間的線路非常不穩定,單一 TCP 流通常只能達到可用頻寬的一小部分。另外,在 TCP 上封裝 TCP 會產生額外的開銷,並且對於不穩定的線路來說效率很低。因此,我想在兩台機器之間建立直接(無中繼)和本機流量連結(無 VPN 封裝)。一個自然的選擇是STUN 框架,但我得出的結論是,要與公共STUN 伺服器互動並實現NAT 穿越,應用程式必須使用臨時STUN 庫進行編譯,並依賴STUN 特定套接字而不是常規套接字。這基本上意味著每組新的啟用 STUN 的客戶端/伺服器應用程式都需要從頭開始編寫。

問題:

為了簡化這個過程,我想知道是否可以實作一個通用的 STUN 用戶端,它基本上是作為守護程式在兩台機器上運行。客戶端將連接到公共 STUN 伺服器來註冊和查詢其他客戶端的資訊。他們還將所有傳出流量從本地受監控連接埠重新導向到正確的 IP/連接埠(使用者配置 + STUN 伺服器資訊)以到達另一台電腦。這可以允許任何第三方客戶端/伺服器應用程式無縫地開啟常規 TCP 套接字(可能是多個)並與另一台電腦建立連接(就好像它位於同一 LAN 上一樣)。

答案1

你可以試試SoftEther VPN- 它:

在我看來,這是一個非常好的軟體,可以為您節省大量工作...

相關內容