如何创建与其他计算机的网络连接(JAVA)?

如何创建与其他计算机的网络连接(JAVA)?,java,swing,sockets,connection,Java,Swing,Sockets,Connection,我正在开发一款可以与电脑或其他玩家玩的游戏。GUI是Swing,但与此无关。我的问题是:我如何与网络中的其他玩家联系 我熟悉客户机/服务器、套接字等术语,我可以编写基本的客户机/服务器程序,但只能在一台计算机上运行。我不知道如何从一台计算机连接到这个网络,比如说,在全国的一半地区。我喜欢用它来连接网络,它工作得很好,并且有很好的文档。你说你知道如何使用客户机和服务器套接字,所以我只想说你应该尝试用“real”连接ip地址而不是本地主机(127.0.0.1)。在本地网络上使用两台计算机,获取“服务

我正在开发一款可以与电脑或其他玩家玩的游戏。GUI是Swing,但与此无关。我的问题是:我如何与网络中的其他玩家联系


我熟悉客户机/服务器、套接字等术语,我可以编写基本的客户机/服务器程序,但只能在一台计算机上运行。我不知道如何从一台计算机连接到这个网络,比如说,在全国的一半地区。

我喜欢用它来连接网络,它工作得很好,并且有很好的文档。

你说你知道如何使用客户机和服务器套接字,所以我只想说你应该尝试用“real”连接ip地址而不是本地主机(127.0.0.1)。在本地网络上使用两台计算机,获取“服务器”计算机的IP地址,并使用该地址从客户端进行连接


这将在全球范围内一直有效,除了您可能在某些网络地址转换(NAT)防火墙后面,并且可能需要“打开”或“转发”所需的端口。如果您需要有关NAT的更多信息,google和serverfault将非常有用。

您可能正在设置一个路由器,该路由器会将您的本地IP地址隐藏在世界其他地方(请查找更多信息)。基本上,世界只看到你的路由器IP,你的路由器负责将所有IP数据包从外部世界传送给你,反之亦然。您需要更改路由器设置,以便计算机/服务器获得路由器ip地址。通过这种方式,您可以使用简单的套接字操作从世界任何地方访问服务器应用程序。
我希望这有帮助。

如果您的客户端和服务器位于同一台机器上,那么您可以使用环回地址(即127.0.0.1),在局域网中,您可以使用专用ip地址

Private ip address for LAN
A类-10.x.x.x

B类-172.16.0.0-172.31.255.255

C类-192.168.0.0-192.168.255.255

您可以将其用于LAN环境

要通过internet连接某人,您需要
公共ip地址
。 除了私有ip地址之外,每个范围内的地址都是公共地址

现在,如果您有一台服务器具有
静态ip
,那么客户端通过internet从世界任何地方访问它都不会有问题

但是,如果是通过LAN,并从网关访问internet,则将有一个
NAT
,然后您需要在
网关上设置
入站和出站流量规则
,以便让客户端访问服务器