西安市书法协会电活:java 限制IP 咸宁必虎小张

来源:百度文库 编辑:高校问答 时间:2024/04/29 00:40:57
package webpub.config;

//import webpub.config.*;

/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2005</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class ip {

public ip() {
}

public static String replace_string(String s, String s1, String s2) {
String s3 = "";
int i = s1.length();
int j;
while ( (j = s.indexOf(s1)) != -1) {
s3 = s3 + s.substring(0, j);
s3 = s3 + s2;
s = s.substring(j + i);
}
s3 = s3 + s;
return s3;
}

public static boolean checkip( String ip, String allowip1, String allowip2 ) {
boolean checkip = false;

replacestring replace_string = new replacestring();
ip = replace_string.replace_string( ip, ".", "," );
allowip1 = replace_string.replace_string( allowip1, ".", "," );
allowip1 = replace_string.replace_string( allowip1, "*", "256" );
allowip2 = replace_string.replace_string( allowip2, ".", "," );
allowip2 = replace_string.replace_string( allowip2, "*", "256" );

String[] ipstr = ip.split( "," );
long i1 = Long.parseLong( ipstr[0] ) * 256 * 256 * 256;
long i2 = Long.parseLong( ipstr[1] ) * 256 * 256;
long i3 = Long.parseLong( ipstr[2] ) * 256;
long i4 = Long.parseLong( ipstr[3] );
long i = i1 + i2 + i3 + i4;

System.out.println( "i:" + i + "——ip:" + ip + "" );

String[] allowip1str = allowip1.split( "," );
long o1 = Long.parseLong( allowip1str[0] ) * 256 * 256 * 256;
long o2 = Long.parseLong( allowip1str[1] ) * 256 * 256;
long o3 = Long.parseLong( allowip1str[2] ) * 256;
long o4 = Long.parseLong( allowip1str[3] );
long o = o1 + o2 + o3 + o4;

System.out.println( "o:" + o + "——allowip1:" + allowip1 + "" );

String[] allowip2str = allowip2.split( "," );
long p1 = Long.parseLong( allowip2str[0] ) * 256 * 256 * 256;
long p2 = Long.parseLong( allowip2str[1] ) * 256 * 256;
long p3 = Long.parseLong( allowip2str[2] ) * 256;
long p4 = Long.parseLong( allowip2str[3] );
long p = p1 + p2 + p3 + p4;

System.out.println( "p:" + p + "——allowip1:" + allowip2 + "" );

if ( i >= o && i <= p ) {
System.out.println( "您的IP通过" );
checkip = true;
}
else {
System.out.println( "您的IP被禁止" );
checkip = false;
}

return checkip;
}

}