<div dir="ltr">I have a bare metal hosting provider that provides me with layer-3 networking to every server. For some applications, I require a layer-2 network spanning the servers. This network is for the applications running on the server OS, not via VM or container tennants.<div><br></div><div>I've been following this blog post: <a href="https://vincent.bernat.im/en/blog/2017-vxlan-bgp-evpn">https://vincent.bernat.im/en/blog/2017-vxlan-bgp-evpn</a>, using frr 3.1dev from git master from several nights ago. I believe I have the route reflector + vteps configured with respect to bgpd as described, but no routes are advertised. I do see bgp neighbors as expected.</div><div><br></div><div>When I run 'show evpn mac vni 100', I do not see any mac addresses. My suspicion is that it is because I'm not using a bridge, but assigning an IP address directly to the vxlan interface. Looking at the source code (my C is very rusty), it looks like it enumerates all the VNIs, finds the bridges they're slaved to, then enumerates the interfaces on the bridge. I'm looking at this: <a href="https://github.com/FRRouting/frr/blob/8eac4812601f069f14fc7950e10904c2ae0ae774/zebra/zebra_vxlan.c#L2668">https://github.com/FRRouting/frr/blob/8eac4812601f069f14fc7950e10904c2ae0ae774/zebra/zebra_vxlan.c#L2668</a></div><div><br></div><div>Is there a way to configure my interfaces without a bridge (or is this a bad approach)? If a bridge and additional slaved interface is required, any suggestions on how to configure the bridge with no additional tenants on the servers?</div><div><br></div><div>Additional Thoughts: </div><div>- using static unicast discovery, vxlan membership across servers works</div><div>- adding a bridge interface and slaving the vxlan interface + a dummy interface, assigning an ip to the dummy did not seem to work</div><div>- tried kernel 4.4 from elrepo, (tends to work better from previous docker overlay network experiences)</div><div><br></div><div>Config:</div><div>compiled from commit c1240044fbf081bb7407b1449d3954e4b63fec9f on CentOS 7.4, with --enable-cumulus</div><div><br></div><div>Route Reflector:<br></div><div><a href="http://10.40.1.131/31">10.40.1.131/31</a></div><div><br></div><div>bgpd.conf:</div><div><div>router bgp 65000</div><div> bgp router-id 10.40.1.131</div><div> bgp cluster-id 10.40.1.131</div><div> bgp log-neighbor-changes</div><div> no bgp default ipv4-unicast</div><div> coalesce-time 1000</div><div> neighbor fabric peer-group</div><div> neighbor fabric remote-as 65000</div><div> neighbor fabric update-source 10.40.1.131</div><div> neighbor fabric capability extended-nexthop</div><div> bgp listen range <a href="http://10.40.1.128/25">10.40.1.128/25</a> peer-group fabric</div><div> !</div><div> address-family l2vpn evpn</div><div>  neighbor fabric activate</div><div>  neighbor fabric route-reflector-client</div><div> exit-address-family</div><div>!</div></div><div><br></div><div><br></div><div>layer-2 member server example:</div><div><a href="http://10.40.1.129/31">10.40.1.129/31</a><br></div><div><br></div><div>bgpd.conf:</div><div><div>router bgp 65000</div><div> bgp router-id 10.40.1.129</div><div> no bgp default ipv4-unicast</div><div> coalesce-time 1000</div><div> neighbor fabric peer-group</div><div> neighbor fabric remote-as 65000</div><div> neighbor fabric capability extended-nexthop</div><div> neighbor 10.40.1.131 peer-group fabric</div><div> !</div><div> address-family l2vpn evpn</div><div>  neighbor fabric activate</div><div>  advertise-all-vni</div><div> exit-address-family</div><div>!</div></div><div><br></div><div>vxlan configured with:</div><div># ip link vxlan100 type vxlan id 100 local 10.40.1.129 port 4789 nolearning</div><div># ip link set up dev vxlan100</div><div># ip addr add <a href="http://172.31.254.2/24">172.31.254.2/24</a> dev vxlan100</div><div><br></div><div>Thanks for any suggestions (or course corrections, as this is new to me)!</div><div><br></div></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><font color="#808080" style="line-height:normal;font-family:cantarell">Henry Snow | Director, Site Reliability Engineering</font><div><font color="#808080" style="line-height:normal;font-family:cantarell"><a href="http://exelate.com/">eXelate, a Nielsen company</a></font><br style="line-height:normal;color:rgb(0,0,0);font-family:cantarell"><font color="#808080" style="line-height:normal;font-family:cantarell">E: <a href="mailto:henry.snow@nielsen.com">henry.snow@nielsen.com</a> | </font><span style="color:rgb(128,128,128);font-family:cantarell;line-height:normal">M: 347.366.2700</span><br style="line-height:normal;color:rgb(0,0,0);font-family:cantarell"><font color="#808080" style="line-height:normal;font-family:cantarell">675 6th Ave, 3rd Floor, New York, NY 10010 </font><br></div></div></div>