반응형
우리가 일반적으로 알고 있는 IP는 192.168.0.1, 127.0.0.1과 같은 형태인데, java에서 request.getRemoteAddr()의 IP가 0:0:0:0:0:0:0:1인 경우가 있습니다.
여기서 0:0:0:0:0:0:0:1이라는 건 IPv6의 주소입니다.
그럼 IPv6는 무엇일까요?
IPv6(Internet Protocol version 6)는 인터넷 프로토콜 스택 중 네트워크 계층의 프로토콜로서 버전 6 인터넷 프로토콜(version 6 Internet Protocol)로 제정된 차세대 인터넷 프로토콜을 말한다. 인터넷(Internet)은 IPv4 프로토콜로 구축되어 왔으나 IPv4 프로토콜의 주소가 32 비트라는 제한된 주소 공간 및 국가별로 할당된 주소가 거의 소진되고 있다는 한계점으로 인해 지속적인 인터넷 발전에 문제가 예상되어, 이에 대한 대안으로써 IPv6 프로토콜이 제안되었으며, 국제 표준이 RFC를 통해서 확정되었고, 실제로 IPv6 주소는 휴대폰 및 컴퓨터에 할당되어 적용되고 있다.
출처 : 위키백과
다시 본론으로 돌아와서, 이렇게 IP가 0:0:0:0:0:0:0:1로 표시되는 경우는 localhost로 서버에 접속했을 때 생기는 현상이며, 192.168.0.1과 같은 IP로 접근했을 때는 정상적으로 표시됩니다.
이것을 127.0.0.1로 표시하기 위해서는 Tomcat(WAS) setting을 변경해야 합니다.
Tomcat Setting 변경 방법
- Eclipse Tomcat Server 설정 방법
Run > Run Configurations > Arguments tab > -Djava.net.preferIPv4Stack=true 를 맨 뒤에 추가 - Intellij 설정 방법
- Help > Edit Custom VM Options ... 메뉴 클릭
- -Djava.net.preferIPv4Stack=true 옵션 추가
-Xms128m -Xmx1013m -XX:ReservedCodeCacheSize=240m -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -ea -XX:CICompilerCount=2 -Dsun.io.useCanonPrefixCache=false -Djdk.http.auth.tunneling.disabledSchemes="" -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Djdk.attach.allowAttachSelf=true -Dkotlinx.coroutines.debug=off -Djdk.module.illegalAccess.silent=true -Dfile.encoding=UTF-8 -Djava.net.preferIPv4Stack=true
- Tomcat 설정 방법
Tomcat설치경로/bin/catalina.bat의 "set JAVA_OPTS"를 검색하면 두 개가 나오는데, 둘 다 -Djava.net.preferIPv4Stack=true를 추가합니다.
참조
JAVA에서 IPv4 사용하기
안녕하세요. 빅한입니다. 서론 오늘은 작업하는 도중에 로컬에서 테스트할 경우 request.getRemoteAddr() 호출시 주소가 "0:0:0:0:0:0:0:1"형식으로 나올경우가 있어서 포스팅합니다. 사실 "0:0:0:0:0:0:0:1"이
hane-1.tistory.com
Tomcat Request IPv6 to IPv4
Spring에서 request.getRemoteAddr()의 IP가 0:0:0:0:0:0:0:1 일 때, 0:0:0:0:0:0:0:1 이라는건 IPv6의 주소를 가져온 것이다. 이는 IPv4로 봤을 때 127.0.0.1 이다. localhost로 서버에 접속했을 때 생기는 현상..
codify.tistory.com
728x90
반응형
'개발도구 > WAS' 카테고리의 다른 글
linux에서 tomcat heap memory 설정 (0) | 2022.03.01 |
---|---|
eclipse tomcat 연동 시 404 에러 해결 방법 (3) | 2021.10.14 |
CentOS 7에 Tomcat 9 설치 (0) | 2021.01.01 |
[Tomcat Error] Invalid byte tag in constant pool (0) | 2020.12.26 |
Tomcat 실행 시 "둘 이상의 fragment들이 발견되었습니다. 이는 상대적 순서배열에서 불허됩니다." 에러 발생 (0) | 2020.10.23 |