Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I created 3 VM on top of KVM/QEMU (RHEL 6.0) using bridged networking. Created one bridge for eth1 and all the VM's are using that bridge for networking. All these VM's have the same subnet address. All these machines are able to ping each other because bridge takes care of the routing between these machine. The scenario I am trying to implement is that I don't want bridge to do the routing between these machines. I want bridge to send all the traffic from these machines to the external edge switch and let him do the routing. So I have following thoughts on how to do this, but not sure if these will work:

  1. Create multiple bridge on top of NIC (eth1) and connect each machine to different bridge on same NIC. So that way I hope it will send traffic to external switch, but not sure how to take care of the reverse traffic. AFAIK we can't create multiple bridge on single NIC card. But if anybody knows the way, please share.

  2. Configure rule in the bridge that all the traffic coming from VM machine ports should be directed to NIC to external switch, and incoming traffic can be routed as usual way bridge do. I am not sure about this either, whether its doable or not. If its doable any idea how to do this?

Not sure if there is any other way of networking present which can be used to implement this scenario. Please share your thoughts and let me know if you need any more info from my side.

share|improve this question

1 Answer 1

up vote 1 down vote accepted

There is a problem in what you're trying to do: a switch will not forward a packet to the originating port to avoid loop.

What you are looking for is VEPA aka Virtual Ethernet Port Aggregator aka 802.1Qbg. It is in recent Linux kernel (2.6.34+). You can find it in RHEL6/Centos 6 because RedHat back ported it. But you also need a VEPA-capable switch (I'm not even sure it exists for now).

You can create a VEPA network with libvirt:

<network>
  <name>network1</name>
  <forward mode="vepa">
    <interface dev="eth1"/>
  </forward>
</network>
share|improve this answer
    
Lately I figured this out, but I was under impression that on RHEL/Centos you should be on 6.2 version to use VEPA mode because 6.0 don't support this. Thanks for sharing this info. –  Anil Vishnoi Feb 2 '12 at 21:12

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.