0
나는 온라인 게임을 만들기 위해 Kryonet을 사용하려고합니다.Kryonet : 발견 호스트 allways null을 반환
내가 ip 주소 (코드에서 하드 코드)를 주면 연결 및 sendind/받기가 작동합니다. 그러나 서버를 검색하려고하면 절대로 응답하지 않습니다. 메서드는 항상 null을 반환합니다.
서버 :
public static int UDP_PORT = 54723, TCP_PORT = 54722;
public static void main(String args[]) {
/* ***** server starting ***** */
Server server = new Server();
server.start();
try {
server.bind(TCP_PORT, UDP_PORT);
} catch (IOException e) {
System.out.println("server not deployed");
e.printStackTrace();
System.exit(1);
}
System.out.println("server started");
server.addListener(new ServerListener());
}
클라이언트 :
public static void main(String[] args) {
Client client = new Client();
client.start();
InetAddress addr = client.discoverHost(UDP_PORT, 10000);
System.out.println(addr);
if(addr == null) {
System.exit(0);
}
try {
client.connect(5000, addr, TCP_PORT, UDP_PORT);
} catch (IOException e) {
e.printStackTrace();
}
for(int i = 0; i < 100; i++) {
client.sendTCP(new String("bouh" + i));
}
client.close();
}
이 코드의 문제점은 무엇입니까? 내 테스트는 localhost에서 시작됩니다. 여기에 문제가 있습니까?
모든 답변을 주셔서 감사합니다.
조나단
로깅을 사용하여 호스트 검색이 실패한 이유를 확인 했습니까? http://code.google.com/p/kryonet/#Logging – Travis
안녕하세요. 아, 죄송합니다.이 문제는 볼 수 없습니다. 클라이언트에이 명령어를 추가하면 문제가 해결되었습니다. 'System.setProperty ("java.net.preferIPv4Stack", "true"); ' 감사합니다! – Jonathan