Looking at the code I could only find the invocations of functions that add metadata-related iptables rules into qrouter namespaces, not qdhcp namespaces:
neutron/agent/metadata/driver.py: def metadata_filter_rules(cls, port, mark):
neutron/agent/metadata/driver.py: for c, r in proxy.metadata_filter_rules(proxy.metadata_port,
Looking at the code I could only find the invocations of functions that add metadata-related iptables rules into qrouter namespaces, not qdhcp namespaces:
➜ neutron git:(stable/queens) ✗ grep -RiP metadata_ filter_ rules
neutron/ agent/metadata/ driver. py: def metadata_ filter_ rules(cls, port, mark): agent/metadata/ driver. py: for c, r in proxy.metadata_ filter_ rules(proxy. metadata_ port,
neutron/
https:/ /github. com/openstack/ neutron/ blob/stable/ queens/ neutron/ agent/metadata/ driver. py#L172- L196 /github. com/openstack/ neutron/ blob/stable/ queens/ neutron/ agent/metadata/ driver. py#L286- L294
https:/