🔥스파르타 TIL (트러블 슈팅)

WSL 실행 환경에서 발생한 문제

승승장규 2025. 2. 12. 00:17

 

Eureka 서버와 Gateway, Product 서버를 각각 실행시킨 뒤 Eureka에 접속해서 확인해 보니 호스트 이름이 이상하게 떠버렸다....

 

WSL을 실행시키지 않고 확인했을 때는 분명 localhost로 되어있었는데, WSL를 실행시키니 "사용자이름. mshome.net"이라는 이상하고 처음 보는 주소를 발견했다.

 

이러한 문제는 Gateway 서버에서 Product 서버에 요청을 보낼 때 화려하게 터져버렸다.

 

500 에러가 발생해 버렸고, 로그를 확인해 보니 도메인 이름의 IP 주소를 DNS 서버를 통해 찾으려고 시도했지만 실패했다는 에러가 발생했다. DNS 서버에 IPv4 주소를 1번 요청했지만 실패했다는 뜻이다...

 

즉, 이름은 존재하지만 IP 주소가 등록되어 있지 않거나, DNS 서버 설정에 문제가 있거나, 네트워크 연결에 문제가 있다는 이야기였다.

 

문제해결에 전혀 감을 못 잡겠어서 튜터님을 찾아뵙게 되었다. 튜터님께 오랜 시간 피드백을 받은 끝에... 결론은 WSL 문제였다. 분명 윈도 환경에서는 잘 동작하지만 WSL 환경에서는 DNS 서버를 통해 찾을 수 없다는 뜻 같았다.. 문제를 해결하기 위해 여러 방법을 시도했지만 마지막에 성공한 방법을 기준으로 말해보겠다.(개인적인 제 생각입니다.. 잘못된 부분이 있다면 댓글로 정보를 공유해 주세요ㅜ)

 

생각보다 매우 간단하게 해결이 되었는데.

현재 오류가 발생하는 곳인 Gateway 서버에서 개발자 모드를 실행시킨 뒤, 찾을 수 없다는 주소를 입력하고 호출해 보면 원격 주소에 실제로 IP 주소가 나타나게 된다. ex) 192.164....

 

저 주소를 복사해서 "C:\Windows\System32\drivers\etc\hosts" 파일을 관리자 권한으로 열어서 맨 밑에 

"<원격 주소> 오류가 발생하고 있는 DNS"를 한 줄 추가해 주면 마법처럼 요청이 성공적으로 전달되게 된다.