시뮬레이션된 이더넷 케이블(MAC 주소를 통해 액세스 가능)을 통해 동일한 Linux 호스트에서 실행되는 2개의 VMware 인스턴스를 연결하는 방법은 무엇입니까?

시뮬레이션된 이더넷 케이블(MAC 주소를 통해 액세스 가능)을 통해 동일한 Linux 호스트에서 실행되는 2개의 VMware 인스턴스를 연결하는 방법은 무엇입니까?

Linux(ubuntu-18.04)를 실행하는 호스트 시스템이 있습니다. 2개의 VMware 인스턴스를 구성했고 네트워크는 NAT를 통해 구성되었습니다. 로컬 IP를 통해 VM1에서 VM2로 핑을 보낼 수 있지만(그 반대의 경우도 마찬가지) 현재 요구 사항에 따라 이더넷 케이블을 통해 DPDK 테스트 환경에 연결하여 한 컴퓨터가 직접 Mac 주소(계층 2 프로토콜)를 통해 다른 컴퓨터를 찾을 수 있기를 원합니다. , IP 스택 없음). 간단하고 효율적인 방법으로 이 작업을 수행하고 작동하는지 테스트하는 방법은 무엇입니까(아마도 아르핑을 통해 확실하지 않음)?

답변1

당신이 필요하다면물리적Layer 2 연결의 경우 NAT 대신 브리지 모드를 사용해야 합니다.

호스트 운영 체제가 무선 액세스 포인트이기도 하지 않으면 무선 네트워크에서 브리지 모드를 사용할 수 없습니다. 호스트가 무선 클라이언트인 경우 WiFi ID(MAC 주소 + 관련 암호화 세션 키)만 있으며, VM의 트래픽을 무선 네트워크에 연결하려고 시도하는 경우 VM의 MAC 주소 + 호스트의 WiFi 결합된 암호화 키는 액세스 포인트에서만 거부됩니다.

레이어 2 연결의 경우동일한 호스트의 가상 머신 간, 모든 가상 머신의 가상 네트워크 카드가 동일한 가상 스위치를 사용하는지 확인하기만 하면 됩니다.VMware Workstation 설명서에서 이 페이지를 참조하세요.: NAT 모드에서도 NAT 요소가 가상 스위치와 호스트 외부의 물리적 네트워크 사이에 있기 때문에 여러 가상 머신을 동일한 가상 스위치에 가상으로 연결하고 서로 자유롭게 통신할 수 있습니다.

NAT 모드에서 기본 가상 스위치의 이름은 입니다 VMnet8. 가상 스위치에 연결된 모든 가상 머신은 자동으로 서로 간에 레이어 2 연결을 설정합니다.

그러나 테스트는 약간 까다로울 수 있습니다. 네트워크 인터페이스가 IP 주소로 구성된 경우 들어오는 ARP 요청에만 응답하므로 .NET을 사용하여 테스트하려면 IP 주소를 (적어도 일시적으로) 구성해야 합니다 arping.

현재 RHEL 8에는 순수 레이어 2 연결 테스터가 없는 것으로 보입니다. 그런데 예전에 제가 사용했던이 유틸리티: 두 개의 가상 머신에 설치하고, linkloopd한 가상 머신에서 실행하고, linkloop다른 가상 머신에서 명령으로 테스트해야 한다는 점 참고하세요.

관련 정보