Java InetAddress Create getLocalInetAddress(String host)

Here you can find the source of getLocalInetAddress(String host)

Description

Checks if host is a local host name and return InetAddress corresponding to that address.

License

Apache License

Parameter

Parameter Description
host the specified host

Exception

Parameter Description
SocketException if an I/O error occurs

Return

a valid local or null

Declaration

public static InetAddress getLocalInetAddress(String host)
        throws SocketException 

Method Source Code

//package com.java2s;
/**/*w  w  w  .j a  v a  2s  . c o m*/
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements. See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership. The ASF 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.net.UnknownHostException;

public class Main {
    /**
     * Checks if {@code host} is a local host name and return {@link InetAddress}
     * corresponding to that address.
     * 
     * @param host the specified host
     * @return a valid local {@link InetAddress} or null
     * @throws SocketException if an I/O error occurs
     */
    public static InetAddress getLocalInetAddress(String host)
            throws SocketException {
        if (host == null) {
            return null;
        }
        InetAddress addr = null;
        try {
            addr = InetAddress.getByName(host);
            if (NetworkInterface.getByInetAddress(addr) == null) {
                addr = null; // Not a local address
            }
        } catch (UnknownHostException ignore) {
        }
        return addr;
    }
}

Related

  1. getIPv4LocalNetMask(InetAddress ip, int netPrefix)
  2. getIPv6InetAddresses(NetworkInterface networkInterface)
  3. getLocalInetAddress()
  4. getLocalInetAddress()
  5. getLocalInetAddress()
  6. getLocalInetAddress(String host)
  7. getLocalInetAddresses()
  8. getLocalInetAddresses()
  9. getLocalInetAddresses(boolean includeLoopback)