Java InetAddress Check isLocalAddress(InetAddress address)

Here you can find the source of isLocalAddress(InetAddress address)

Description

Checks if an IP address is local (e.g., 10.147.x.y or 192.168.x.y)

License

Open Source License

Declaration

public static boolean isLocalAddress(InetAddress address) 

Method Source Code

//package com.java2s;
/**/*from  w w w  .ja va2s  . c  om*/
* 
* Copyright (C) 2004-2008 FhG Fokus
*
* This file is part of the FhG Fokus UPnP stack - an open source UPnP implementation
* with some additional features
*
* You can redistribute the FhG Fokus UPnP stack and/or modify it
* under the terms of the GNU General Public License Version 3 as published by
* the Free Software Foundation.
*
* For a license to use the FhG Fokus UPnP stack software under conditions
* other than those described here, or to purchase support for this
* software, please contact Fraunhofer FOKUS by e-mail at the following
* addresses:
*   upnpstack@fokus.fraunhofer.de
*
* The FhG Fokus UPnP stack is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>
* or write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/

import java.net.InetAddress;

public class Main {
    /** Checks if an IP address is local (e.g., 10.147.x.y or 192.168.x.y) */
    public static boolean isLocalAddress(InetAddress address) {
        // check source of request message
        byte[] tempData = address.getAddress();
        int[] addressData = new int[4];
        for (int i = 0; i < 4; i++) {
            addressData[i] = tempData[i] & 0xFF;
        }

        return addressData[0] == 10 || addressData[0] == 172 && (addressData[1] & 0x10) == 0x10
                || addressData[0] == 192 && addressData[1] == 168 || addressData[0] == 169 && addressData[1] == 254;
    }
}

Related

  1. isLinkLocalNetwork(InetAddress addr)
  2. isLocal(InetAddress a)
  3. isLocalAddress(InetAddress addr)
  4. isLocalAddress(InetAddress addr)
  5. isLocalAddress(InetAddress addr)
  6. isLocalAddress(InetAddress address)
  7. isLocalAddress(InetAddress address)
  8. isLocalIP(final InetAddress ip1, final InetAddress ip2, final int mask)
  9. isLocalIpAddress(final InetAddress ipAddress)