get_subnet_for_dvr() returns wrong gateway mac
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Fix Released
|
Medium
|
Oleg Bondarev |
Bug Description
get_subnet_for_dvr should return proper gateway mac address in order for ovs agent to add proper flows for dvr interface on br-int.
commit e82b0e108332964
if fixed_ips:
else:
get_ports() here actually returns _all_ ports so mac address of a random port is returned as 'gateway_mac'. In most cases it doesn't lead to any noticeable side effects but in some cases it may cause very weird behavior.
The case that we faced was:
root@node-9:~# ovs-ofctl dump-flows br-int
...
cookie=
cookie=
...
fa:16:3e:2c:24:86 is mac address of a vm port and it was returned as gateway mac due to the bug. This vm was unreachable from other subnets connected to the same dvr router. However another vm on the same host and the same subnet was ok. It took a while to find out what was wrong :)
tags: | added: liberty-backport-potential |
tags: | removed: liberty-backport-potential |
Fix proposed to branch: master /review. openstack. org/262574
Review: https:/