Я пытаюсь создать многопользовательскую java-игру и решил использовать сервер сокетов java. «Клиент» может безупречно подключаться и взаимодействовать с сервером, когда они оба запущены на моем компьютере, но когда я отправляю файл клиента на другой компьютер (который подключен к той же сети), он не может подключиться к серверу , и я не могу понять, почему. Я запустил cmd и использовал код netstat -a и смог подтвердить, что сервер прослушивает 127.0.0.1:3251, поэтому я считаю, что проблема связана с клиентом.
Вот как создается сервер:
try {
this.serverSocket = new ServerSocket();
this.serverSocket.bind(new InetSocketAddress("localhost",port)); //port is 3251
window.show("SERVER: " + "Created On Port: " + port);
} catch (IOException e) {
window.show("SERVER: " + e.getMessage());
window.show("SERVER: " + "Unable To Create Server :(");
}
и вот как клиент подключается:
try {
socket = new Socket("localhost", 3251);
} catch (IOException e) {
e.printStackTrace();
}
Когда сервер принимает соединение, он создает новый поток:
Socket socket = this.serverSocket.accept();
ServerThread serverThread = new ServerThread(socket);
serverThread.start();