티스토리 뷰
windows 환경에서 next를 이용해 개발하고 있었는데 오늘 갑자기 Error: bind EACCES null:3000 에러가 발생하면서 실행이 되지 않는 문제가 생겼다.
구글 검색으로 나온 해결방법으로는 netstat -ano 명령어로 현재 실행중인 포트를 확인하고 서비스를 종료하라고 했지만 찾아봐도 3000번 포트로 실행할만한 서비스는 발견 할 수 없었다.
원인이 너무 광범위해서 일단은 4000번 포트로 실행했더니 오류가 발생하지 않았다.
$ yarn dev -p 4000
추가
지속적으로 문제가 발생해서 좀 더 찾아보니 사용가능한 포트범위를 제한하는 기능에 사용하려는 포트가 포함되어 있는지 확인해보는 명령어가 있었다.
$ netsh interface ipv4 show excludedportrange protocol=tcp
프로토콜 tcp 포트 제외 범위
시작 포트 끝 포트
---------- --------
2869 2869
3153 3252
3253 3352
3353 3452
3453 3552
3653 3752
3853 3952
4023 4122
4442 4541
5357 5357
50000 50059 *
* - 관리 포트 제외입니다.
3306번 포트를 사용하려고 했는데 3253~3352 포트가 제외포트로 지정되어있다.
해제하려면 임시조치로 Windows NAT을 재시작하면 된다.
$ net stop winnat
Windows NAT Driver 서비스를 잘 멈추었습니다.
$ net start winnat
Windows NAT Driver 서비스가 잘 시작되었습니다.
$ netsh interface ipv4 show excludedportrange protocol=tcp
프로토콜 tcp 포트 제외 범위
시작 포트 끝 포트
---------- --------
2869 2869
5357 5357
50000 50059 *
* - 관리 포트 제외입니다.
댓글