Class Ip6Address

  • All Implemented Interfaces:
    java.lang.Comparable<IpAddress>

    public final class Ip6Address
    extends IpAddress
    A class representing an IPv6 address. This class is immutable.
    • Field Detail

      • ALL_DHCP_RELAY_AGENTS_AND_SERVERS

        public static final Ip6Address ALL_DHCP_RELAY_AGENTS_AND_SERVERS
        A link-scoped multicast address used by a DHCP client to communicate with neighboring DHCP relay agents and servers. (RFC 3315)
      • ALL_DHCP_SERVERS

        public static final Ip6Address ALL_DHCP_SERVERS
        A site-scoped multicast address used by a DHCP relay agent to communicate with DHCP servers. (RFC 3315)
      • ALL_RIP_ROUTERS

        public static final Ip6Address ALL_RIP_ROUTERS
        All RIP routers multicast group. (RFC 2080)
      • ZERO

        public static final Ip6Address ZERO
        All-zero unspecified IPv6 address.
    • Method Detail

      • valueOf

        public static Ip6Address valueOf​(byte[] value)
        Converts a byte array into an IPv6 address.
        Parameters:
        value - the IPv6 address value stored in network byte order (i.e., the most significant byte first)
        Returns:
        an IPv6 address
        Throws:
        java.lang.IllegalArgumentException - if the argument is invalid
      • valueOf

        public static Ip6Address valueOf​(byte[] value,
                                         int offset)
        Converts a byte array and a given offset from the beginning of the array into an IPv6 address.

        The IP address is stored in network byte order (i.e., the most significant byte first).

        Parameters:
        value - the value to use
        offset - the offset in bytes from the beginning of the byte array
        Returns:
        an IPv6 address
        Throws:
        java.lang.IllegalArgumentException - if the arguments are invalid
      • valueOf

        public static Ip6Address valueOf​(java.net.InetAddress inetAddress)
        Converts an InetAddress into an IPv6 address.
        Parameters:
        inetAddress - the InetAddress value to use. It must contain an IPv6 address
        Returns:
        an IPv6 address
        Throws:
        java.lang.IllegalArgumentException - if the argument is invalid
      • valueOf

        public static Ip6Address valueOf​(java.lang.String value)
        Converts an IPv6 string literal (e.g., "1111:2222::8888") into an IP address.
        Parameters:
        value - an IPv6 address value in string form
        Returns:
        an IPv6 address
        Throws:
        java.lang.IllegalArgumentException - if the argument is invalid
      • makeMaskPrefix

        public static Ip6Address makeMaskPrefix​(int prefixLength)
        Creates an IPv6 network mask prefix.
        Parameters:
        prefixLength - the length of the mask prefix. Must be in the interval [0, 128]
        Returns:
        a new IPv6 address that contains a mask prefix of the specified length
        Throws:
        java.lang.IllegalArgumentException - if the arguments are invalid
      • makeMaskedAddress

        public static Ip6Address makeMaskedAddress​(Ip6Address address,
                                                   int prefixLength)
        Creates an IPv6 address by masking it with a network mask of given mask length.
        Parameters:
        address - the address to mask
        prefixLength - the length of the mask prefix. Must be in the interval [0, 128]
        Returns:
        a new IPv6 address that is masked with a mask prefix of the specified length
        Throws:
        java.lang.IllegalArgumentException - if the prefix length is invalid