하나의 호스트에 있는 여러 가상 머신을 위한 메모리의 가상 LAN

하나의 호스트에 있는 여러 가상 머신을 위한 메모리의 가상 LAN

내 호스트에 네트워크 카드가 없다고 가정합니다.

여러 개의 가상 머신을 실행하고 그들 사이의 완전한 가상 LAN을 통해 연결하고 싶습니다. 나는 많은 기계와 많은 LAN을 원합니다.

이런 식으로 네트워크 구성을 시도하고 싶습니다.

이 작업을 수행할 수 있는 도구는 무엇입니까?

답변1

대부분의 경우 머신 그룹을 물리적으로 격리해야 하는 경우가 아니면 특별한 작업을 수행할 필요가 없습니다. 브리지 인터페이스를 사용하여 가상 머신을 호스트 네트워크에 연결하는 표준 방법은 호스트에 실제 네트워크 하드웨어가 필요하지 않은 경우에도 대부분의 경우 잘 작동합니다. 실제로 이 표준 설정의 브리지 인터페이스는 가상 머신 관리자가 가상 ​​머신의 가상 네트워크 인터페이스를 여기에 연결할 수 있도록 하기 위해 존재합니다. 왜냐하면 가상 머신을 네트워크의 상위 계층에 직접 노출시키는 것은 어렵기 때문입니다. 일종의 중개인.

ip link show좀 더 구체적인 예로, 다음은 여러 가상 머신을 실행하는 내 시스템 중 하나의 출력을 발췌한 것입니다.

6: br0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether fe:20:b5:bd:42:4b brd ff:ff:ff:ff:ff:ff
7: tap0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast aster br0 state UNKNOWN mode DEFAULT group default qlen 1000
    link/ether fe:98:c5:54:95:2a brd ff:ff:ff:ff:ff:ff
8: tap1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast aster br0 state UNKNOWN mode DEFAULT group default qlen 1000
    link/ether fe:97:56:bf:0c:81 brd ff:ff:ff:ff:ff:ff

이 시스템에서 소프트웨어 브리지 인터페이스는 br0모든 가상 머신이 연결되는 네트워크 세그먼트 역할을 하며 하드웨어 네트워크 스위치와 동등한 기능을 제공합니다. QEMU 옵션을 사용하면 QEMU는 내가 실행하는 모든 가상 머신에 대한 모든 인터페이스를 자동으로 생성합니다 tap(여기에는 이러한 인터페이스를 두 개만 나열했지만 일반적으로 적어도 12개 이상 있습니다) -net bridge. 똑같다. (가상) VM의 브리지 인터페이스에 대한 NIC입니다. 이 특별한 경우에는 실제로 해당 브리지 인터페이스에 연결된 물리적 하드웨어가 없지만(따라서 "부동" 또는 "가상" 브리지라고도 함) 대신 호스트 시스템의 라우팅 규칙을 사용하여 외부 네트워크 액세스를 제공합니다. 가상 머신. 몇 개의 VM을 나머지 VM과 분리하려면 쉽게 새 브리지 인터페이스를 생성하고 QEMU에 .NET 대신 해당 인터페이스에 연결하라고 지시할 수 있습니다 br0.

귀하의 경우, 질문 태그에 따르면 "내부 네트워크" 및 "호스트 전용" 어댑터와 함께 이와 유사한 기능을 가진 VirtualBox를 사용하려는 것 같습니다. 첫 번째는 위에서 언급한 브리지 설정과 동일하게 작동합니다. 단, VirtualBox 자체는 운영 체제 대신 브리지를 제공하고 DHCP 서버 역할을 하는 옵션을 제공합니다. 두 번째는 실제로 가상 머신과 호스트 시스템 간의 지점 간 링크입니다. 낮은 수준의 구성 실험에는 별로 유용하지 않지만 VPN 실험에는 매우 유용합니다(링크는 호스트로만 이동하기 때문에 두 가상 머신이 VPN 링크를 통해서만 통신하고 있음을 확신할 수 있습니다).

이제 이 모든 것이 네트워크 구성을 실험하는 데는 좋지만 가장 효율적인 옵션은 아닙니다. 수행하려는 실험 유형의 세부 사항에 따라 다음을 찾을 수 있습니다.가상 스위치 열기또는ns-3당신이 하고 싶은 일에 더 적합합니다.

답변2

VirtualBox는 이를 매우 잘 수행합니다. "호스트 전용" 네트워크 유형 또는 "내부 전용"을 사용해야 합니다.

호스트만 - 머신에 가상 NIC를 생성하고 VM도 연결된 가상 스위치에 연결합니다. 서로 다른 서브넷 등에 여러 개를 가질 수 있습니다.

내부 전용 - VM이 연결되는 가상 스위치를 만듭니다. 호스트에 연결되지 않았습니다. 여러 개를 생성할 수 있으며 서로 연결되어 있지 않으며, 동일한 서브넷에 있을 수도 있고, 다른 서브넷에 있을 수도 있습니다.

제가 추천하는 것은 2개 이상의 인터페이스가 있는 VM입니다. 하나는 호스트 전용 네트워크(데스크탑/노트북이 연결할 수 있도록)에 있고 다른 하나는 다른 내부 전용 네트워크에 있습니다. 가상 머신을 호스트와 내부 전용 네트워크 사이의 라우터/브리지로 설정하여 각 내부 전용 네트워크에 여러 머신을 생성합니다.

나는 이 작업을 수행했고(개인 네트워크가 인터넷을 사용할 수 있도록 호스트 대신 브리지 인터페이스를 사용하여) 3개의 다른 서브넷에서 12개의 VM을 실행하고 그들 사이에 라우팅을 하고 가짜 DNS와 이메일 등을 설정했습니다. 배우고 실험할 수 있는 좋은 방법입니다.

관련 정보