public static boolean isValidSubscriptionAddress(final int address) {

        if (isValidUnassignedAddress(address) || isValidUnicastAddress(address) || isValidVirtualAddress(address) || address == 0xFFFF) {
            throw new IllegalArgumentException("The value of the Address field shall not be an unassigned address, unicast address, " +
                    "all-nodes address or virtual address.");
        }

        final int b0 = address >> 8 & 0xFF;
        final int b1 = address & 0xFF;

        final boolean groupRange = b0 >= 0xC0;
        final boolean rfu = b0 == 0xFF && b1 <= 0xFB;
        final boolean allNodes = b0 == 0xFF && b1 == 0xFF;
        return groupRange && !rfu && !allNodes;
    }
Returns true if the address is a valid subscription address

@param address 16-bit address
@return true if the address is valid and false otherwise
mesh/src/main/java/no/nordicsemi/android/mesh/utils/MeshAddress.java