parent
b0b16e280f
commit
bce53c6e16
|
@ -4,6 +4,7 @@ import com.dispose.ability.DisposeAbility;
|
||||||
import com.dispose.common.DisposeCapacityType;
|
import com.dispose.common.DisposeCapacityType;
|
||||||
import com.dispose.common.DisposeObjectType;
|
import com.dispose.common.DisposeObjectType;
|
||||||
import com.dispose.common.ErrorCode;
|
import com.dispose.common.ErrorCode;
|
||||||
|
import com.dispose.common.Helper;
|
||||||
import com.dispose.common.IpAddrType;
|
import com.dispose.common.IpAddrType;
|
||||||
import com.dispose.common.NetflowDirection;
|
import com.dispose.common.NetflowDirection;
|
||||||
import com.dispose.pojo.dto.protocol.base.ProtocolRespDTO;
|
import com.dispose.pojo.dto.protocol.base.ProtocolRespDTO;
|
||||||
|
@ -12,6 +13,8 @@ import com.dispose.pojo.vo.DeviceFirewareInfo;
|
||||||
import com.dispose.yiyang.dispose.common.YiYangDisposeAbilityRsp;
|
import com.dispose.yiyang.dispose.common.YiYangDisposeAbilityRsp;
|
||||||
import com.dispose.yiyang.dispose.common.YiYangLoginRsp;
|
import com.dispose.yiyang.dispose.common.YiYangLoginRsp;
|
||||||
import com.dispose.yiyang.dispose.protocol.YiYangInterface;
|
import com.dispose.yiyang.dispose.protocol.YiYangInterface;
|
||||||
|
import inet.ipaddr.IPAddress;
|
||||||
|
import inet.ipaddr.IPAddressString;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
@ -229,7 +232,34 @@ public class YiYangAbilityImpl implements DisposeAbility {
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public boolean isCarryProtectIp(String ipAddr) {
|
public boolean isCarryProtectIp(String ipAddr) {
|
||||||
return true;
|
boolean ret = false;
|
||||||
|
IPAddress addr = new IPAddressString(ipAddr).getAddress();
|
||||||
|
synchronized (this) {
|
||||||
|
if (addr.isIPv4()) {
|
||||||
|
ret = protectIpV4.stream().anyMatch(v -> Helper.ipInRange(v, ipAddr));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (addr.isIPv6()) {
|
||||||
|
ret = protectIpV6.stream().anyMatch(v -> Helper.ipInRange(v, ipAddr));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!ret) {
|
||||||
|
// 更新设备防护IP
|
||||||
|
getDisposeDeviceProtectObject();
|
||||||
|
|
||||||
|
synchronized (this) {
|
||||||
|
if (addr.isIPv4()) {
|
||||||
|
ret = protectIpV4.stream().anyMatch(v -> Helper.ipInRange(v, ipAddr));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (addr.isIPv6()) {
|
||||||
|
ret = protectIpV6.stream().anyMatch(v -> Helper.ipInRange(v, ipAddr));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue