Java代码获取服务端IP地址
2018-12-12 本文已影响26人
大老哈
private static String getHostIp()
{
try{
Enumeration<NetworkInterface> allNetInterfaces = NetworkInterface.getNetworkInterfaces();
while ( allNetInterfaces.hasMoreElements() )
{
NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement();
Enumeration<InetAddress> addresses = netInterface.getInetAddresses();
while ( addresses.hasMoreElements() )
{
InetAddress ip = (InetAddress) addresses.nextElement();
if ( ip != null
&& ip instanceof Inet4Address
&& !ip.isLoopbackAddress() /* loopback地址即本机地址,IPv4的loopback范围是127.0.0.0 ~ 127.255.255.255 */
&& ip.getHostAddress().indexOf( ":" ) == -1 )
{
System.out.println( "本机的IP = " + ip.getHostAddress() );
return(ip.getHostAddress() );
}
}
}
}catch ( Exception e ) {
e.printStackTrace();
}
return(null);
}