dynDNS를 사용하여 로컬 컴퓨터에서 웹 서버 실행

dynDNS를 사용하여 로컬 컴퓨터에서 웹 서버 실행

나는 다음에서 계정을 만들었습니다.noip.com동적 호스트를 생성했습니다. (test.ddns.net). IP가 있는 로컬 컴퓨터에서192.168.2.128나는 포트에서 내 아파치 웹서버를 실행한다8080그리고443. 아파치

나는 단순히 "hello world"를 출력하는 "test.html" 파일을 포함하는 "test"라는 프로젝트를 만들었습니다.

내 라우터(텔레콤의 스피드포트 W921 V)에 포트 80에서 들어오는 모든 것을 IP가 있는 로컬 컴퓨터의 포트 8080으로 전달하는 포트 전달 규칙을 추가했습니다.192.168.2.128.

편집하다: 또한 포트 8080에서 들어오는 모든 것을 IP를 사용하여 로컬 컴퓨터의 포트 8080으로 전달하려고 시도했습니다.192.168.2.196 포트 포워딩

dynDNS 항목도 추가했습니다. DynDNS 항목

내 로컬 컴퓨터에서 내 프로젝트에 액세스하려면 192.168.2.128:8080/test/test.html브라우저에서 열면 됩니다. 그런데 이 사이트를 외부에서 어떻게 접속할 수 있나요?

이렇게 해봤는데 test.ddns.net/test/test.html "웹사이트에 연결할 수 없습니다"라는 메시지가 나타납니다.

나는 또한 프로그램을 실행하고 있습니다 DUC v4.1.1.

왜 작동하지 않습니까? 포트 포워딩이 스피드포트에서 작동하지 않는 건가요, 아니면 다른 단계를 놓친 건가요?

메모: 실제 도메인 이름은 "test.ddns.net"이 아니며 익명성을 위해 검열했습니다.

편집하다: 나는 지금 매우 혼란스러워요. 내 실제 도메인 이름은 test.ddns.net이미 말한 것과 다르며 완전히 다른 이름입니다. 하지만 test.ddns.net:8080/test/test.html웹서버가 실행되는 로컬 컴퓨터에서 열면 웹사이트가 hello world열립니다. 이것이 어떻게 가능한지???

답변1

nslookup test.ddns.net로 응답 127.0.0.1합니다 localhost. 따라서 홈 네트워크를 통해서도 패킷을 보내지 않고 작업 중인 컴퓨터 내부에서만 패킷을 보냅니다.

나는 이것을 test.ddns.net/test/test.html 처럼 시도했지만 "웹사이트에 연결할 수 없습니다"라는 메시지가 나타납니다.이는 포트 80이 아닌 서버 이온 포트 443 및 8080을 실행하고 있기 때문입니다.

실제 공용 IPv4 주소가 있는지 확인해야 합니다. IPv6를 사용하고 있고 IPv4 서버에 액세스할 때 다음을 통해 수행하는 경우가 있을 수 있습니다.캐리어급 NAT이는 IPv4 서버에 연결할 수 있지만 IPv4 클라이언트가 IPv4 서버에 도달하는 것을 허용하지 않습니다. 왜냐하면 실제로 공용 IPv4가 없기 때문입니다. NAT 뒤에 포트 전달을 수행하도록 구성할 수 없기 때문입니다. 너. NAT 게이트웨이와 라우터 간의 데이터 전송은 IPv6를 통해 이루어지며 라우터에는 이와 연결된 공용 IPv6 주소만 갖게 됩니다. 이를 듀얼 스택 라이트라고 합니다.

Google에서 "내 IP"를 검색하면 Google에서 귀하의 공개 IP를 보여줍니다. 그런 다음 사용http://<IP 주소> 귀하의 페이지를 엽니다. 열려 있으면 라우터의 외부 IP가 실제로 공용 IP 주소이고 포트 전달이 양호하다는 의미입니다. 이는 문제가 no-ip.com에 있음을 의미합니다.

답변2

이를 위해 ngrok와 같은 것을 사용할 수 있습니다. 그것을 설치하고 실행하십시오 :

ngrok http 8080

그리고 서버에 액세스하는 데 사용할 수 있는 고유한 하위 도메인을 제공합니다. 포트 포워딩이나 그런 종류의 것이 필요하지 않습니다.

관련 정보