Java Local Address Get getLocalAddr()

Here you can find the source of getLocalAddr()

Description

get Local Addr

License

Apache License

Declaration

private static String getLocalAddr() 

Method Source Code

//package com.java2s;
/**//w  w w.ja v a  2 s.co m
 * UtilTest.java
 *
 * Copyright 2012 Niolex, Inc.
 *
 * Niolex licenses this file to you under the Apache License, version 2.0
 * (the "License"); you may not use this file except in compliance with the
 * License.  You may obtain a copy of the License at:
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
 * License for the specific language governing permissions and limitations
 * under the License.
 */

import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;

public class Main {
    private static String getLocalAddr() {
        Enumeration<NetworkInterface> interfaces = null;
        try {
            interfaces = NetworkInterface.getNetworkInterfaces();

            while (interfaces.hasMoreElements()) {
                NetworkInterface ifc = interfaces.nextElement();
                if (ifc.isLoopback() || ifc.isVirtual() || !ifc.isUp()) {
                    continue;
                }
                Enumeration<InetAddress> addressesOfAnInterface = ifc.getInetAddresses();

                while (addressesOfAnInterface.hasMoreElements()) {
                    InetAddress address = addressesOfAnInterface.nextElement();
                    if (address.isSiteLocalAddress()) {
                        return address.getHostAddress();
                    }
                }
            }
        } catch (SocketException e) {
            e.printStackTrace();
            return null;
        }

        return null;
    }
}

Related

  1. getLocalAddr()
  2. getLocalAddress()
  3. getLocalAddress()
  4. getLocalAddress()