1

IP 145.74.217.109 のマシン A で ServerSocket を実行し、IP 145.74.219.103 のマシン B を使用してマシン A に接続しようとすると、接続できません。しかし、IP 145.74.217.180 でマシン C を使用すると動作します。

これがコードで解決できるのか、ネットワーク設定だけで解決できるのかはわかりません。ネットワークの問題である場合、この問題を回避する別の方法がありますか、それともソケットから離れて...に行く必要がありますか?

マシン A:

public void run() {
        try {
            sock = new ServerSocket(Constants.PORT);
            for (;;) {
                Socket newsock = sock.accept();

                System.out.println("Accepting new player: ");

                new PaintballPlayer(newsock);
            }
        } catch (Exception e) {
            System.out.println("IO error " + e);
        }
        System.out.println("End!");

        try {
            sock.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

マシン B、C :

socket = new Socket(ip, Constants.PORT);
4

1 に答える 1

0

IP を見ると、サーバーには IP 145.74.217.109IP が145.74.217.180あり、接続 145.74.219.103できませんが、接続できません。これは、サブネット 145.74.219.Xにアクセスでき ないことを意味し145.74.217.X、それが接続できない理由です。ネットワーク管理者に依頼するネットワーク設定です。両方のマシンに同じサブネット マスクを持たせる

于 2012-11-19T13:51:41.497 に答える