<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, May 14, 2020 at 1:32 PM Laine Stump <<a href="mailto:laine@redhat.com">laine@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 5/13/20 12:52 AM, Subhendu Ghosh wrote:<br>
> Hi<br>
> <br>
> Couple of questions around macvtap direct usage:<br>
> <br>
> 1) is the document here current?<br>
> <a href="https://libvirt.org/formatnetwork.html#examplesDirect" rel="noreferrer" target="_blank">https://libvirt.org/formatnetwork.html#examplesDirect</a><br>
<br>
Yes. None of that has changed in any major way in many years.<br></blockquote><div><br></div><div>kernelNewbies documents mactap bridge as VMs can host can all talk to each other without an external bridge</div><div>External bridge/switch is only needed for VEPA mode with hairpin. <br> </div><div><br></div><div><a href="https://virt.kernelnewbies.org/MacVTap">https://virt.kernelnewbies.org/MacVTap</a></div><div><br></div><div>Perhaps the original development of macvtap to support VEPA influenced the early docs and was never reviewed after bridge mode matured? <br></div><div><br></div><div><br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
> <br>
> I have been able to get host to guest network traffic without any <br>
> special configuration or switch since Fedora 28 when I first started <br>
> using it. Using <forward mode=vepa> requires switch port mirroring, but <br>
> just using <forward mode=bridge> doesn't.<br>
<br>
<br>
If that is the case, then either your guest and host have a secondary <br>
network connection, or your switch is mirroring traffic and you just <br>
didn't know about it. The inability to do direct host<->guest <br>
communication is inherent in the design of macvtap interfaces.<br>
<br>
<br>
> <br>
> 2) do any of the language libraries make assumptions that libvirt <br>
> networks must have a <bridge name=xx> attribute? Foreman's Ruby <br>
> interface to libvirt errors out with attempting to build a VM on a KVM <br>
> host with a network defined with <forward mode=bridge><br>
> <a href="https://projects.theforeman.org/issues/25890" rel="noreferrer" target="_blank">https://projects.theforeman.org/issues/25890</a><br>
<br>
The 2nd line in the log attached to that issue report says this:<br>
<br>
 >Call to virNetworkGetBridgeName failed: internal error: network <br>
'macvtap-net' does not have a bridge name.<br>
<br>
So, your application (or whatever this "Foreman's Ruby interface to <br>
libvirt" is) has called virNetworkGetBridgeName() (whatever it's called <br>
in the Ruby bindings), and since you have a macvtap network, which has <br>
no bridge device, libvirt sent back an error. You need to find whatever <br>
in your code is calling virNetworkGetBridgeName().<br>
<br>
</blockquote></div></div>