def __init__(self, node, name, localname, mtu=1500, net=None, start=True): # note that net arg is ignored PyCoreNetIf.__init__(self, node=node, name=name, mtu=mtu) self.localname = localname self.up = False if start: self.startup()
def __init__(self, node, name, localname, mtu=1500, net=None, start=True): PyCoreNetIf.__init__(self, node=node, name=name, mtu=mtu) self.localname = localname self.up = False self.transport_type = "virtual" if start: self.startup()
def __init__(self, node = None, name = None, session = None, mtu = 1458, remoteip = None, objid = None, localip = None, ttl = 255, key = None, start = True): PyCoreNetIf.__init__(self, node = node, name = name, mtu = mtu) self.session = session if objid is None: # from PyCoreObj objid = (((id(self) >> 16) ^ (id(self) & 0xffff)) & 0xffff) self.objid = objid sessionid = self.session.shortsessionid() # interface name on the local host machine self.localname = "gt.%s.%s" % (self.objid, sessionid) self.transport_type = "raw" if not start: self.up = False return if remoteip is None: raise ValueError, "missing remote IP required for GRE TAP device" cmd = ("ip", "link", "add", self.localname, "type", "gretap", "remote", str(remoteip)) if localip: cmd += ("local", str(localip)) if ttl: cmd += ("ttl", str(ttl)) if key: cmd += ("key", str(key)) check_call(cmd) cmd = ("ip", "link", "set", self.localname, "up") check_call(cmd) self.up = True
def __init__(self, node=None, name=None, session=None, mtu=1458, remoteip=None, objid=None, localip=None, ttl=255, key=None, start=True): """ Creates a GreTap instance. :param core.netns.vnode.SimpleLxcNode node: related core node :param str name: interface name :param core.session.Session session: core session instance :param mtu: interface mtu :param str remoteip: remote address :param int objid: object id :param str localip: local address :param ttl: ttl value :param key: gre tap key :param bool start: start flag :raises CoreCommandError: when there is a command exception """ PyCoreNetIf.__init__(self, node=node, name=name, mtu=mtu) self.session = session if objid is None: # from PyCoreObj objid = ((id(self) >> 16) ^ (id(self) & 0xffff)) & 0xffff self.objid = objid sessionid = self.session.short_session_id() # interface name on the local host machine self.localname = "gt.%s.%s" % (self.objid, sessionid) self.transport_type = "raw" if not start: self.up = False return if remoteip is None: raise ValueError, "missing remote IP required for GRE TAP device" args = [ constants.IP_BIN, "link", "add", self.localname, "type", "gretap", "remote", str(remoteip) ] if localip: args += ["local", str(localip)] if ttl: args += ["ttl", str(ttl)] if key: args += ["key", str(key)] utils.check_cmd(args) args = [constants.IP_BIN, "link", "set", self.localname, "up"] utils.check_cmd(args) self.up = True
def __init__(self, node=None, name=None, session=None, mtu=1458, remoteip=None, objid=None, localip=None, ttl=255, key=None, start=True): """ Creates a GreTap instance. :param core.netns.nodes.CoreNode node: related core node :param str name: interface name :param core.session.Session session: core session instance :param mtu: interface mtu :param str remoteip: remote address :param int objid: object id :param str localip: local address :param ttl: ttl value :param key: gre tap key :param bool start: start flag """ PyCoreNetIf.__init__(self, node=node, name=name, mtu=mtu) self.session = session if objid is None: # from PyCoreObj objid = ((id(self) >> 16) ^ (id(self) & 0xffff)) & 0xffff self.objid = objid sessionid = self.session.short_session_id() # interface name on the local host machine self.localname = "gt.%s.%s" % (self.objid, sessionid) self.transport_type = "raw" if not start: self.up = False return if remoteip is None: raise ValueError, "missing remote IP required for GRE TAP device" cmd = ("ip", "link", "add", self.localname, "type", "gretap", "remote", str(remoteip)) if localip: cmd += ("local", str(localip)) if ttl: cmd += ("ttl", str(ttl)) if key: cmd += ("key", str(key)) subprocess.check_call(cmd) cmd = ("ip", "link", "set", self.localname, "up") subprocess.check_call(cmd) self.up = True
def __init__(self, node, name, localname, mtu=1500, net=None, start=True): PyCoreNetIf.__init__(self, node=node, name=name, mtu=mtu) # name is the device name (e.g. ngeth0, ngeth1, etc.) before it is # installed in a node; the Netgraph name is renamed to localname # e.g. before install: name = ngeth0 localname = n0_0_123 # after install: name = eth0 localname = n0_0_123 self.localname = localname self.ngid = None self.net = None self.pipe = None self.addrlist = [] self.hwaddr = None self.up = False self.hook = "ether" if start: self.startup()
def __init__(self, node, name, localname, mtu = 1500, net = None, start = True): PyCoreNetIf.__init__(self, node = node, name = name, mtu = mtu) # name is the device name (e.g. ngeth0, ngeth1, etc.) before it is # installed in a node; the Netgraph name is renamed to localname # e.g. before install: name = ngeth0 localname = n0_0_123 # after install: name = eth0 localname = n0_0_123 self.localname = localname self.ngid = None self.net = None self.pipe = None self.addrlist = [] self.hwaddr = None self.up = False self.hook = "ether" if start: self.startup()
def __init__(self, node, name, localname, mtu=1500, net=None, start=True): """ Create a TunTap instance. :param core.netns.vnode.SimpleLxcNode node: related core node :param str name: interface name :param str localname: local interface name :param mtu: interface mtu :param net: related network :param bool start: start flag """ PyCoreNetIf.__init__(self, node=node, name=name, mtu=mtu) self.localname = localname self.up = False self.transport_type = "virtual" if start: self.startup()
def __init__(self, node, name, localname, mtu=1500, net=None, start=True): """ Creates a VEth instance. :param core.netns.vnode.SimpleLxcNode node: related core node :param str name: interface name :param str localname: interface local name :param mtu: interface mtu :param net: network :param bool start: start flag :raises CoreCommandError: when there is a command exception """ # note that net arg is ignored PyCoreNetIf.__init__(self, node=node, name=name, mtu=mtu) self.localname = localname self.up = False if start: self.startup()
def __init__(self, node, name, localname, mtu=1500, net=None, start=True): """ Creates a VEth instance. :param core.netns.nodes.CoreNode node: related core node :param str name: interface name :param str localname: interface local name :param mtu: interface mtu :param net: network :param bool start: start flag :return: """ # note that net arg is ignored PyCoreNetIf.__init__(self, node=node, name=name, mtu=mtu) self.localname = localname self.up = False if start: self.startup()
def __init__(self, node=None, name=None, session=None, mtu=1458, remoteip=None, objid=None, localip=None, ttl=255, key=None, start=True): PyCoreNetIf.__init__(self, node=node, name=name, mtu=mtu) self.session = session if objid is None: # from PyCoreObj objid = (((id(self) >> 16) ^ (id(self) & 0xffff)) & 0xffff) self.objid = objid sessionid = self.session.shortsessionid() # interface name on the local host machine self.localname = "gt.%s.%s" % (self.objid, sessionid) self.transport_type = "raw" if not start: self.up = False return if remoteip is None: raise ValueError, "missing remote IP required for GRE TAP device" cmd = ("ip", "link", "add", self.localname, "type", "gretap", "remote", str(remoteip)) if localip: cmd += ("local", str(localip)) if ttl: cmd += ("ttl", str(ttl)) if key: cmd += ("key", str(key)) check_call(cmd) cmd = ("ip", "link", "set", self.localname, "up") check_call(cmd) self.up = True
def __init__(self, session, objid=None, name=None, mtu=1500, start=True): """ Create an RJ45Node instance. :param core.session.Session session: core session instance :param int objid: node id :param str name: node name :param mtu: rj45 mtu :param bool start: start flag :return: """ PyCoreNode.__init__(self, session, objid, name, start=start) # this initializes net, params, poshook PyCoreNetIf.__init__(self, node=self, name=name, mtu=mtu) self.up = False self.lock = threading.RLock() self.ifindex = None # the following are PyCoreNetIf attributes self.transport_type = "raw" self.localname = name if start: self.startup()
def __init__(self, session, objid=None, name=None, mtu=1500, start=True): """ Create an RJ45Node instance. :param core.session.Session session: core session instance :param int objid: node id :param str name: node name :param mtu: rj45 mtu :param bool start: start flag :return: """ PyCoreNode.__init__(self, session, objid, name, start=start) PyCoreNetIf.__init__(self, node=self, name=name, mtu=mtu) self.up = False self.lock = threading.RLock() self.ifindex = None # the following are PyCoreNetIf attributes self.transport_type = "raw" self.localname = name self.old_up = False self.old_addrs = [] if start: self.startup()