get_subnet_for_dvr returns SNAT mac instead of distributed gateway in subnet_info
On hosts with dvr_snat agent mode, after restarting OVS agent, sometimes the SNAT port is processed first instead of the distributed port. The subnet_info is cached locally via get_subnet_for_dvr when either of these ports are processed. However, it returns the MAC address of the port used to query as the gateway for the subnet. Using the SNAT port, this puts the wrong MAC as the gateway, causing some flows such as the DVR flows on br-int for local src VMs to have the wrong MAC. This patch fixes the get_subnet_for_dvr with fixed_ips as None for the csnat port, as that causes the server side handler to fill in the subnet's actual gateway rather than using the port's MAC. Change-Id: If045851819fd53c3b9a1506cc52bc1757e6d6851 Closes-Bug: #1783470changes/34/587234/2
parent
0dd28ee0fd
commit
c6de172e58
Loading…
Reference in New Issue