'Create interface between router and Floating IP namespace.'

def create_rtr_2_fip_link(self, ri):

    LOG.debug('Create    FIP    link    interfaces    for    router    %s', ri.router_id)
    rtr_2_fip_name = self.get_rtr_ext_device_name(ri.router_id)
    fip_2_rtr_name = self.get_int_device_name(ri.router_id)
    fip_ns_name = self.get_name()
    if (ri.rtr_fip_subnet is None):
        ri.rtr_fip_subnet = self.local_subnets.allocate(ri.router_id)
    (rtr_2_fip, fip_2_rtr) = ri.rtr_fip_subnet.get_pair()
    rtr_2_fip_dev = ip_lib.IPDevice(rtr_2_fip_name, namespace=ri.ns_name)
    fip_2_rtr_dev = ip_lib.IPDevice(fip_2_rtr_name, namespace=fip_ns_name)
    if (not rtr_2_fip_dev.exists()):
        ip_wrapper = ip_lib.IPWrapper(namespace=ri.ns_name)
        (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()
    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))
    self._add_rtr_ext_route_rule_to_route_table(ri, fip_2_rtr, fip_2_rtr_name)
    rtr_2_fip_dev.route.add_gateway(str(fip_2_rtr.ip), table=FIP_RT_TBL)
