클라이언트 IP 추출 메서드의 클래스 변경

main
이범준 12 months ago
parent af3700c8d5
commit 0a62113093

@ -13,6 +13,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;
import cokr.xit.applib.AppCmmnUtil;
import cokr.xit.base.code.CommonCode;
import cokr.xit.base.code.service.CodeService;
import cokr.xit.base.security.access.service.AuthorityService;
@ -23,7 +24,6 @@ import cokr.xit.fims.FimsConf;
import cokr.xit.fims.base.FimsUser;
import cokr.xit.fims.base.service.bean.OgdpBean;
import cokr.xit.fims.base.service.bean.SseBean;
import cokr.xit.fims.cmmn.CmmnUtil;
import cokr.xit.fims.task.TaskRequestMappingHandlerMapping;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.foundation.web.RequestHandlerReader;
@ -166,7 +166,7 @@ public class MainController extends cokr.xit.base.web.MainController {
public ModelAndView ipInfo(HttpServletRequest hreq) {
String flag = hreq.getParameter("flag");
boolean flagUsable = false;
String remoteAddr = CmmnUtil.getClientIpAddr(hreq);
String remoteAddr = AppCmmnUtil.getClientIpAddr(hreq);
String net = "";
String[] LOCAL = {"127.0.0.1", "0:0:0:0:0:0:0:1"};

@ -27,7 +27,6 @@ import java.util.stream.Collectors;
import java.util.stream.Stream;
import javax.imageio.ImageIO;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.io.FilenameUtils;
import org.springframework.core.io.ClassPathResource;
@ -607,33 +606,5 @@ public class CmmnUtil {
return mm * 2.83465f;
}
/**
* IP .
* @param request 릿
* @return IP
*/
public static String getClientIpAddr(HttpServletRequest request) {
String REGEXP_IPV4_ADDR = "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$";
String[] headerNames = {"X-Forwarded-For","Proxy-Client-IP","WL-Proxy-Client-IP","HTTP_CLIENT_IP","HTTP_X_FORWARDED_FOR"};
String ip = "";
for(String headerName : headerNames) {
ip = request.getHeader(headerName);
if(ip != null && ip.contains(",")) {
ip = ip.split(",",-1)[0];
}
if(ip != null && Pattern.matches(REGEXP_IPV4_ADDR, ip)) {
break;
}
}
if(ip != null && ip.contains(",")) {
ip = ip.split(",",-1)[0];
}
if(ip == null || !Pattern.matches(REGEXP_IPV4_ADDR, ip)) {
ip = request.getRemoteAddr();
}
return ip;
}
}
Loading…
Cancel
Save