diff --git a/neutron/agent/l3/dvr_fip_ns.py b/neutron/agent/l3/dvr_fip_ns.py index 4623caad294..037d2691a3d 100644 --- a/neutron/agent/l3/dvr_fip_ns.py +++ b/neutron/agent/l3/dvr_fip_ns.py @@ -443,13 +443,14 @@ class FipNamespace(namespaces.Namespace): rtr_2_fip_dev, fip_2_rtr_dev = ip_wrapper.add_veth(rtr_2_fip_name, fip_2_rtr_name, fip_ns_name) - mtu = ri.get_ex_gw_port().get('mtu') - if mtu: - rtr_2_fip_dev.link.set_mtu(mtu) - fip_2_rtr_dev.link.set_mtu(mtu) rtr_2_fip_dev.link.set_up() fip_2_rtr_dev.link.set_up() + mtu = ri.get_ex_gw_port().get('mtu') + if mtu: + rtr_2_fip_dev.link.set_mtu(mtu) + fip_2_rtr_dev.link.set_mtu(mtu) + self._add_cidr_to_device(rtr_2_fip_dev, str(rtr_2_fip)) self._add_cidr_to_device(fip_2_rtr_dev, str(fip_2_rtr)) diff --git a/neutron/tests/unit/agent/l3/test_dvr_fip_ns.py b/neutron/tests/unit/agent/l3/test_dvr_fip_ns.py index 01790040b96..6ec2aa49154 100644 --- a/neutron/tests/unit/agent/l3/test_dvr_fip_ns.py +++ b/neutron/tests/unit/agent/l3/test_dvr_fip_ns.py @@ -302,10 +302,11 @@ class TestDvrFipNs(base.BaseTestCase): fip_2_rtr_name, fip_ns_name) - device.link.set_mtu.assert_called_with(2000) - self.assertEqual(2, device.link.set_mtu.call_count) self.assertEqual(2, device.link.set_up.call_count) + device.link.set_mtu.assert_called_with(2000) + self.assertEqual(2, device.link.set_mtu.call_count) + if not addr_exists: expected = [mock.call(str(addr_pair[0]), add_broadcast=False), mock.call(str(addr_pair[1]), add_broadcast=False)]