我用Java創建了一個戰艦遊戲,與Sockets
和ServerSockets
一起使用。這款遊戲在局域網上運行良好,但我希望能夠與完全不同的網絡上的某個人玩遊戲。我知道端口轉發是必要的,但是我必須在每個玩遊戲的客戶端上轉發端口嗎?或者只需要轉發服務器使用的路由器上的端口?謝謝。Java,遊戲和端口轉發
回答
端口轉發只在服務器上需要。由於許多NAT上的操作,任何綁定到客戶端的數據包將從最初的請求自動轉發。
所以,你只需要轉發服務器上的端口。如果使用Socket
和ServerSocket
,您需要轉發TCP,如果您的路由器給您的選擇。如果使用DatagramSockets
,則在任一端點轉發UDP。
(如果你有在客戶端上轉發,你很可能就不會被閱讀此頁不轉發端口80)
要闡述什麼@hexafraction是說,這裏是你可以做什麼:
構建一個任何客戶端都可以連接到的服務器。客戶通常可以連接到他們想要的任何東西。防火牆通常對可以流入但不流出的信息施加限制。因此,如果客戶端知道要連接的服務器,則可以在不修改防火牆的情況下連接到服務器,然後服務器將協調在客戶端之間傳輸數據。
我也會添加有關NAT的信息,特別是涉及到UDP的情況。 – hexafraction
@hexafraction你已經有了,我只是闡述 –
我這樣做了,我所要做的就是將我在路由器中使用的端口轉發到本地I.P.地址。如果您不知道您的本地IP地址,請運行命令提示符(假設您使用的是Windows)並運行ipconfig來找出它。如果你在家使用無線路由器通過瀏覽器訪問它到192.168.1.1希望這有助於!
- 1. 遊戲如何與沒有端口轉發功能的人連接的遊戲?
- 2. Java端口轉發
- 3. 網絡遊戲/其他服務的端口轉發?
- 4. Java遊戲開發:圖形
- 5. Java 3D遊戲開發
- 6. MMORPG和遊戲客戶端
- 7. 我的nodejs遊戲的好端口?
- 8. 端口遊戲到Unity穿戴5.4.4
- 9. 端口Flash遊戲本地機器人
- 10. 更新客戶端Javascript遊戲視口
- 11. Android的端口iPhone(OpenGL/C++)遊戲
- 12. XAMPP,Node.js和端口轉發
- 13. Java和win32遊戲覆蓋
- 14. 端口轉發
- 15. 轉換簡單的Java遊戲中的安卓遊戲到Facebook
- 16. WP8遊戲開發和C#
- 17. 遊戲遊戲和繼承
- 18. Java Applet遊戲2D窗口滾動
- 19. Java 2D遊戲:repaint();使窗口灰色
- 20. 填字遊戲發電機(瑞典填字遊戲) - Java
- 21. Java遊戲 - ClassCastException
- 22. Java TicTacToe遊戲
- 23. 遊戲對象旋轉不會發生在客戶端
- 24. 井字遊戲java繪製遊戲
- 25. 井字遊戲Java遊戲不結束
- 26. Java - 井字遊戲Swing遊戲 - 錯誤
- 27. 在Java中玩Flash遊戲(遊戲)
- 28. Java小遊戲JApplet遊戲閃爍
- 29. 端口從Java內部轉發
- 30. 沒有端口轉發的Java P2P?
太好了,謝謝你的回答! – rstumbaugh