Class NetworkUtil
- 
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe maximum server port number.static final intThe minimum server port number. - 
Method Summary
Modifier and TypeMethodDescriptionstatic booleanChecks to see if a specific host:port is available.static booleanavailable(int port) Checks to see if a specific port is available.static byte[]cidr2Netmask(short cidr, int byteLength) Converts a given CIDR mask to valid IPv4 or IPv6 network mask.static InetAddresscreateInetAddress(String str) Creates aInetAddressby parsing the given string.static Set<InetAddress>Returns a list of the IP addresses of all network interfaces of the local computer.static Inet4AddressDetermines the external IPv4 address.static Inet6AddressDetermines the external IPv6 address.static StringReturns the local host name.static shortgetNetworkPrefixLength(InetAddress address) Returns the network prefix length for given address.static booleanisValidNonSpecialIPAddress(InetAddress address) Check if the given address is a normal IP address that is neither a loopback, link local nor multicast address.static booleanisValidPort(int port) Checks if a port is valid or not.static booleansameNetwork(byte[] x, byte[] y, short cidr) Checks if two given addresses are in the same network.static booleansameNetwork(InetAddress a, InetAddress b, short mask) Checks if two given addresses are in the same network. 
- 
Field Details
- 
MIN_PORT_NUMBER
public static final int MIN_PORT_NUMBERThe minimum server port number.- See Also:
 
 - 
MAX_PORT_NUMBER
public static final int MAX_PORT_NUMBERThe maximum server port number.- See Also:
 
 
 - 
 - 
Method Details
- 
getExternalIPv4Address
Determines the external IPv4 address.- Returns:
 - the external IPv4 address or 
nullin case of error 
 - 
getExternalIPv6Address
Determines the external IPv6 address.- Returns:
 - the external IPv6 address or 
nullin case of error 
 - 
available
public static boolean available(int port) Checks to see if a specific port is available.Source: Apache camel
- Parameters:
 port- the port number to check for availability- Returns:
 - true if the port is available, or false if not
 - Throws:
 IllegalArgumentException- is thrown if the port number is out of range
 - 
isValidPort
public static boolean isValidPort(int port) Checks if a port is valid or not.- Parameters:
 port- port that should be validated.- Returns:
 - true if valid, otherwise false
 
 - 
alive
Checks to see if a specific host:port is available.- Parameters:
 host- host name or IP address to check for availabilityport- the port number to check for availability- Returns:
 - true if the host:port is available, or false if not
 - Throws:
 IllegalArgumentException- is thrown if the port number is out of range
 - 
getAddresses
Returns a list of the IP addresses of all network interfaces of the local computer. If no IP addresses can be obtained, the loopback address is returned.- Returns:
 - list of IP addresses of all network interfaces of local computer or loopback address if no address can be obtained
 
 - 
isValidNonSpecialIPAddress
Check if the given address is a normal IP address that is neither a loopback, link local nor multicast address.- Parameters:
 address- the address that should be checked- Returns:
 - true if the address is a normal IP address, false otherwise
 
 - 
getLocalHostName
Returns the local host name. If no host name can be determined,nullis returned.- Returns:
 - the local host name. If no host name can be determined, 
nullis returned. 
 - 
createInetAddress
Creates aInetAddressby parsing the given string.This convenience factory method works as if by invoking the
InetAddress.getByName(java.lang.String)constructor; anyUnknownHostExceptionthrown by the constructor is caught and wrapped in a newIllegalArgumentExceptionobject, which is then thrown.This method is provided for use in situations where it is known that the given string is a legal InetAddress, for example for InetAddress constants declared within a program, and so it would be considered a programming error for the string not to parse as such. The constructors, which throw
UnknownHostExceptiondirectly, should be used in situations where a InetAddress is being constructed from user input or from some other source that may be prone to errors.- Parameters:
 str- The string to be parsed into a InetAddress- Returns:
 - The new InetAddress
 - Throws:
 IllegalArgumentException- if no IP address for thestrcould be found, or if a scope_id was specified for a global IPv6 address.
 - 
getNetworkPrefixLength
Returns the network prefix length for given address. This is also known as the subnet mask in the context of IPv4 addresses. Typical IPv4 values would be 8 (255.0.0.0), 16 (255.255.0.0) or 24 (255.255.255.0).Typical IPv6 values would be 128 (::1/128) or 10 (fe80::203:baff:fe27:1243/10)
- Parameters:
 address- TheInetAddressto search with.- Returns:
 - a 
shortrepresenting the prefix length for the subnet of that address or-1if there is no network interface with given IP address. - Throws:
 NullPointerException- If the specified address isnull.
 - 
sameNetwork
Checks if two given addresses are in the same network.- Parameters:
 a- first addressb- second addressmask- the network mask in CIDR notation- Returns:
 - true if the two given addresses are in the same network, false otherwise
 
 - 
sameNetwork
public static boolean sameNetwork(byte[] x, byte[] y, short cidr) Checks if two given addresses are in the same network.- Parameters:
 x- first addressy- second addresscidr- the network mask in CIDR notation- Returns:
 - true if the two given addresses are in the same network, false otherwise
 
 - 
cidr2Netmask
public static byte[] cidr2Netmask(short cidr, int byteLength) Converts a given CIDR mask to valid IPv4 or IPv6 network mask.- Parameters:
 cidr- the cidrbyteLength- the final mask length (IPv4 = 4 bytes, IPv6 = 16 bytes)- Returns:
 - the CIDR as network mask byte array
 - Throws:
 IllegalArgumentException- if thebyteLengthargument is invalid
 
 -