Package org.keycloak.common.util
Class NetworkUtils
java.lang.Object
org.keycloak.common.util.NetworkUtils
Utility methods related to networking.
- Author:
- Brian Stansberry (c) 2011 Red Hat Inc.
-
Method Summary
Modifier and TypeMethodDescriptionstatic String
Convert IPv6 adress into RFC 5952 form.static boolean
static String
formatAddress
(InetAddress inet) Formats input address.static String
Converts socket address into string literal, which has form: 'address:port'.static String
formatPossibleIpv6Address
(String address) static boolean
-
Method Details
-
formatPossibleIpv6Address
-
canonize
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
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
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()
-