我需要在NAT後面實現一個簡單的P2P應用程序。它應該通過可靠和安全的連接發送數據(TCP上的加密數據)。從理論背景我知道在幾個RFC(5389,5769和5780)中描述了幾種NAT穿透技術(例如用於NAT的會話遍歷實用程序)。P2P連接的NAT遍歷實現
雖然在實踐中我找不到需要的工具/庫來實現這樣的系統(最好用C++編程語言)。我已經通過谷歌搜索盲目地發現身邊:ICE, TURN, libnice, libjingle和STUNTMAN
下面的圖像描述它應該是什麼樣子。我有一個有效IP地址的VPS,一個位於NAT後面的PC和位於另一個NAT後面的傳感器。他們有私人IP。我想讓我的傳感器連接到服務器,找到監視器並向它發送連接請求。連接建立後,不應該使用中繼服務器來引導數據流量。我希望我的傳感器和監測使用此路徑進行通信:
Sensor <--> AP0 <--> R3 <--> {THE INTERNET} <--> R2 <--> Monitor
目前,所有數據通過VPS傳輸:
Sensor <--> AP0 <--> R3 <--> {THE INTERNET} R1 <-->
VPS <--> R1 <--> {THE INTERNET} <--> R2 <--> Monitor
我知道我甚至不應該問,但是端口轉發或UPnP支持是沒有問題的? – 2013-05-02 14:59:49
@AnthonyAccioly不,我只是忘了提及。我完全困惑。不能轉動我的頭並找到一個起點...... – 2013-05-02 15:02:10