diff --git a/neutron/agent/l3/dvr_fip_ns.py b/neutron/agent/l3/dvr_fip_ns.py index 49d3c9ea511..bc91f962b93 100644 --- a/neutron/agent/l3/dvr_fip_ns.py +++ b/neutron/agent/l3/dvr_fip_ns.py @@ -295,10 +295,11 @@ class FipNamespace(namespaces.Namespace): # Now add the filter match rule for the table. ip_rule = ip_lib.IPRule(namespace=self.get_name()) - ip_rule.rule.add(ip=str(fip_2_rtr.ip), - iif=fip_2_rtr_name, - table=rt_tbl_index, - priority=rt_tbl_index) + ip_rule.rule.add(**{'ip': str(fip_2_rtr.ip), + 'iif': fip_2_rtr_name, + 'table': rt_tbl_index, + 'priority': rt_tbl_index, + 'from': '0.0.0.0/0'}) def _update_gateway_port(self, agent_gateway_port, interface_name): if (self.agent_gateway_port and diff --git a/neutron/agent/l3/dvr_local_router.py b/neutron/agent/l3/dvr_local_router.py index f61f685d213..803647e2cc7 100644 --- a/neutron/agent/l3/dvr_local_router.py +++ b/neutron/agent/l3/dvr_local_router.py @@ -562,10 +562,9 @@ class DvrLocalRouter(dvr_router_base.DvrRouterBase): else: self.fip_ns.create_or_update_gateway_port(fip_agent_port) - if (self.fip_ns.agent_gateway_port and - (self.dist_fip_count == 0)): + if self.fip_ns.agent_gateway_port: self.fip_ns.create_rtr_2_fip_link(self) - self.routes_updated([], self.router['routes']) + self.routes_updated(self.routes, self.router['routes']) def update_routing_table(self, operation, route): # TODO(Swami): The static routes should be added to the