답변1
현재 네트워크는 다음과 같습니다.
╔══════════════╗ ╔════════════════════╗
║VM @ 10.0.2.15║───║Host @ 192.168.1.122║───[Internet]
╚══════════════╝ ╚════════════════════╝
이것이 당신이 하려는 일입니다(라우터의 포트 80을 10.0.2.15로 전달):
╔══════════════╗ ╔════════════════════╗
║VM @ 10.0.2.15║───║Host @ 192.168.1.122║───[Internet]
╚══════════════╝ ╚════════════════════╝ │
└─────────────────────────(Port 80)──────┘
라우터는 10.0.2.15가 192.168.1.122 뒤에 있다는 것을 모르기 때문에 이것은 작동하지 않습니다.
대신 다음을 수행해야 합니다(라우터의 포트 80을 10.0.2.15에 대해 알고 있는 192.168.1.122로 전달).
╔══════════════╗ ╔════════════════════╗
║VM @ 10.0.2.15║───║Host @ 192.168.1.122║───[Internet]
╚══════════════╝ ╚════════════════════╝ │
└───(Port 80)────┘
그런 다음 다음을 수행합니다(이제 192.168.1.122에서 트래픽을 받고 있으므로 10.0.2.15로 보냅니다).
╔══════════════╗ ╔════════════════════╗
║VM @ 10.0.2.15║───║Host @ 192.168.1.122║───[Internet]
╚══════════════╝ ╚════════════════════╝ │
└───(Port 80)────┘ └───(Port 80)────┘
답변2
사용자가 말했듯이 라우터에서 VM 호스트(192.168.1.122)로 트래픽을 전달해야 합니다. 다음 두 가지 옵션 중 하나를 권장합니다.
1: DHCP를 사용하여 라우터에서 IP 주소를 가져오고 로컬 네트워크의 다른 장치처럼 액세스할 수 있는 네트워크 브리징을 사용하도록 VM을 구성합니다. (그런 다음 VM에 대해 192.168.1.0/16의 DHCP 할당 주소로 트래픽을 전달합니다.)
2: 하이퍼바이저에서 VM에 대한 포트 전달을 구성합니다.
예시 구성: https://www.howtogeek.com/122641/how-to-forward-ports-to-a-virtual-machine-and-use-it-as-a-server/
가상화에 사용하는 항목에 따라 약간 다르지만 모든 하이퍼바이저에 동일한 개념이 적용됩니다.