|
|
|
@@ -255,21 +255,34 @@ jQuery.validator.addMethod("ipCheck",function(value, element) {
|
|
|
|
var ipv6_ip_range_regexp= /^((::)|(([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:)|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}(:[0-9A-Fa-f]{1,4}){1,2})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){1,3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){1,4})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){1,5})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){1,6})|(:(:[0-9A-Fa-f]{1,4}){1,7})|(([0-9A-Fa-f]{1,4}:){6}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){0,1}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){0,2}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){0,3}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){0,4}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(:(:[0-9A-Fa-f]{1,4}){0,5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}))\-((::)|(([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:)|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}(:[0-9A-Fa-f]{1,4}){1,2})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){1,3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){1,4})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){1,5})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){1,6})|(:(:[0-9A-Fa-f]{1,4}){1,7})|(([0-9A-Fa-f]{1,4}:){6}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){0,1}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){0,2}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){0,3}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){0,4}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(:(:[0-9A-Fa-f]{1,4}){0,5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}))$/;
|
|
|
|
var ipv6_ip_range_regexp= /^((::)|(([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:)|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}(:[0-9A-Fa-f]{1,4}){1,2})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){1,3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){1,4})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){1,5})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){1,6})|(:(:[0-9A-Fa-f]{1,4}){1,7})|(([0-9A-Fa-f]{1,4}:){6}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){0,1}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){0,2}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){0,3}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){0,4}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(:(:[0-9A-Fa-f]{1,4}){0,5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}))\-((::)|(([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:)|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}(:[0-9A-Fa-f]{1,4}){1,2})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){1,3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){1,4})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){1,5})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){1,6})|(:(:[0-9A-Fa-f]{1,4}){1,7})|(([0-9A-Fa-f]{1,4}:){6}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){0,1}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){0,2}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){0,3}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){0,4}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(:(:[0-9A-Fa-f]{1,4}){0,5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}))$/;
|
|
|
|
var ipv4_ip_regexp=/^(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[1-9])\.(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$/;
|
|
|
|
var ipv4_ip_regexp=/^(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[1-9])\.(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$/;
|
|
|
|
var ipv6_ip_regexp=/^((::)|(([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:)|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}(:[0-9A-Fa-f]{1,4}){1,2})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){1,3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){1,4})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){1,5})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){1,6})|(:(:[0-9A-Fa-f]{1,4}){1,7})|(([0-9A-Fa-f]{1,4}:){6}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){0,1}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){0,2}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){0,3}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){0,4}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(:(:[0-9A-Fa-f]{1,4}){0,5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}))$/;
|
|
|
|
var ipv6_ip_regexp=/^((::)|(([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:)|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}(:[0-9A-Fa-f]{1,4}){1,2})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){1,3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){1,4})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){1,5})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){1,6})|(:(:[0-9A-Fa-f]{1,4}){1,7})|(([0-9A-Fa-f]{1,4}:){6}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){0,1}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){0,2}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){0,3}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){0,4}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3})|(:(:[0-9A-Fa-f]{1,4}){0,5}:(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}))$/;
|
|
|
|
|
|
|
|
var name=$(element).attr("name");
|
|
|
|
if(value.length==0||value.trim().length==0){return true;}
|
|
|
|
if(value.length==0||value.trim().length==0){return true;}
|
|
|
|
var typeInt=$(element).parents(".row").parent(".row").find("select[name$='ipType']").val();
|
|
|
|
var ipTypeE,ipPatternE,srcIpAddressE,destIpAddressE;
|
|
|
|
var ipPattern=$(element).parents(".row").parent(".row").find("select[name$='ipPattern']").val();
|
|
|
|
if(name.indexOf("srcIpAddress")>-1){
|
|
|
|
var srcIpAddress=$(element).parents(".row").parent(".row").find("input[name$='srcIpAddress']").val();
|
|
|
|
srcIpAddressE=$(element);
|
|
|
|
var destIpAddress=$(element).parents(".row").parent(".row").find("input[name$='destIpAddress']").val();
|
|
|
|
ipTypeE=$("select[name='"+name.replace("srcIpAddress","ipType")+"']");
|
|
|
|
var srcIpIsHidden=$(element).parents(".row").parent(".row").find("input[name$='srcIpAddress']").is(":hidden");
|
|
|
|
ipPatternE=$("select[name='"+name.replace("srcIpAddress","ipPattern")+"']");
|
|
|
|
var destIpIsHidden=$(element).parents(".row").parent(".row").find("input[name$='destIpAddress']").is(":hidden");
|
|
|
|
destIpAddressE=$("input[name='"+name.replace("srcIpAddress","destIpAddress")+"']");
|
|
|
|
if(ipPattern==1){//ip/掩码格式
|
|
|
|
}else if(name.indexOf("destIpAddress")>-1){
|
|
|
|
|
|
|
|
destIpAddressE=$(element);
|
|
|
|
|
|
|
|
ipTypeE=$("select[name='"+name.replace("destIpAddress","ipType")+"']");
|
|
|
|
|
|
|
|
ipPatternE=$("select[name='"+name.replace("destIpAddress","ipPattern")+"']");
|
|
|
|
|
|
|
|
srcIpAddressE=$("input[name='"+name.replace("destIpAddress","srcIpAddress")+"']");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
var typeInt=ipTypeE.val();
|
|
|
|
|
|
|
|
var ipPattern=ipPatternE.val();
|
|
|
|
|
|
|
|
var srcIpAddress=srcIpAddressE.val();
|
|
|
|
|
|
|
|
var destIpAddress=destIpAddressE.val();
|
|
|
|
|
|
|
|
var srcIpIsHidden=srcIpAddressE.is(":hidden");
|
|
|
|
|
|
|
|
var destIpIsHidden=destIpAddressE.is(":hidden");
|
|
|
|
|
|
|
|
var IPv4RangeDefault="0.0.0.0-0.0.0.0";
|
|
|
|
|
|
|
|
/*if(ipPattern==1){//ip/掩码格式
|
|
|
|
srcIpAddress=srcIpAddress.indexOf("/") >-1 ?srcIpAddress.split("/")[0] : srcIpAddress;
|
|
|
|
srcIpAddress=srcIpAddress.indexOf("/") >-1 ?srcIpAddress.split("/")[0] : srcIpAddress;
|
|
|
|
destIpAddress=destIpAddress.indexOf("/") >-1 ?destIpAddress.split("/")[0] : destIpAddress;
|
|
|
|
destIpAddress=destIpAddress.indexOf("/") >-1 ?destIpAddress.split("/")[0] : destIpAddress;
|
|
|
|
}else if (ipPattern==2){
|
|
|
|
}else if (ipPattern==2){
|
|
|
|
srcIpAddress=srcIpAddress.indexOf("-") >-1 ?srcIpAddress.split("-")[0] : srcIpAddress;
|
|
|
|
srcIpAddress=srcIpAddress.indexOf("-") >-1 ?srcIpAddress.split("-")[0] : srcIpAddress;
|
|
|
|
destIpAddress=destIpAddress.indexOf("-") >-1 ?destIpAddress.split("-")[0] : destIpAddress;
|
|
|
|
destIpAddress=destIpAddress.indexOf("-") >-1 ?destIpAddress.split("-")[0] : destIpAddress;
|
|
|
|
}
|
|
|
|
}*/
|
|
|
|
if(srcIpIsHidden){
|
|
|
|
if(srcIpIsHidden){
|
|
|
|
if((srcIpAddress == destIpAddress)){
|
|
|
|
if((srcIpAddress == destIpAddress)){
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.destIpIsNotValue+destIpAddress;
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.destIpIsNotValue+destIpAddress;
|
|
|
|
@@ -311,26 +324,28 @@ jQuery.validator.addMethod("ipCheck",function(value, element) {
|
|
|
|
//B类128.0.0.0-191.255.255.255 默认掩码255.255.0.0
|
|
|
|
//B类128.0.0.0-191.255.255.255 默认掩码255.255.0.0
|
|
|
|
//C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0
|
|
|
|
//C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0
|
|
|
|
if(ipv4_ip_range_regexp.test(value)){
|
|
|
|
if(ipv4_ip_range_regexp.test(value)){
|
|
|
|
if(/^(\d+)\.(\d+)\.(\d+)\.(\d+)\-(\d+)\.(\d+)\.(\d+)\.(\d+)$/.test(value)&&(RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256 && RegExp.$5 <256 && RegExp.$6<256 && RegExp.$7<256 && RegExp.$8<256)){
|
|
|
|
var startIp=value.split("-")[0];
|
|
|
|
var startPart0= RegExp.$1;
|
|
|
|
var endIp=value.split("-")[1];
|
|
|
|
var startPart1= RegExp.$5;
|
|
|
|
var startPart0=startIp.split(".")[0];
|
|
|
|
if((startPart0<128&&startPart1<128)||(startPart0>127&&startPart1>127&&startPart0<192&&startPart1<192)
|
|
|
|
var startPart1=endIp.split(".")[0];
|
|
|
|
||(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224)
|
|
|
|
if(value==IPv4RangeDefault){
|
|
|
|
||(startPart0>223&&startPart1>223&&startPart0<240&&startPart1<240)
|
|
|
|
return true;
|
|
|
|
||(startPart0>239&&startPart1>239&&startPart0<256&&startPart1<256)){
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
if(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224){//仅允许C段IP
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange;
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
var startIp=value.split("-")[0];
|
|
|
|
|
|
|
|
var endIp=value.split("-")[1];
|
|
|
|
|
|
|
|
if(ipToNumber(startIp)<=ipToNumber(endIp)){//比较IP大小
|
|
|
|
if(ipToNumber(startIp)<=ipToNumber(endIp)){//比较IP大小
|
|
|
|
return true;
|
|
|
|
if((startIp.split(".")[0]!=endIp.split(".")[0])||
|
|
|
|
|
|
|
|
(startIp.split(".")[1]!=endIp.split(".")[1])||
|
|
|
|
|
|
|
|
(startIp.split(".")[2]!=endIp.split(".")[2])){
|
|
|
|
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.netAddress;
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange1;
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange1;
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange;
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
@@ -430,28 +445,28 @@ jQuery.validator.addMethod("ipCheck",function(value, element) {
|
|
|
|
//B类128.0.0.0-191.255.255.255 默认掩码255.255.0.0
|
|
|
|
//B类128.0.0.0-191.255.255.255 默认掩码255.255.0.0
|
|
|
|
//C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0
|
|
|
|
//C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0
|
|
|
|
if(ipv4_ip_range_regexp.test(value)){
|
|
|
|
if(ipv4_ip_range_regexp.test(value)){
|
|
|
|
if(/^(\d+)\.(\d+)\.(\d+)\.(\d+)\-(\d+)\.(\d+)\.(\d+)\.(\d+)$/.test(value)&&(RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256 && RegExp.$5 <256 && RegExp.$6<256 && RegExp.$7<256 && RegExp.$8<256)){
|
|
|
|
var startIp=value.split("-")[0];
|
|
|
|
var startPart0= RegExp.$1;
|
|
|
|
var endIp=value.split("-")[1];
|
|
|
|
var startPart1= RegExp.$5;
|
|
|
|
var startPart0=startIp.split(".")[0];
|
|
|
|
if((startPart0<128&&startPart1<128)||(startPart0>127&&startPart1>127&&startPart0<192&&startPart1<192)
|
|
|
|
var startPart1=endIp.split(".")[0];
|
|
|
|
||(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224)
|
|
|
|
if(value==IPv4RangeDefault){
|
|
|
|
||(startPart0>223&&startPart1>223&&startPart0<240&&startPart1<240)
|
|
|
|
return true;
|
|
|
|
||(startPart0>239&&startPart1>239&&startPart0<256&&startPart1<256)){
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
if(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224){//仅允许C段IP
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange;
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
var startIp=value.split("-")[0];
|
|
|
|
|
|
|
|
var endIp=value.split("-")[1];
|
|
|
|
|
|
|
|
if(ipToNumber(startIp)<=ipToNumber(endIp)){//比较IP大小
|
|
|
|
if(ipToNumber(startIp)<=ipToNumber(endIp)){//比较IP大小
|
|
|
|
return true;
|
|
|
|
if((startIp.split(".")[0]!=endIp.split(".")[0])||
|
|
|
|
|
|
|
|
(startIp.split(".")[1]!=endIp.split(".")[1])||
|
|
|
|
|
|
|
|
(startIp.split(".")[2]!=endIp.split(".")[2])){
|
|
|
|
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.netAddress;
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange1;
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange1;
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ip;
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange;
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
@@ -578,7 +593,6 @@ jQuery.validator.addMethod("ipCheck",function(value, element) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}else if(name.indexOf("destIpAddress")>-1){
|
|
|
|
}else if(name.indexOf("destIpAddress")>-1){
|
|
|
|
console.log("server ip must ipv4");
|
|
|
|
|
|
|
|
if(ipPattern==1){//ip/掩码格式
|
|
|
|
if(ipPattern==1){//ip/掩码格式
|
|
|
|
if(this.optional(element)||(/^(\d+)\.(\d+)\.(\d+)\.(\d+)\/(\d+)$/.test(value) && (RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256 && RegExp.$5<=32))){
|
|
|
|
if(this.optional(element)||(/^(\d+)\.(\d+)\.(\d+)\.(\d+)\/(\d+)$/.test(value) && (RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256 && RegExp.$5<=32))){
|
|
|
|
if(ipv4_ip_subnet_regexp.test(value)){
|
|
|
|
if(ipv4_ip_subnet_regexp.test(value)){
|
|
|
|
@@ -599,28 +613,28 @@ jQuery.validator.addMethod("ipCheck",function(value, element) {
|
|
|
|
//B类128.0.0.0-191.255.255.255 默认掩码255.255.0.0
|
|
|
|
//B类128.0.0.0-191.255.255.255 默认掩码255.255.0.0
|
|
|
|
//C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0
|
|
|
|
//C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0
|
|
|
|
if(ipv4_ip_range_regexp.test(value)){
|
|
|
|
if(ipv4_ip_range_regexp.test(value)){
|
|
|
|
if(/^(\d+)\.(\d+)\.(\d+)\.(\d+)\-(\d+)\.(\d+)\.(\d+)\.(\d+)$/.test(value)&&(RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256 && RegExp.$5 <256 && RegExp.$6<256 && RegExp.$7<256 && RegExp.$8<256)){
|
|
|
|
var startIp=value.split("-")[0];
|
|
|
|
var startPart0= RegExp.$1;
|
|
|
|
var endIp=value.split("-")[1];
|
|
|
|
var startPart1= RegExp.$5;
|
|
|
|
var startPart0=startIp.split(".")[0];
|
|
|
|
if((startPart0<128&&startPart1<128)||(startPart0>127&&startPart1>127&&startPart0<192&&startPart1<192)
|
|
|
|
var startPart1=endIp.split(".")[0];
|
|
|
|
||(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224)
|
|
|
|
if(value==IPv4RangeDefault){
|
|
|
|
||(startPart0>223&&startPart1>223&&startPart0<240&&startPart1<240)
|
|
|
|
return true;
|
|
|
|
||(startPart0>239&&startPart1>239&&startPart0<256&&startPart1<256)){
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
if(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224){//仅允许C段IP
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange;
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
var startIp=value.split("-")[0];
|
|
|
|
|
|
|
|
var endIp=value.split("-")[1];
|
|
|
|
|
|
|
|
if(ipToNumber(startIp)<=ipToNumber(endIp)){//比较IP大小
|
|
|
|
if(ipToNumber(startIp)<=ipToNumber(endIp)){//比较IP大小
|
|
|
|
return true;
|
|
|
|
if((startIp.split(".")[0]!=endIp.split(".")[0])||
|
|
|
|
|
|
|
|
(startIp.split(".")[1]!=endIp.split(".")[1])||
|
|
|
|
|
|
|
|
(startIp.split(".")[2]!=endIp.split(".")[2])){
|
|
|
|
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.netAddress;
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange1;
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange1;
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ip;
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange;
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
@@ -652,28 +666,28 @@ jQuery.validator.addMethod("ipCheck",function(value, element) {
|
|
|
|
//B类128.0.0.0-191.255.255.255 默认掩码255.255.0.0
|
|
|
|
//B类128.0.0.0-191.255.255.255 默认掩码255.255.0.0
|
|
|
|
//C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0
|
|
|
|
//C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0
|
|
|
|
if(ipv4_ip_range_regexp.test(value)){
|
|
|
|
if(ipv4_ip_range_regexp.test(value)){
|
|
|
|
if(/^(\d+)\.(\d+)\.(\d+)\.(\d+)\-(\d+)\.(\d+)\.(\d+)\.(\d+)$/.test(value)&&(RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256 && RegExp.$5 <256 && RegExp.$6<256 && RegExp.$7<256 && RegExp.$8<256)){
|
|
|
|
var startIp=value.split("-")[0];
|
|
|
|
var startPart0= RegExp.$1;
|
|
|
|
var endIp=value.split("-")[1];
|
|
|
|
var startPart1= RegExp.$5;
|
|
|
|
var startPart0=startIp.split(".")[0];
|
|
|
|
if((startPart0<128&&startPart1<128)||(startPart0>127&&startPart1>127&&startPart0<192&&startPart1<192)
|
|
|
|
var startPart1=endIp.split(".")[0];
|
|
|
|
||(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224)
|
|
|
|
if(value==IPv4RangeDefault){
|
|
|
|
||(startPart0>223&&startPart1>223&&startPart0<240&&startPart1<240)
|
|
|
|
return true;
|
|
|
|
||(startPart0>239&&startPart1>239&&startPart0<256&&startPart1<256)){
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
if(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224){//仅允许C段IP
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange;
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
var startIp=value.split("-")[0];
|
|
|
|
|
|
|
|
var endIp=value.split("-")[1];
|
|
|
|
|
|
|
|
if(ipToNumber(startIp)<=ipToNumber(endIp)){//比较IP大小
|
|
|
|
if(ipToNumber(startIp)<=ipToNumber(endIp)){//比较IP大小
|
|
|
|
return true;
|
|
|
|
if((startIp.split(".")[0]!=endIp.split(".")[0])||
|
|
|
|
|
|
|
|
(startIp.split(".")[1]!=endIp.split(".")[1])||
|
|
|
|
|
|
|
|
(startIp.split(".")[2]!=endIp.split(".")[2])){
|
|
|
|
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.netAddress;
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange1;
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange1;
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ip;
|
|
|
|
$.validator.messages.ipCheck=$.validator.messages.ipRange;
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}else if(ipv6_ip_subnet_regexp.test(value)){
|
|
|
|
}else if(ipv6_ip_subnet_regexp.test(value)){
|
|
|
|
|