I am checking whether the ipAddress is in Private Category or not. So I wrote this method below. And I am getting this as an exception-
java.net.UnknownHostException: addr is of illegal length
at java.net.InetAddress.getByAddress(InetAddress.java:948)
at java.net.InetAddress.getByAddress(InetAddress.java:1324)
ipAddress (172.18.36.81) is String
if(isPrivateIPAddress(ipAddress)) {
return null;
}
private static boolean isPrivateIPAddress(String ipAddress) {
byte[] byteArray = null;
InetAddress ia = null;
try {
byteArray = ipAddress.getBytes("UTF-16LE");
} catch (UnsupportedEncodingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
ia = InetAddress.getByAddress(byteArray);
} catch (UnknownHostException e) {
e.printStackTrace();
}
return ia.isSiteLocalAddress();
}
See Question&Answers more detail:os