环境:openstack Q版本,allinone,linuxbridge+vxlan
现象:虚机可以拿到地址,但是ping不通网关和dhcp服务器

由于是allinone环境,虚机的tap直接挂到bridge,而dhcp和网关的接口也是直接挂到该bridge,按理虚机是可以直接访问dhcp和网关的,但是虚机确实不通,通过抓包发现连接dhcp的tap没有报文,好像是linux bridge没有转发报文,实在没有办法,把vxlan接口从bridge中删除,虚机竟然可以ping通了,重启linuxbridge agent,继续调试,发现bridge fdb show vxlan-xx,有两个条目
{网关mac} dst 127.0.0.1 self
{dhcp服务器mac} dst 127.0.0.1 self
想起来vxlan的local_ip配置的是127.0.0.1,改成网口的物理地址,重启物理机测试,bridge fdb show vxlan-xx没有多余的条目了,虚机也可正常ping通

怀疑的点是 虽然网关和dhcp的tap和虚机的tap都是连在一个桥上,但是由于是vxlan网络,桥收到这个报文后还是转发了vxlan接口处理,而由于dst是127.0.0.1,访问出现了异常