Rails 외부 접속이 안됩니다.
조회수 838회
루비 온 레일즈를 공부하고 있습니다.
루비는 2.3.7 버전을 사용중이고, 레일즈는 5.2 버전을 사용중입니다.
개발은 어느정도 마치고 AWS 에 배포하여 외부에서 접속을 허용하고 싶은데 rails s -b 0.0.0.0 명령으로 실행을 해도 같은 네트워크를 사용하고 있는 기기에서만 접속이 되고 다른 네트워크를 사용하는 기기에서는 접속이 되지 않습니다.
AWS 뿐만 아니라 제 로컬에서 rails s -b 0.0.0.0 명령으로 실행을 해도 다른 기기에서는 접속을 할 수 없습니다.
방화벽 문제인줄 알고 방화벽을 해제해보았는데도 접속이 되질 않습니다.
무엇이 문제일까요..
서버를 실행시키면 아래와 같이 실행됩니다.
=> Booting Puma
=> Rails 5.2.0 application starting in development
=> Run rails server -h
for more startup options
Puma starting in single mode...
- Version 3.12.0 (ruby 2.3.7-p456), codename: Llamas in Pajamas
- Min threads: 5, max threads: 5
- Environment: development
- Listening on tcp://0.0.0.0:3000
Use Ctrl-C to stop
1 답변
-
해당 문제는 DNS 문제라기 보다는 NAT 문제입니다.
NAT 는 라우터에서 IP 변환이 일어나기 때문에 10나172로 시작하는 변환된 사설 IP를 사용하는 장비에서는 라우터 밖의 환경에서는 접근을 할 수 없는 겁니다.
공유기를 사용하는 환경이라면 공유기에서 포트포워딩 설정이나 dmz 설정으로 우회할 수 있습니다.
AWS 도 마찬가지인 것이 기본적으로 인터넷으로 공개가 안됩니다. Elastic IP(필수는 아님)를 받아서 할당하고 인터넷 게이트웨이(필수)를 설정해야 합니다.
댓글 입력