我正在使用套接字進行項目,實際上它運行在我們的環境中,並且沒有出現故障 (局域網)。套接字編程在NAT網絡中失敗
當我嘗試在其中採用NAT在他們的環境中的客戶端上運行它 我的程序失敗(即)無法通過我創建的客戶端程序連接到服務器。
如何更改程序?有一個名爲SocketOption
的Enum能幫助解決我的問題嗎?
我想從一個NAT的計算機在同一網絡中傳輸到NAT的計算機
要設置賞金這個問題
我正在使用套接字進行項目,實際上它運行在我們的環境中,並且沒有出現故障 (局域網)。套接字編程在NAT網絡中失敗
當我嘗試在其中採用NAT在他們的環境中的客戶端上運行它 我的程序失敗(即)無法通過我創建的客戶端程序連接到服務器。
如何更改程序?有一個名爲SocketOption
的Enum能幫助解決我的問題嗎?
我想從一個NAT的計算機在同一網絡中傳輸到NAT的計算機
要設置賞金這個問題
搜索了一段時間後,發現此信息
NAT不你通常可以在語法上進行控制。 (有UPNP,但我從未見過它工作。)如果您需要將客戶端連接到位於NAT後面的服務器,則必須手動配置NAT設備(路由器)以執行端口轉發。
鏈接: http://blogs.msdn.com/ncl/archive/2009/07/27/end-to-end-connectivity-with-nat-traversal-.aspx
這可能是一箇舊帖子,但在很多軟件和視頻遊戲的情況下,它們是如何取而代之的。我在局域網上,我想知道如何通過局域網使服務器/客戶端軟件工作。 – Shaun 2012-01-03 13:39:13
你應該修改你的消息的佈局:P似乎嗨的消息被置爲「代碼」,失敗?它如何失敗,你會得到一個例外或某件事情? – Peter 2010-02-23 15:13:35
客戶端在哪裏,服務器在哪裏?從NAT內部網絡連接到公共互聯網上的服務器應該可以工作。除非設置了明確的端口轉發,否則從公共互聯網連接到NAT-ed網絡內的服務器將無法工作。順便說一句,套接字選項與此無關,它是讓你得到的路由。 – 2010-02-23 15:24:26
@NikolaiNFetissov我同意你提到的,但雅虎和Skype等如何做呢? – Smith 2012-03-08 22:58:56