コード例 #1
0
ファイル: router_info.py プロジェクト: bramwelt/apex
 def __init__(self,
              router_id,
              router,
              agent_conf,
              interface_driver,
              use_ipv6=False):
     self.ovs_driver = OVSInterfaceDriver(agent_conf)
     self.router_id = router_id
     self.ex_gw_port = None
     self._snat_enabled = None
     self.fip_map = {}
     self.internal_ports = []
     self.floating_ips = set()
     # Invoke the setter for establishing initial SNAT action
     self.router = router
     self.use_ipv6 = use_ipv6
     ns = namespaces.RouterNamespace(router_id, agent_conf,
                                     interface_driver, use_ipv6,
                                     self.ovs_driver)
     self.router_namespace = ns
     self.ns_name = ns.name
     self.available_mark_ids = set(
         range(ADDRESS_SCOPE_MARK_ID_MIN, ADDRESS_SCOPE_MARK_ID_MAX))
     self._address_scope_to_mark_id = {
         DEFAULT_ADDRESS_SCOPE: self.available_mark_ids.pop()
     }
     self.iptables_manager = iptables_manager.IptablesManager(
         use_ipv6=use_ipv6, namespace=self.ns_name)
     self.routes = []
     self.agent_conf = agent_conf
     self.driver = interface_driver
     # radvd is a neutron.agent.linux.ra.DaemonMonitor
     self.radvd = None