1. ホーム
  2. java

[解決済み] IPアドレスへのPing送信方法

2023-05-23 01:07:18

質問

私は、Java で IP アドレスを ping するためにコードのこの部分を使用していますが、localhost への ping だけが成功し、他のホストについては、プログラムはホストが到達不能であると言います。 私はファイアウォールを無効にしましたが、まだこの問題があります。

public static void main(String[] args) throws UnknownHostException, IOException {
    String ipAddress = "127.0.0.1";
    InetAddress inet = InetAddress.getByName(ipAddress);

    System.out.println("Sending Ping Request to " + ipAddress);
    System.out.println(inet.isReachable(5000) ? "Host is reachable" : "Host is NOT reachable");

    ipAddress = "173.194.32.38";
    inet = InetAddress.getByName(ipAddress);

    System.out.println("Sending Ping Request to " + ipAddress);
    System.out.println(inet.isReachable(5000) ? "Host is reachable" : "Host is NOT reachable");
}

と出力されます。

127.0.0.1へのPingリクエストの送信

ホストに到達可能

173.194.32.38 に Ping リクエストを送信します。

ホストは到達可能ではありません

どのように解決するのですか?

Java では ICMP に依存しているため、単純に ping を実行することはできませんが、悲しいことに、これは Java ではサポートされていません。

http://mindprod.com/jgloss/ping.html

代わりにソケットを使用する

お役に立てれば幸いです。