외부 IP 주소를 사용하여 네트워크상의 컴퓨터에 연결할 수없는 이유는 무엇입니까? [복제] 네트워크에 연결 내

중복 가능성 :
외부 IP를 통해 내 네트워크에 연결

내 홈 네트워크는 ADSL 회선으로 서비스됩니다. 모뎀이 브리지 모드입니다. 라우터가 PPPoE를 수행합니다.

세 대의 컴퓨터가 라우터에 연결됩니다. 두 개의 유선 Windows 7 상자와 wifi를 통한 Ubuntu Linux 상자가 있습니다.

컴퓨터는 FTP 및 HTTP를 비롯한 다양한 형태의 서비스를 호스팅합니다. 라우터는 관련 포트에서 컴퓨터의 예약 된 IP 주소로 매핑 된 포트 전달을가집니다.

네트워크와 같은 서버에 연결하려고하면 (예 : ftp://67.xx.xxx.xxx 네트워크 내부에서 요청 시간이 초과되었습니다. 그러나 내부적으로 매핑 된 주소 (예 : ftp://192.168.0.100모두 잘되고있어.

이것은 어디서든 집에 전화 할 수 있어야하는 랩톱에서 특히 소프트웨어를 설치하는 데 불편하며 네트워킹에 대한 전문 지식이 충분하지 않습니다. 이것이 해결 될 수 있는지 없는지에 대한 단서가 있기까지 발생합니다.

편집 : ISP가 제공 한 주소와 적절한 포트를 사용하여 서버가 네트워크 외부에서 액세스 할 수 있습니다 (예 : 길 건너편의 스타 벅스).



답변

포트 포워딩은 대상 주소 만 다시 작성합니다. 이것은 외부 소스에 대해 완벽하게 작동합니다. 다음은 내부 소스에서 작동하지 않는 이유입니다.

  1. 외부 주소에 연결하려고 시도합니다. 내부 소스와 외부 목적지가있는 패킷을 형성합니다.

  2. 패킷은 라우터로가는 기본 경로를 사용합니다.

  3. 라우터 포트는 패킷을 전달하여 대상 주소를 서버의 내부 주소로 변경합니다.

  4. 서버는 내부 원본 주소 (원본 컴퓨터)와 내부 대상 주소 (서버)가있는 패킷을받습니다.

  5. 서버는 내부 소스 주소와 내부 목적지 주소를 가진 응답 패킷을 형성합니다.

  6. 대상이 로컬이므로이 패킷은 서버의 기본 경로를 사용하지 않습니다. 그것은 원래의 기계로 직접갑니다.

  7. 원래의 머신은 내부 소스 주소를 가진 응답 패킷을 얻지 만, 외부 소스 주소 (도달하려고 시도한 머신)를 가진 응답을 기다리고있었습니다.

  8. 원래의 시스템은 패킷을 무시하고 연결이 작동하지 않습니다.

이 기능을 사용하려면 원본 주소와 대상 주소가 모두 다시 작성되어 서버의 응답 패킷이 원본이 아닌 라우터로 되돌아가는 “머리핀 NAT”가 필요합니다.


답변