사용자 도구

사이트 도구


java:network

문서의 이전 판입니다!


Java Network

IP Address match

  • Check if IP address match pattern : IP Address « Network Protocol « Java
      /**
       * check if IP address match pattern
       * 
       * @param pattern
       *            *.*.*.* , 192.168.1.0-255 , *
       * @param address
       *            - 192.168.1.1<BR>
       *            <code>address = 10.2.88.12  pattern = *.*.*.*   result: true<BR>
       *                address = 10.2.88.12  pattern = *   result: true<BR>
       *                address = 10.2.88.12  pattern = 10.2.88.12-13   result: true<BR>
       *                address = 10.2.88.12  pattern = 10.2.88.13-125   result: false<BR>
  • @return true if address match pattern
  • /

public static boolean checkIPMatching(String pattern, String address)

{
  if (pattern.equals("*.*.*.*") || pattern.equals("*"))
    return true;
  String[] mask = pattern.split("\\.");
  String[] ip_address = address.split("\\.");
  for (int i = 0; i < mask.length; i++)
  {
    if (mask[i].equals("*") || mask[i].equals(ip_address[i]))
      continue;
    else if (mask[i].contains("-"))
    {
      byte min = Byte.parseByte(mask[i].split("-")[0]);
      byte max = Byte.parseByte(mask[i].split("-")[1]);
      byte ip = Byte.parseByte(ip_address[i]);
      if (ip < min || ip > max)
        return false;
    }
    else
      return false;
  }
  return true;
}

</code>

java/network.1432542136.txt.gz · 마지막으로 수정됨: 2015/05/25 17:22 저자 kwon37xi