Java – IPアドレスからホスト名を取得する方法
Javaでは、InetAddressクラス
を使用してIPアドレスからホスト名を取得できます。
InetAddress.getByName(String host)メソッド
でIPアドレスを指定し、返されたInetAddress
オブジェクトのgetHostName()メソッド
を呼び出すことでホスト名を取得します。
例として、InetAddress.getByName("8.8.8.8").getHostName()
を実行すると、GoogleのDNSサーバーに対応するホスト名が返される場合があります。
ただし、DNSの設定やネットワーク環境によってはホスト名が解決できないこともあります。
JavaでIPアドレスからホスト名を取得する方法
Javaでは、IPアドレスからホスト名を取得するために、InetAddressクラス
を使用します。
このクラスは、ネットワークアドレスを表現するための便利なメソッドを提供しています。
以下に、具体的な方法を示します。
import java.net.InetAddress;
import java.net.UnknownHostException;
public class App {
public static void main(String[] args) {
// IPアドレスを指定
String ipAddress = "8.8.8.8"; // GoogleのパブリックDNS
try {
// IPアドレスからInetAddressオブジェクトを取得
InetAddress inetAddress = InetAddress.getByName(ipAddress);
// ホスト名を取得
String hostName = inetAddress.getHostName();
// 結果を表示
System.out.println("IPアドレス: " + ipAddress);
System.out.println("ホスト名: " + hostName);
} catch (UnknownHostException e) {
// IPアドレスが無効な場合のエラーハンドリング
System.out.println("無効なIPアドレス: " + ipAddress);
}
}
}
IPアドレス: 8.8.8.8
ホスト名: dns.google
上記のコードでは、指定したIPアドレス(この例ではGoogleのパブリックDNS)からホスト名を取得しています。
InetAddress.getByName()メソッド
を使用して、IPアドレスに対応するInetAddress
オブジェクトを取得し、getHostName()メソッド
でホスト名を取得します。
無効なIPアドレスが指定された場合は、UnknownHostException
がスローされるため、適切にエラーハンドリングを行っています。
応用:ホスト名からIPアドレスを取得する方法
Javaでは、ホスト名からIPアドレスを取得するためにも、InetAddressクラス
を使用します。
このクラスは、ホスト名を指定することで対応するIPアドレスを取得するためのメソッドを提供しています。
以下に、具体的な方法を示します。
import java.net.InetAddress;
import java.net.UnknownHostException;
public class App {
public static void main(String[] args) {
// ホスト名を指定
String hostName = "www.google.com"; // Googleのホスト名
try {
// ホスト名からInetAddressオブジェクトを取得
InetAddress inetAddress = InetAddress.getByName(hostName);
// IPアドレスを取得
String ipAddress = inetAddress.getHostAddress();
// 結果を表示
System.out.println("ホスト名: " + hostName);
System.out.println("IPアドレス: " + ipAddress);
} catch (UnknownHostException e) {
// ホスト名が無効な場合のエラーハンドリング
System.out.println("無効なホスト名: " + hostName);
}
}
}
ホスト名: www.google.com
IPアドレス: 142.250.207.100
上記のコードでは、指定したホスト名(この例ではGoogleのホスト名)からIPアドレスを取得しています。
InetAddress.getByName()メソッド
を使用して、ホスト名に対応するInetAddress
オブジェクトを取得し、getHostAddress()メソッド
でIPアドレスを取得します。
無効なホスト名が指定された場合は、UnknownHostException
がスローされるため、適切にエラーハンドリングを行っています。
まとめ
この記事では、Javaを使用してIPアドレスからホスト名を取得する方法と、ホスト名からIPアドレスを取得する方法について解説しました。
これにより、ネットワークプログラミングにおける基本的な操作を理解し、実際のアプリケーションに応用することが可能になります。
ぜひ、実際にコードを試してみて、ネットワーク関連の処理を自分のプロジェクトに取り入れてみてください。