스프링 부트(Spring Boot)에서 IPv4 주소를 우선적으로 사용하도록 설정하려면 아래의 자바 실행 옵션을 추가해야 한다. 바인딩 주소를 IPv4로 설정하는 것으로 IPv4로 통신하도록 설정할 수 있지만 바인딩 주소에 제한이 발생하는 단점이 있기에 아래의 설정을 추가하는 방법을 권장한다.
-Djava.net.preferIPv4Stack=true
스프링 부트 프로젝트에서 'Run As' → 'Run Configurations'로 이동한다.
'Spring Boot App' → 'VM arguments:' 화면으로 이동하여 아래의 사진처럼 IPv4를 우선적으로 사용하여 통신하도록 설정한다.
스프링 부트를 재실행하면 IPv4를 사용하여 통신하는 것을 확인할 수 있다.
자바는 IPv6와 IPv4 둘 다 통신이 가능한 환경이면 IPv6 주소를 활용해서 통신한다. 하지만 IPv4를 사용하는 것을 전제로 설계된 시스템에서는 이 부분으로 인해 오류가 발생할 수 있다. 그러므로 자바 실행 옵션을 부여하여 IPv6 사용을 억제하는 것이 필요하다. 네트워크 인터페이스 설정이 가능한 상황이라면 네트워크 인터페이스가 IPv6를 사용하지 않도록 설정하여 해결하는 것이 근본적인 해결 방법이다.
참고문서
- "Networking Properties", 자바7 공식 문서, 오라클. @원문보기
- "Networking IPv6 User Guide", 자바8 공식 문서, 오라클. @원문보기
- "Appendix A. Java IPv4/IPv6 Properties", Red Hat JBoss Web Server 5.2. @원문보기
'[WEB] Back-End Framework & Library > 스프링 부트(Spring Boot)' 카테고리의 다른 글
[메이븐] 스프링 부트에서 Javadoc 사용하기 (0) | 2024.06.20 |
---|---|
스프링 부트와 호환되는 springdoc-openapi 버전 목록 (0) | 2024.06.14 |
스프링 부트 실행 스크립트에서 서버 포트 변경하는 방법 (0) | 2024.05.28 |
[스프링] STS(Spring Tool Suite) 4 통합개발환경 설치 (0) | 2022.09.06 |
댓글