Class CIDR

    • Field Detail

      • baseAddress

        protected InetAddress baseAddress
        The base address of the CIDR notation
      • cidrMask

        protected int cidrMask
        The mask used in the CIDR notation
    • Constructor Detail

      • CIDR

        public CIDR()
    • Method Detail

      • newCIDR

        public static CIDR newCIDR​(String cidr)
                            throws UnknownHostException
        Create CIDR using the CIDR or normal Notation
        i.e.: CIDR subnet = newCIDR ("10.10.10.0/24"); or CIDR subnet = newCIDR ("1fff:0:0a88:85a3:0:0:ac1f:8001/24"); or CIDR subnet = newCIDR ("10.10.10.0/255.255.255.0");
        Returns:
        the generated CIDR
        Throws:
        UnknownHostException
      • getBaseAddress

        public InetAddress getBaseAddress()
        Returns:
        the baseAddress of the CIDR block.
      • getMask

        public int getMask()
        Returns:
        the Mask length.
      • toString

        public String toString()
        Overrides:
        toString in class Object
        Returns:
        the textual CIDR notation.
      • getEndAddress

        public abstract InetAddress getEndAddress()
        Returns:
        the end address of this block.
      • contains

        public abstract boolean contains​(InetAddress inetAddress)
        Compares the given InetAddress against the CIDR and returns true if the ip is in the subnet-ip-range and false if not.
        Returns:
        returns true if the given IP address is inside the currently set network.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • getIpV4FromIpV6

        public static byte[] getIpV4FromIpV6​(Inet6Address address)
        Compute a byte representation of IpV4 from a IpV6
        Returns:
        the byte representation
        Throws:
        IllegalArgumentException - if the IpV6 cannot be mapped to IpV4
      • getIpV6FromIpV4

        public static byte[] getIpV6FromIpV4​(Inet4Address address)
        Compute a byte representation of IpV6 from a IpV4
        Returns:
        the byte representation
        Throws:
        IllegalArgumentException - if the IpV6 cannot be mapped to IpV4