Javaで自ホストのIPアドレスで127.0.0.1以外を取得する

ちょっと困ったのでメモ

通常JavaのInetAddress.getLocalHost().getHostAddress()から取得できるIPアドレスは127.0.0.1

これではちょっと使えません

ネットワークインターフェースを調べるとちゃんとした?IPアドレスが取得できます

import java.net.*;
import java.util.*;


public class test{
	public static void main(String[] argv)throws Exception{
		Enumeration n = NetworkInterface.getNetworkInterfaces();
			while (n.hasMoreElements()){
				NetworkInterface e = n.nextElement();
				Enumeration a = e.getInetAddresses();
				while ( a.hasMoreElements()){
					InetAddress addr = a.nextElement();
																		if (!addr.getHostAddress().equals("127.0.0.1"))
							 System.out.println(addr.getHostAddress());
				}
		 }
	}
}