Class NetworkUtils


  • public class NetworkUtils
    extends Object
    Utility methods related to networking.
    Author:
    Brian Stansberry (c) 2011 Red Hat Inc.
    • Method Detail

      • formatPossibleIpv6Address

        public static String formatPossibleIpv6Address​(String address)
      • canonize

        public static String canonize​(String ipv6Address)
                               throws IllegalArgumentException

        Convert IPv6 adress into RFC 5952 form. E.g. 2001:db8:0:1:0:0:0:1 -> 2001:db8:0:1::1

        Method is null safe, and if IPv4 address or host name is passed to the method it is returned wihout any processing.

        Method also supports IPv4 in IPv6 (e.g. 0:0:0:0:0:ffff:192.0.2.1 -> ::ffff:192.0.2.1), and zone ID (e.g. fe80:0:0:0:f0f0:c0c0:1919:1234%4 -> fe80::f0f0:c0c0:1919:1234%4).

        Parameters:
        ipv6Address - String representing valid IPv6 address.
        Returns:
        String representing IPv6 in canonical form.
        Throws:
        IllegalArgumentException - if IPv6 format is unacceptable.
      • formatAddress

        public static String formatAddress​(InetAddress inet)
        Formats input address. For IPV4 returns simply host address, for IPV6 formats address according to RFC5952 rules. It does not embed IPV6 address in '[', ']', since those are part of IPV6 URI literal.
        Parameters:
        inet -
        Returns:
      • formatAddress

        public static String formatAddress​(InetSocketAddress inet)
        Converts socket address into string literal, which has form: 'address:port'. Example:
        • 127.0.0.1:8080
        • dns.name.com:8080
        • [0fe:1::20]:8080
        • [::1]:8080
        Parameters:
        inet -
        Returns:
      • isBindingToMulticastDressSupported

        public static boolean isBindingToMulticastDressSupported()
      • checkForMac

        public static boolean checkForMac()