티스토리 뷰

반응형

문제 상황

최근에 리액트 개발을 진행하면서 갑자기 포트 3000에서 문제가 발생하여 애플리케이션을 실행할 수 없게 되었습니다. 이 포스팅에서는 그 문제의 발생 이유와 해결 방법에 대해 상세히 알아보겠습니다.

 

원인 분석

  • 다른 애플리케이션 또는 서비스가 해당 포트를 이미 사용 중일 때
  • 이전에 종료되지 않은 동일한 애플리케이션 인스턴스가 백그라운드에서 실행 중일 때

 

이러한 경우 Windows 운영체제에서 Winnat 서비스 때문에 포트 충돌이 발생할 수 있습니다. 

 

※ Winnat는 Windows에서 네트워크 주소 변환(Network Address Translation, NAT)을 제공하는 서비스입니다.

 

해결 방법

1. 기존 프로세스 확인 및 종료

 

먼저, 윈도우에서 사용 중인 포트와 관련된 프로세스를 찾으려면 다음 명령어를 사용합니다.

netstat -ano | findstr "포트번호"

해당 PID를 사용하여 프로세스를 종료합니다.

taskkill /PID "프로세스ID" /F

2. Winnat 서비스 중지

 

현재 TCP 프로토콜을 사용하여 예약된 포트 범위 확인합니다.

netsh interface ipv4 show excludedportrange protocol=tcp

Winnat 서비스 중지 및 포트 3000 예외 추가합니다.

net stop winnat

netsh int ipv4 add excludedportrange tcp startport=3000 numberofports=1 store=persistent

Winnat 서비스 재시작합니다.

net start winnat

 

 

Windows 환경에서 개발을 진행할 때, 포트 충돌 문제는 언제든지 발생할 수 있습니다. 이러한 문제를 해결하기 위해 Windows 네트워크 설정을 조정하는 방법을 알아보았습니다

반응형

'트러블슈팅' 카테고리의 다른 글

백준 허브 프로그래머스 연동 에러 해결  (0) 2023.09.19
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
링크
글 보관함