Beispiel #1
0
 def fdb_vlanmac(self, fdb):
     if 'vlan' in fdb:
         vlan_id = fdb["vlan"]
     elif 'bvid' in fdb:
         if fdb["bvid"] in self.bvid_vlan_map:
             vlan_id = self.bvid_vlan_map[fdb["bvid"]]
         else:
             vlan_id = Namespace.dbs_get_vlan_id_from_bvid(self.db_conn, fdb["bvid"])
             self.bvid_vlan_map[fdb["bvid"]] = vlan_id
     return (int(vlan_id),) + mac_decimals(fdb["mac"])
Beispiel #2
0
 def fdb_vlanmac(self, fdb):
     if 'vlan' in fdb:
         vlan_id = fdb["vlan"]
     elif 'bvid' in fdb:
         if fdb["bvid"] in self.bvid_vlan_map:
             vlan_id = self.bvid_vlan_map[fdb["bvid"]]
         else:
             vlan_id = port_util.get_vlan_id_from_bvid(self.db_conn, fdb["bvid"])
             self.bvid_vlan_map[fdb["bvid"]] = vlan_id
     return (int(vlan_id),) + mac_decimals(fdb["mac"])
    def _update_arp_info(self, dev, mac, ip):
        if_index = mibs.get_index_from_str(dev)
        if if_index is None: return

        mactuple = mac_decimals(mac)
        machex = ''.join(chr(b) for b in mactuple)
        # if MAC is all zero
        #if not any(mac): continue

        iptuple = ip2tuple_v4(ip)

        subid = (if_index, ) + iptuple
        self.arp_dest_map[subid] = machex
        self.arp_dest_list.append(subid)
Beispiel #4
0
 def fdb_vlanmac(self, fdb):
     if 'vlan' in fdb:
         vlan_id = fdb["vlan"]
     elif 'bvid' in fdb:
         if fdb["bvid"] in self.bvid_vlan_map:
             vlan_id = self.bvid_vlan_map[fdb["bvid"]]
         else:
             vlan_id = Namespace.dbs_get_vlan_id_from_bvid(
                 self.db_conn, fdb["bvid"])
             if isinstance(vlan_id, bytes):
                 vlan_id = vlan_id.decode()
             self.bvid_vlan_map[fdb["bvid"]] = vlan_id
     else:
         return None
     if not isinstance(vlan_id, str):
         return None
     return (int(vlan_id), ) + mac_decimals(fdb["mac"])
Beispiel #5
0
    def update_data(self):
        self.arp_dest_map = {}
        self.arp_dest_list = []
        for entry in python_arptable.get_arp_table():
            dev = entry['Device']
            mac = entry['HW address']
            ip = entry['IP address']

            if_index = mibs.get_index_from_str(dev)
            if if_index is None: continue

            mactuple = mac_decimals(mac)
            machex = ''.join(chr(b) for b in mactuple)
            # if MAC is all zero
            #if not any(mac): continue

            iptuple = ip2tuple_v4(ip)

            subid = (if_index, ) + iptuple
            self.arp_dest_map[subid] = machex
            self.arp_dest_list.append(subid)
        self.arp_dest_list.sort()
Beispiel #6
0
    def update_data(self):
        self.arp_dest_map = {}
        self.arp_dest_list = []
        for entry in python_arptable.get_arp_table():
            dev = entry['Device']
            mac = entry['HW address']
            ip = entry['IP address']

            if_index = mibs.get_index_from_str(dev)
            if if_index is None: continue

            mactuple = mac_decimals(mac)
            machex = ''.join(chr(b) for b in mactuple)
            # if MAC is all zero
            #if not any(mac): continue

            iptuple = ip2tuple_v4(ip)

            subid = (if_index,) + iptuple
            self.arp_dest_map[subid] = machex
            self.arp_dest_list.append(subid)
        self.arp_dest_list.sort()
Beispiel #7
0
def fdb_vlanmac(fdb):
    return (int(fdb["vlan"]), ) + mac_decimals(fdb["mac"])
Beispiel #8
0
def fdb_vlanmac(db_conn, fdb):
    if 'vlan' in fdb:
        vlan_id = fdb["vlan"]
    elif 'bvid' in fdb:
        vlan_id = port_util.get_vlan_id_from_bvid(db_conn, fdb["bvid"])
    return (int(vlan_id), ) + mac_decimals(fdb["mac"])