如果服务器托管在不同的计算机上,我想修改我的代码以使客户端连接到服务器。这是我现在的代码:
服务器:
int port = 5000;
ServerSocket server = new ServerSocket(port);
Socket socket = server.accept();
output/input streams....
客户端:
String host = "localhost";
int port = 5000;
Socket socket = new Socket(host, port);
OutputStream out = socket.getOutputStream();
InputStream in = socket.getInputStream();
我知道inetAddress,这就是我需要帮助的地方,我不知道如何正确使用它,我不希望任何复杂的方法足以将它们连接在一起。此外,我想知道是否可以使用DNS,或者我是否需要网络服务器或类似的东西(当然DNS纯粹是好奇心)。
答案 0 :(得分:0)
要连接到远程计算机,您需要该计算机的IP地址或主机名,然后您可以使用InetAddress.getByName(String)。
如果没有DNS服务器可用于解析主机名中的IP,您将使用IP地址,如下所示:
Socket socket = new Socket(InetAddress.getByName("1.2.3.4"), 5000);
或者是否有DNS服务器,那么你可以像这样传递服务器主机名:
Socket socket = new Socket(InetAddress.getByName("myserver"), 5000);