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 StringConvert IPv6 adress into RFC 5952 form.static booleanstatic StringformatAddress(InetAddress inet) Formats input address.static StringConverts socket address into string literal, which has form: 'address:port'.static StringformatPossibleIpv6Address(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()
-