가상 브리지를 통해 eth0에 연결된 레이어 2 가상 인터페이스 생성

가상 브리지를 통해 eth0에 연결된 레이어 2 가상 인터페이스 생성

좋은 저녁이에요,

VM과 함께 사용할 가상 인터페이스를 생성해야 하지만 계층 2여야만 한다는 점에서 어려운 문제가 있습니다. VM은 사전 설정된 MAC 주소와 통신합니다. 그렇지 않으면 VM이 미리 설정된 다른 MAC 주소를 가장합니다.)

내가 이미 찾은 대부분의 솔루션은 계층 3(예: IP 주소) 사용과 관련되어 있지만 불행히도 이러한 솔루션은 나에게 적합하지 않습니다. 계층 3 구성은 VM 내부에서 수행되어야 하며 가상 NIC 및 가상 스위치는 반드시 L2 트래픽에만 구성됩니다.

보안 및 운영상의 이유로 IP 주소 구성이 전혀 필요하지 않습니다(즉, IPv4 및 IPv6에 대한 로컬 링크만 사용하거나 레이어 3을 완전히 비활성화함).

간단히 말해서 다음과 같은 토폴로지가 필요합니다.

My VM <-> vnic0 <-> vbr0 <-> eth0 <-> external network

vbr0이라는 가상 브리지에 (실제 어댑터 eth0과 함께) 연결된 vnic0이라는 가상 어댑터를 생성해야 합니다. 재부팅 후 시스템 관리자의 상호 작용 없이 구성이 자동으로 작동할 수 있도록 하는 RHEL 7.4/CentOS 7.4용 구성 파일을 사용하는 것이 좋습니다. 나중에 vbr0에 연결된 vnic1, vnic2, vnic3 등을 생성해야 할 수도 있습니다.

VLAN 사용이 반드시 필요한 것은 아니지만(모든 것이 비VLAN/네이티브 VLAN에 있다고 가정할 수 있음) 천재가 있다면 네이티브 VLAN 50을 켜고 태그가 지정된 dot1q 트래픽을 구성하는 방법을 보여줄 수 있습니다. vnic0, vnic1의 기본 VLAN 51 등, eth0이 트렁크 역할을 하는 경우(VLAN의 전체 또는 하위 집합이 이를 따라 이동할 수 있음) 심각한 브라우니 포인트가 발생할 수 있습니다. :)

나는 이미 다음을 시도했습니다.

modprobe dummy
ip link set name vnic0 dev dummy0
ip link add vbr0 type bridge
ip link eth0 down
ip link set dev eth0 master vbr0
ip link set dev vnic0 master vbr0
ip link set vbr0 up
ip link set vnic0 up
ip link set eth0 up

가장 큰 문제는 내 vnic0 네트워크가 패킷을 브로드캐스트하지만 수신하지 않는다는 것입니다. 내 네트워크는 매우 채팅이 많지는 않지만 vbr0을 통해 vnic0이 수신한 최소한 일부 브로드캐스트 패킷을 볼 수 있을 것으로 예상됩니다. 그러나 그런 일은 일어나지 않습니다. vnic0에 연결된 VM 내에서 DHCP를 실행하려고 하면 시간 초과가 발생하지만 eth0에 연결된 DHCP 서버는 완벽하게 작동합니다.

답변1

더미 장치를 사용하지 마십시오

이런 일이 정기적으로 발생하는데 왜 사람들이 이를 사용하려고 하는지 모르겠습니다. 더미 장치는 유용할 뿐입니다.오래 지속되는 애플리케이션이 특정 IP 주소에 바인딩되도록 허용, 필요한 경우 더미 장치를 이동하고 수명이 더 짧은 다른 장치에 연결할 수 있습니다.

당신이 원하는 것은맥블란또는 vnic*. 이름에도 불구하고 macvlan은 VLAN 태깅과 아무 관련이 없습니다. macvlan은 레이어 2에서 작동하고 이미 일종의 마스터 인터페이스( eth0)에 브리지되어 있으며 필요한 경우 브리지된 장치의 상호 작용을 제한할 수 있는 여러 모드 중 하나를 선택할 수 있습니다.

답변2

가상 이더넷 인터페이스는 쌍으로 생성되어 패치 케이블처럼 작동하는 가상 인터페이스입니다.

ip link add name nic0 type veth peer name vnic0 address 00:11:22:33:44:55
ip link set dev eth-VM master vbr0
ip link set nic0 up
ip link set vnic0 up

vnic0VM에 할당할 수 있는 00:11:22:33:44:55 MAC 주소가 느슨한 상태로 끝나야 합니다 . 그들은 회의에서 논의됩니다.맥블란위에서 언급한 페이지. 나는 macvlan에 대해 많이 알지 못하지만 이것도 잘 작동해야하며 bridge를 사용하지 않을 것입니다 vbr0.

ip link add link eth0 name vnic0 address 00:11:22:33:44:55 type macvlan mode bridge
ip link set vnic0 up

관련 정보