diff --git a/src/main/java/com/nis/web/service/configuration/IpCfgService.java b/src/main/java/com/nis/web/service/configuration/IpCfgService.java index fda2dc950..5ea7d5287 100644 --- a/src/main/java/com/nis/web/service/configuration/IpCfgService.java +++ b/src/main/java/com/nis/web/service/configuration/IpCfgService.java @@ -136,11 +136,7 @@ public class IpCfgService extends CrudService { ipCfgDao.saveCfgIndex(entity); if(entity.getIpPortList()!=null){ for(IpPortCfg cfg:entity.getIpPortList()){ - if(Constants.IPSEC_PROTOCOL.intValue()==cfg.getProtocol().intValue()) { - BeanUtils.copyProperties(entity, cfg,new String[]{"userRegion1","cfgRegionCode","cfgType"}); - }else { - BeanUtils.copyProperties(entity, cfg,new String[]{"cfgRegionCode","cfgType"}); - } + BeanUtils.copyProperties(entity, cfg,new String[]{"cfgRegionCode","cfgType"}); ipCfgDao.saveIpPortCfg(cfg); } } @@ -176,11 +172,7 @@ public class IpCfgService extends CrudService { entity.setCreatorId(entity.getCurrentUser().getId()); if(entity.getIpPortList()!=null){ for(IpPortCfg cfg:entity.getIpPortList()){ - if(Constants.IPSEC_PROTOCOL.intValue()==cfg.getProtocol().intValue()) { - BeanUtils.copyProperties(entity, cfg,new String[]{"userRegion1","cfgRegionCode","cfgType"}); - }else { - BeanUtils.copyProperties(entity, cfg,new String[]{"cfgRegionCode","cfgType"}); - } + BeanUtils.copyProperties(entity, cfg,new String[]{"cfgRegionCode","cfgType"}); ipCfgDao.saveIpPortCfg(cfg); } } @@ -567,11 +559,6 @@ public class IpCfgService extends CrudService { ipCfgDao.auditCfg(cfg); } if(isAudit==1&&maatType==Constants.MAAT_TYPE){ - for(IpPortCfg cfg:entity.getIpPortList()) { - if(Constants.IPSEC_PROTOCOL==cfg.getProtocol().intValue()) { - cfg.setProtocol(Integer.parseInt(cfg.getUserRegion1())); - } - } Map map = cfgConvert(ipRegionList,entity.getIpPortList(),1,entity,groupRelationList); groupRelationList=map.get("groupList"); ipRegionList=map.get("dstList"); @@ -610,10 +597,7 @@ public class IpCfgService extends CrudService { List ipList=new ArrayList<>(); for(IpPortCfg cfg :entity.getIpPortList()) { Integer ipsecProtocol=null; - if(Constants.IPSEC_PROTOCOL==cfg.getProtocol().intValue()) { - ipsecProtocol=Integer.parseInt(cfg.getUserRegion1()); - } - BeanUtils.copyProperties(entity, cfg, new String[]{"userRegion1","cfgId"}); + BeanUtils.copyProperties(entity, cfg, new String[]{"cfgId"}); InlineIp ip=convertCallBackIp(cfg,null); if(ipsecProtocol!=null) { ip.setProtocol(ipsecProtocol); @@ -677,10 +661,7 @@ public class IpCfgService extends CrudService { List ipList=new ArrayList<>(); for(IpPortCfg cfg :entity.getIpPortList()) { Integer ipsecProtocol=null; - if(Constants.IPSEC_PROTOCOL==cfg.getProtocol().intValue()) { - ipsecProtocol=Integer.parseInt(cfg.getUserRegion1()); - } - BeanUtils.copyProperties(entity, cfg, new String[]{"userRegion1","cfgId"}); + BeanUtils.copyProperties(entity, cfg, new String[]{"cfgId"}); InlineIp ip=convertCallBackIp(cfg,null); if(ipsecProtocol!=null) { ip.setProtocol(ipsecProtocol); diff --git a/src/main/resources/sql/20181015/UPDATE_PROTOCOL_DICT.sql b/src/main/resources/sql/20181015/UPDATE_PROTOCOL_DICT.sql new file mode 100644 index 000000000..f5f828239 --- /dev/null +++ b/src/main/resources/sql/20181015/UPDATE_PROTOCOL_DICT.sql @@ -0,0 +1,3 @@ +INSERT INTO sys_data_dictionary_item VALUES(2725,50,'ESP','ESP',0,1,1,63),(2726,51,'AH','AH',0,1,1,63) + +UPDATE function_region_dict SET config_protocol='6,17,1,15,50,51' WHERE function_id=5 AND config_region_value='INLINE_IP_CB'; \ No newline at end of file diff --git a/src/main/resources/sql/20181015/update_stream_region.sql b/src/main/resources/sql/20181015/update_stream_region.sql new file mode 100644 index 000000000..4293d9dbd --- /dev/null +++ b/src/main/resources/sql/20181015/update_stream_region.sql @@ -0,0 +1 @@ +update function_region_dict set config_expr_type='1' ,config_match_method='0' where dict_id='25'; \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/cfg/ipCfgForm.jsp b/src/main/webapp/WEB-INF/views/cfg/ipCfgForm.jsp index 2197520dd..92faec061 100644 --- a/src/main/webapp/WEB-INF/views/cfg/ipCfgForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/ipCfgForm.jsp @@ -64,20 +64,6 @@ -
diff --git a/src/main/webapp/WEB-INF/views/cfg/ipaddr/ipForm.jsp b/src/main/webapp/WEB-INF/views/cfg/ipaddr/ipForm.jsp index e18f689c8..e01674de6 100644 --- a/src/main/webapp/WEB-INF/views/cfg/ipaddr/ipForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/ipaddr/ipForm.jsp @@ -32,12 +32,6 @@ }else{ hideAction(1,asnRegionCode); } - $("[name$='protocol']").each(function(){ - showHideIPSECProtocol($(this)); - }); - $("[name$='protocol']").on("change",function(){ - showHideIPSECProtocol($(this)); - }); if(isAsn==0){ $("[class~='glyphicon-plus'][class~='ipPortList']").click(); $("[class~='boxSolid'][class~='asn']").find(".glyphicon-remove").click(); @@ -113,7 +107,6 @@ changeIPVal(tabInfo); } processAction(isAsn,tabInfo); - $("[name$='protocol']").change(); /* if(tabInfo){ tabInfo.find("[name$='cfgType']").val(cfgType); tabInfo.find("[name$='cfgRegionCode']").val(cfgRegionCode); diff --git a/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/jquery.validate.method.js b/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/jquery.validate.method.js index 8b41e8b02..4ba9e7039 100644 --- a/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/jquery.validate.method.js +++ b/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/jquery.validate.method.js @@ -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 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 name=$(element).attr("name"); if(value.length==0||value.trim().length==0){return true;} - var typeInt=$(element).parents(".row").parent(".row").find("select[name$='ipType']").val(); - var ipPattern=$(element).parents(".row").parent(".row").find("select[name$='ipPattern']").val(); - var srcIpAddress=$(element).parents(".row").parent(".row").find("input[name$='srcIpAddress']").val(); - var destIpAddress=$(element).parents(".row").parent(".row").find("input[name$='destIpAddress']").val(); - var srcIpIsHidden=$(element).parents(".row").parent(".row").find("input[name$='srcIpAddress']").is(":hidden"); - var destIpIsHidden=$(element).parents(".row").parent(".row").find("input[name$='destIpAddress']").is(":hidden"); - if(ipPattern==1){//ip/掩码格式 + var ipTypeE,ipPatternE,srcIpAddressE,destIpAddressE; + if(name.indexOf("srcIpAddress")>-1){ + srcIpAddressE=$(element); + ipTypeE=$("select[name='"+name.replace("srcIpAddress","ipType")+"']"); + ipPatternE=$("select[name='"+name.replace("srcIpAddress","ipPattern")+"']"); + destIpAddressE=$("input[name='"+name.replace("srcIpAddress","destIpAddress")+"']"); + }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; destIpAddress=destIpAddress.indexOf("/") >-1 ?destIpAddress.split("/")[0] : destIpAddress; }else if (ipPattern==2){ srcIpAddress=srcIpAddress.indexOf("-") >-1 ?srcIpAddress.split("-")[0] : srcIpAddress; destIpAddress=destIpAddress.indexOf("-") >-1 ?destIpAddress.split("-")[0] : destIpAddress; - } + }*/ if(srcIpIsHidden){ if((srcIpAddress == 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 //C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0 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 startPart0= RegExp.$1; - var startPart1= RegExp.$5; - if((startPart0<128&&startPart1<128)||(startPart0>127&&startPart1>127&&startPart0<192&&startPart1<192) - ||(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224) - ||(startPart0>223&&startPart1>223&&startPart0<240&&startPart1<240) - ||(startPart0>239&&startPart1>239&&startPart0<256&&startPart1<256)){ - }else{ - $.validator.messages.ipCheck=$.validator.messages.ipRange; - return false; - } - var startIp=value.split("-")[0]; - var endIp=value.split("-")[1]; + var startIp=value.split("-")[0]; + var endIp=value.split("-")[1]; + var startPart0=startIp.split(".")[0]; + var startPart1=endIp.split(".")[0]; + if(value==IPv4RangeDefault){ + return true; + } + if(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224){//仅允许C段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{ $.validator.messages.ipCheck=$.validator.messages.ipRange1; return false; } }else{ + $.validator.messages.ipCheck=$.validator.messages.ipRange; return false; } }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 //C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0 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 startPart0= RegExp.$1; - var startPart1= RegExp.$5; - if((startPart0<128&&startPart1<128)||(startPart0>127&&startPart1>127&&startPart0<192&&startPart1<192) - ||(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224) - ||(startPart0>223&&startPart1>223&&startPart0<240&&startPart1<240) - ||(startPart0>239&&startPart1>239&&startPart0<256&&startPart1<256)){ - }else{ - $.validator.messages.ipCheck=$.validator.messages.ipRange; - return false; - } - var startIp=value.split("-")[0]; - var endIp=value.split("-")[1]; + var startIp=value.split("-")[0]; + var endIp=value.split("-")[1]; + var startPart0=startIp.split(".")[0]; + var startPart1=endIp.split(".")[0]; + if(value==IPv4RangeDefault){ + return true; + } + if(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224){//仅允许C段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{ $.validator.messages.ipCheck=$.validator.messages.ipRange1; return false; } - }else{ - $.validator.messages.ipCheck=$.validator.messages.ip; + $.validator.messages.ipCheck=$.validator.messages.ipRange; return false; } }else{ @@ -578,7 +593,6 @@ jQuery.validator.addMethod("ipCheck",function(value, element) { } } }else if(name.indexOf("destIpAddress")>-1){ - console.log("server ip must ipv4"); 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(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 //C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0 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 startPart0= RegExp.$1; - var startPart1= RegExp.$5; - if((startPart0<128&&startPart1<128)||(startPart0>127&&startPart1>127&&startPart0<192&&startPart1<192) - ||(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224) - ||(startPart0>223&&startPart1>223&&startPart0<240&&startPart1<240) - ||(startPart0>239&&startPart1>239&&startPart0<256&&startPart1<256)){ - }else{ - $.validator.messages.ipCheck=$.validator.messages.ipRange; - return false; - } - var startIp=value.split("-")[0]; - var endIp=value.split("-")[1]; + var startIp=value.split("-")[0]; + var endIp=value.split("-")[1]; + var startPart0=startIp.split(".")[0]; + var startPart1=endIp.split(".")[0]; + if(value==IPv4RangeDefault){ + return true; + } + if(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224){//仅允许C段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{ $.validator.messages.ipCheck=$.validator.messages.ipRange1; return false; } - }else{ - $.validator.messages.ipCheck=$.validator.messages.ip; + $.validator.messages.ipCheck=$.validator.messages.ipRange; return false; } }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 //C类192.0.0.0-223.255.255.255 默认掩码255.255.255.0 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 startPart0= RegExp.$1; - var startPart1= RegExp.$5; - if((startPart0<128&&startPart1<128)||(startPart0>127&&startPart1>127&&startPart0<192&&startPart1<192) - ||(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224) - ||(startPart0>223&&startPart1>223&&startPart0<240&&startPart1<240) - ||(startPart0>239&&startPart1>239&&startPart0<256&&startPart1<256)){ - }else{ - $.validator.messages.ipCheck=$.validator.messages.ipRange; - return false; - } - var startIp=value.split("-")[0]; - var endIp=value.split("-")[1]; + var startIp=value.split("-")[0]; + var endIp=value.split("-")[1]; + var startPart0=startIp.split(".")[0]; + var startPart1=endIp.split(".")[0]; + if(value==IPv4RangeDefault){ + return true; + } + if(startPart0>191&&startPart1>191&&startPart0<224&&startPart1<224){//仅允许C段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{ $.validator.messages.ipCheck=$.validator.messages.ipRange1; return false; } - }else{ - $.validator.messages.ipCheck=$.validator.messages.ip; + $.validator.messages.ipCheck=$.validator.messages.ipRange; return false; } }else if(ipv6_ip_subnet_regexp.test(value)){ diff --git a/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_en.js b/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_en.js index 1d2d73cbe..231d86c87 100644 --- a/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_en.js +++ b/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_en.js @@ -35,7 +35,7 @@ IpNotEqDestIp:" can't be the same", srcIpIsNotValue:"Client IP can't be ", destIpIsNotValue:"Server IP can't be ", - ipRange:"Wrong IP format or start IP and end IP in two subnet", + ipRange:"Wrong IP format or start IP and end IP in C subnet", ipRange1:"start IP should smaller than end IP", portCheck:"Please enter a correct port", notStartZero:"Please enter a valid Integer", @@ -74,6 +74,7 @@ log_1_hour:"Log For The Last Hour", input:"Please Enter ", protocolPort:"TCP protocol or UDP protocol must be chosen when port is greater than 0", - protocolPort1:"Only when TCP protocol or UDP protocol is chosen can port greater than 0,ALL protocol has no limit" + protocolPort1:"Only when TCP protocol or UDP protocol is chosen can port greater than 0,ALL protocol has no limit", + netAddress:"The class C type of IP addresses must has the same network number bit field" }); }(jQuery)); diff --git a/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_ru.js b/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_ru.js index 6e19e84c4..0bfe1cb1a 100644 --- a/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_ru.js +++ b/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_ru.js @@ -35,7 +35,7 @@ IpNotEqDestIp:"Не может быть одинаковым", srcIpIsNotValue:"Исходный IP не может быть ", destIpIsNotValue:"IP назначение не может быть", - ipRange:"Неверный IP-формат или начальный IP и конечный IP в двух подсети", + ipRange:"IP范围格式错误或者起始IP与结束IP不在C网段", ipRange1:"Начальный IP должен быть меньше конечного IP", portCheck: "Введите  правильный  порт.", notStartZero:"Введите действительное целое число", @@ -74,6 +74,7 @@ log_1_hour:"Log For The Last Hour", input:"Please Enter ", protocolPort:"TCP protocol or UDP protocol must be chosen when port is greater than 0", - protocolPort1:"Only when TCP protocol or UDP protocol is chosen can port greater than 0,ALL protocol has no limit" + protocolPort1:"Only when TCP protocol or UDP protocol is chosen can port greater than 0,ALL protocol has no limit", + netAddress:"C类IP地址网络位必须相同" }); }(jQuery)); diff --git a/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_zh.js b/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_zh.js index 8503cfb73..e0c20861e 100644 --- a/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_zh.js +++ b/src/main/webapp/static/global/plugins/jquery-validation/1.11.0/localization/messages_zh.js @@ -35,7 +35,7 @@ IpNotEqDestIp:" 不能相同", srcIpIsNotValue:"源IP不能为 ", destIpIsNotValue:"目的IP不能为", - ipRange:"IP范围格式错误或者起始IP与结束IP不在同一网段", + ipRange:"IP范围格式错误或者起始IP与结束IP不在C网段", ipRange1:"起始IP值应小于结束IP值", portCheck:"请填写正确的端口", notStartZero:"请填写正确的数值", @@ -74,6 +74,7 @@ log_1_hour:"1小时日志量", input:"请输入 ", protocolPort:"端口大于0时必须选择TCP协议或者UDP协议", - protocolPort1:"只有tcp,udp协议端口号可以不为0,全部协议无限制" + protocolPort1:"只有tcp,udp协议端口号可以不为0,全部协议无限制", + netAddress:"C类IP地址网络位必须相同" }); }(jQuery));