
검색하고 검색했지만 이를 수행할 수 있는 방법을 찾지 못했습니다. 내가 찾은 답변은 두 번째 NIC를 구입하여 Windows 게스트에게 바친다는 것입니다. 내 호스트는 Linux Mint 16입니다.
게스트에 대한 네트워크 어댑터를 지정하는 방법을 확인했습니다. Windows 게스트가 인터넷에 액세스할 수 있지만 호스트 네트워크의 다른 컴퓨터에 액세스할 수 없도록 만드는 방법은 무엇입니까?
게스트의 IP 주소가 수동으로 변경되더라도 나머지 네트워크에 액세스할 수 없도록 하고 싶습니다. 이는 자신(그리고 어쩌면 호스트)만 볼 수 있어야 합니다.
답변1
이 작업은 VirtualBox에서 수행할 수 있습니다.
다음을 사용할 수 있는 연결을 선택해야 합니다.iptables패킷을 제어합니다. 따라서 NAT나 Bridge는 사용자가 액세스할 수 있는 NIC를 생성하지 않기 때문에 이를 수행하지 않습니다. 당신은 사용해야합니다호스트 전용 네트워크대신 vboxnet0이라는 사용자가 액세스할 수 있는 인터페이스를 호스트에 생성합니다.
이를 구성하려면 파일 -> 기본 설정 -> 네트워크 -> 호스트 전용 네트워크 -> 더하기 기호를 사용하여 생성한 다음 스크루드라이버 -> DHCP 서버, DHCP 서버를 활성화합니다. 설정을 저장하고 VM을 시작합니다.
이제 게스트에서 호스트를 게이트웨이로 설정해야 합니다. 호스트의 기본 IP는 192.168.56.1입니다. Windows에서 이 작업을 수행하는 방법에 대한 지침을 찾으려면 Google을 사용하세요. 그리고 DNS 서버를 설정해야 할 수도 있습니다.
호스트에서 이러한 모든 지침은 sudo로 수행됩니다.
1) IP 전달 활성화:
echo "1" > /proc/sys/net/ipv4/ip_forward
2) 다음을 발행하십시오.iptables규칙:
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables -A FORWARD -m iprange --dst-range 192.168.1.2-192.168.1.254 -j DROP
iptables -I FORWARD -m iprange --src-range 192.168.1.2-192.168.1.254 -j DROP
첫 번째 규칙은 VM의 인터넷에 대한 액세스를 허용합니다. 두 번째 쌍은 라우터 및 브로드캐스트 주소를 제외하고 VM이 LAN에 액세스하는 것을 금지합니다.
위의 규칙은 호스트가 다음을 통해 연결되어 있다고 가정합니다.eth0, 귀하의 LAN은192.168.1.0/24, 라우터 및 브로드캐스트 주소는 각각 192.168.1.1 및 192.168.1.255입니다. 그렇지 않은 경우 그에 따라 변경하십시오.
답변2
짧은 대답은 VirtualBox만으로는 원하는 격리를 얻을 수 없다는 것입니다. VM은 항상 호스트와 동일한 네트워크 가용성을 상속합니다(브리지 또는 NAT 네트워킹 모드 가정).
VirtualBox에는 네 가지 네트워킹 선택 사항이 있습니다.
브리지됨: 호스트의 어댑터 중 하나와 연결을 공유합니다. 이는 VM과 호스트가 모두 동일한 스위치에 연결된 것과 같습니다. VM은 호스트가 액세스할 수 있는 모든 것에 액세스할 수 있습니다.
NAT: VirtualBox는 호스트 어댑터와 가상 네트워크 사이에 가상 NAT 방화벽을 배치합니다. VM은 호스트가 액세스할 수 있는 모든 것에 계속 액세스할 수 있습니다.
호스트만: VM은 호스트 컴퓨터하고만 통신할 수 있습니다.
내부: VM은 격리된 네트워크에 있으며 동일한 내부 네트워크에 있는 다른 VM과만 통신할 수 있습니다.
이러한 옵션 중 어느 것도 귀하의 요구 사항을 충족하지 않으므로 VirtualBox만으로는 이를 수행할 수 없습니다. 언급한 대로 추가 NIC를 추가하면 원하는 분리를 만드는 데 필요한 물리적 분리가 제공됩니다.
답변3
좋아, 호스트 OS에 네트워크 카드가 1개만 필요한 훌륭한 솔루션을 알아냈습니다.
- 게스트 OS에 호스트 전용 어댑터(기본 어댑터는 vboxnet0)를 제공하고 vboxnet0이 dhcp를 수행하는지 확인하세요.
- 오징어 프록시 설치(sudo apt-get install squid3
- /etc/squid3/squid.conf 파일을 열고 다음과 같이 변경합니다. A. "http_accessdeny all"이 있는 줄을 찾아 줄 시작 부분에 #을 배치하여 주석 처리합니다. B. 다음 두 줄을 파일에 붙여넣습니다.
- acl 모든 컴퓨터 src 192.168.56.0/255.255.255.0
- http_access는 모든 컴퓨터를 허용합니다
- 다음을 실행하여 Squid 3 서비스를 다시 시작합니다. sudo service squid3 restart
- 게스트 OS에서 네트워크 카드에 dhcp가 설정되어 있는지 확인하세요.
- Internet Explorer의 인터넷 옵션을 열고 연결 탭으로 이동하여 Lan 설정...을 클릭하고 프록시 서버 상자를 선택하고 주소를 192.168.56.1로 설정하고 포트를 3128로 설정하십시오.
- 이제 게스트에서 인터넷이 작동하며 게스트는 로컬 네트워크를 볼 수 없습니다.
이 게시물에 도움을 주셔서 감사합니다. Squid3를 찾을 수 있는 올바른 방향으로 나를 안내해주었습니다. 여기서 전체 설정은 5~10분 정도 걸리며 매우 쉽습니다.