nat virtualbox guest에서 호스트 IP를 검색하는 방법은 무엇입니까?

nat virtualbox guest에서 호스트 IP를 검색하는 방법은 무엇입니까?

VirtualBox Debian 게스트를 처리하기 위해 nat를 사용하는 Windows 7 호스트가 있습니다. 이 클라이언트는 포트 리디렉션을 통해 외부에서 액세스할 수 있는 일부 웹 서비스를 실행하고 있습니다.

URL을 통해 이러한 서비스에 대한 외부 액세스를 제공해야 하지만 올바른 DNS 확인에 의존할 수 없으므로 호스트 IP를 게스트 환경에 전파해야 합니다. 호스트에 미치는 영향을 최소화하면서 이 작업을 수행하려면 어떻게 해야 합니까?

몇 가지 설명: "외부", "외부 액세스"는 호스트와 동일한 수준의 웹 브라우저를 나타냅니다. 호스트 주소에만 의존할 수는 없습니다.

천 마디 말보다 한 장의 사진이 더 중요합니다.

+--------------+  External                         
| Windows Host |  network   +---------------------+
| +----+       |            |      Web client     |
| |    |      NAT           |  +----------------+ |
| |    ------------------------> Page generated | |
| |    |       |            |  |by VM with URLs | |
| | VM |       |            |  |to host         | |
| |    |       |            |  +--------|-------+ |
| |    |      FWD           |           |         |
| |    <--------------------------------+         |
| |    |       |            +---------------------+
| +----+       |                                   
+--------------+

답변1

이를 달성하는 한 가지 방법은 이와 같은 사이트의 기술을 이용하는 것입니다.Whatsmyip.com. 필요한 것은 요청이 수신된 IP 주소를 클라이언트로 다시 보내는 네트워크의 웹 서버뿐입니다.

NAT를 사용하고 있으므로 서버는 NAT 라우터(이 경우 가상 머신 호스트)의 주소를 원래 주소로 처리한다는 점을 기억하십시오.

whatsmyip.php이를 달성하려면 웹 서버의 웹 루트 디렉토리에 PHP 스크립트(즉)를 생성할 수 있습니다.

//whatsmyip.php
<?php 
//Gets the IP address
$ip = getenv("REMOTE_ADDR") ; 
Echo "$ip; 
?> 

예를 들어 손님으로부터 액세스하십시오.http://webserver/whatsmyip.php

(원천:Thoughtco.com )

이제 서비스에서 해당 답변을 평가하면 됩니다.

답변2

Guntbert의 답변을 고려하면 여기에는 다음이 포함됩니다.

  • 주어진 답변에 설명된 대로 "외부" 네트워크의 타사 웹 서버를 사용하여 원격 주소 응답기를 호스팅합니다.
  • VM 초기화 단계(및/또는 네트워크 컨텍스트에 따라 주기적으로) 동안 Windows 호스트의 외부 주소를 찾아봅니다.
  • 검색된 주소를 사용하여 페이지를 구축할 때 URL을 위조하세요.

관련 정보