InetAddress:マシンの名前とIPアドレスを調べる
InetAddress はインターネットに接続したマシンの情報を調べる機能を提供します。
マシンの名前と IPアドレスの対応を調べることも可能です。
インターネットに接続するマシンは IPアドレスと呼ばれる
世界でただ一つの番号を割り当てられます。
コンピュータの電話番号のようなものと思えばいいでしょう。
この IPアドレスをお互いに知り合うことで、
インターネットを通じてデータの通信が可能になるわけです。
IPアドレスはとても長い数値(たとえば "204.160.241.99")で表現され、
日常取り扱うのには不便です。
そこでマシンには「名前」を付ける仕組みが存在します。
まず、IPアドレスはインターネットに接続する各機関ごとに
まとめてアドレスが割り振られます。
それらをドメインと呼び、ドメインに対応してやはり一意の「ドメイン名」が
割り振られます。"wakhok.ac.jp", "sun.com" などがドメイン名です。
さらにこれにマシンの名前が各ドメインごとに定義され、それが IPアドレスに
対応するようになっています。
"www.wakhok.ac.jp" は "wakhok.ac.jp" 内の
"www"という名前のマシンを指すことになります。
マシン名は DNS( Domain Name Service )という世界規模のデータベースの
サービスによって IPアドレスに変換されます。
JDKの java.netパッケージの InetAddressクラスは、
マシン名を元にして IPアドレスを含む情報を生成します。
InetAddressには publicなコンストラクタはなく、
staticメソッド getByName()メソッドによってオブジェクトを得ます。
また、現在使用中のマシンの情報はやはり staticなメソッド getLocalHost()に
よって知ることができます。
String hostName = "java.sun.com";
InetAddress host = InetAddress.getByName( hostName );
InetAddress myHost = InetAddress.getLocalHost();
ソースファイル