Also ich habe folgendes Problem:
Ich möchte von einem Gameserver (Counter-Strike:Source) per UDP den Serverlog empfangen. Soweit so einfach, der Rcon-Befehl funktioniert, und in Wireshark sehe ich auch, dass die Daten bei mir ankommen am Port 27015.
Im Java-Programm jedoch hängt er ewig beim socket.receive(packet); und ich weiß nicht so unbedingt woran das liegt, dass er nichts empfängt.
Mein Server:
Ich möchte von einem Gameserver (Counter-Strike:Source) per UDP den Serverlog empfangen. Soweit so einfach, der Rcon-Befehl funktioniert, und in Wireshark sehe ich auch, dass die Daten bei mir ankommen am Port 27015.
Im Java-Programm jedoch hängt er ewig beim socket.receive(packet); und ich weiß nicht so unbedingt woran das liegt, dass er nichts empfängt.
Mein Server:
Code:
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class UDPReader implements Runnable {
private int port = 0;
public UDPReader(int port) {
this.port = port;
}
public void run() {
try {
byte data[] = new byte[1145];
DatagramPacket packet;
DatagramSocket socket = new DatagramSocket(this.port);
System.out.println("Server running...");
while (true) {
packet = new DatagramPacket(data, data.length);
socket.receive(packet);
System.out.println(packet.getData().toString());
}
} catch (Exception e) {
System.out.println("Server terminated");
System.out.println(e);
}
}
public static void main(String[] args) {
UDPReader serverLogReader = new UDPReader(27015);
serverLogReader.run();
}
}
Zuletzt bearbeitet: