Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cisco SD-Access Fabric Edges Not Properly Presented #1134

Open
gonzalu opened this issue Dec 7, 2023 · 2 comments
Open

Cisco SD-Access Fabric Edges Not Properly Presented #1134

gonzalu opened this issue Dec 7, 2023 · 2 comments

Comments

@gonzalu
Copy link

gonzalu commented Dec 7, 2023

Hello,

Running netdisco 2.69 successfully. System is running on Docker and I have thousands of Devices and Nodes discovered.

However, I noticed recently that a Cisco SD-Access Fabric Edge Node is not displaying all the nodes on all the VLANs and corresponding ports on a non-default VRF

The switch itself does have all the IP to MAC address mappings exposed via SNMP but not sure why all VLANs aren't represented. MAC addresses are searchable but never with a matching IP or Switch/Port mapping.

So, as an example:

Cisco SD-Access Switch
Multiple VLANs
All VLANs are mapped to a VRF called "MONTE_VRF"
On the switch, the "sh ip arp" only shows the underlay IP ARP database.
"show ip arp VRF MONTE_CORP" displays all the VLANs I am interested in.

In Netdisco, when I search by IPs in one of the VLANs, say VLAN 1030 or 1020, they are not showing up.
The VoIP VLAN is showing (VLAN 2046) but no others

The "walk_all2" script in the MIBs folder on the docker container does show an entire list of IP to MAC mappings

EXAMPLE:

./walk_all2 -c public -v 2c -d 10.136.8.137 -w

ipNetToPhysicalPhysAddress.324.1.4.10.136.128.61 = 74:fe:48:57:56:78
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.62 = 74:fe:48:57:ea:6d
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.81 = 52:54:0:40:91:41
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.82 = 0:e0:f4:34:78:2c
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.83 = 0:19:f:53:ed:b0
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.84 = 0:19:f:54:4:2e
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.85 = a0:8c:fd:d0:c3:b9
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.93 = 80:e8:2c:e3:51:36
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.94 = 80:e8:2c:e0:d:fd
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.100 = 0:7:4d:9d:f0:e9
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.101 = 0:7:4d:aa:f5:a4
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.102 = 0:7:4d:9d:f5:3b
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.103 = 0:7:4d:9d:f1:57
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.104 = 6c:2b:59:f1:5d:83
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.105 = 7c:57:58:ac:42:4e
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.107 = 6c:2b:59:f4:0:6e
ipNetToPhysicalPhysAddress.324.1.4.10.136.128.108 = 5c:60:ba:95:2c:65

The above command is not returning VLAN info that I can tell in DECIMAL notation.

Is there a step I am missing?

Thanks for your help and apologies in advance if I missed any info.

Context

Trying to collect ARP and MAC info for a Cisco Switch in an SD-Access Fabric Edge environment. We use multiple VRFs for various traffic and some VLANs are on different VRFs

Your Environment

  • netdisco container versions:
    • netdisco-postgresql: 13.00.4
    • netdisco-backend: 2.69.0
    • netdisco-web:
  • docker engine version: 24.0.7, build afdd53b
  • docker-compose version: 2.2.3
  • host operating system: Red Hat Enterprise Linux release 8.8 (Ootpa)

Device information

[+] Creating 1/0
 ✔ Container netdisco-netdisco-postgresql-1  Running                                                                                                                                                                                                       0.0s 
Attempting to create directory /home/netdisco/perl5
[1] 2023-12-07 01:31:17  info App::Netdisco version 2.069000 loaded.
[1] 2023-12-07 01:31:17  info show: [10.136.8.137]/specify started at Thu Dec  7 01:31:17 2023
[1] 2023-12-07 01:31:17 debug show: running with timeout 600s
[1] 2023-12-07 01:31:17 debug => running workers for phase: check
[1] 2023-12-07 01:31:17 debug -> run worker check/1000000 "internal::backendfqdn"
[1] 2023-12-07 01:31:17 debug -> run worker check/1000000 "internal::snmpfastdiscover"
[1] 2023-12-07 01:31:17 debug running with configured SNMP timeouts
[1] 2023-12-07 01:31:17 debug -> run worker check/0 "show"
[1] 2023-12-07 01:31:17 debug Show is able to run
[1] 2023-12-07 01:31:17 debug => running workers for phase: main
[1] 2023-12-07 01:31:17 debug -> run worker main/100 "show"
[1] 2023-12-07 01:31:17 debug snmp reader cache warm: [10.136.8.137]
[1] 2023-12-07 01:31:17 debug [10.136.8.137:161] try_connect with v: 2, t: 0.2, r: 0, class: SNMP::Info::Layer3::CiscoSwitch, comm: <hidden>
SNMP::Info::_global uptime : DISMAN-EVENT-MIB::sysUpTimeInstance : .1.3.6.1.2.1.1.3.0
SNMP::Info::_global layers : SNMPv2-MIB::sysServices.0 : .1.3.6.1.2.1.1.7.0
SNMP::Info::_global description : SNMPv2-MIB::sysDescr.0 : .1.3.6.1.2.1.1.1.0
SNMP::Info::_global id : SNMPv2-MIB::sysObjectID.0 : .1.3.6.1.2.1.1.2.0
SNMP::Info 3.95
SNMP::Info::device_type() layers:00000110 id:9 sysDescr:"Cisco IOS Software [Cupertino], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.9.4, RELEASE SOFTWARE (fc5) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2023 by Cisco Systems, Inc. Compiled Wed 26-Jul-23 10:26 by mcpre"
SNMP::Info 3.95
SNMP::Info::device_type() layers:00000110 id:9 sysDescr:"Cisco IOS Software [Cupertino], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.9.4, RELEASE SOFTWARE (fc5) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2023 by Cisco Systems, Inc. Compiled Wed 26-Jul-23 10:26 by mcpre"
SNMP::Info::_global layers : SNMPv2-MIB::sysServices.0 : .1.3.6.1.2.1.1.7.0
SNMP::Info::_global description : SNMPv2-MIB::sysDescr.0 : .1.3.6.1.2.1.1.1.0
SNMP::Info::_global id : SNMPv2-MIB::sysObjectID.0 : .1.3.6.1.2.1.1.2.0
SNMP::Info 3.95
SNMP::Info::device_type() layers:00000110 id:9 sysDescr:"Cisco IOS Software [Cupertino], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.9.4, RELEASE SOFTWARE (fc5) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2023 by Cisco Systems, Inc. Compiled Wed 26-Jul-23 10:26 by mcpre"
SNMP::Info::specify() - Changed Class to SNMP::Info::Layer3::CiscoSwitch.
SNMP::Info::_validate_autoload_method(_data_printer) Unable to resolve method.
SNMP::Info::_validate_autoload_method(as_string) Unable to resolve method.
SNMP::Info::_validate_autoload_method(stringify) Unable to resolve method.
SNMP::Info::_validate_autoload_method(to_string) Unable to resolve method.
SNMP::Info::Layer3::CiscoSwitch  {
    parents: SNMP::Info::CiscoAgg, SNMP::Info::CiscoPortSecurity, SNMP::Info::Layer3::Cisco, SNMP::Info::PortAccessEntity, Exporter
    linear @ISA: SNMP::Info::Layer3::CiscoSwitch, SNMP::Info::CiscoAgg, SNMP::Info::IEEE802dot3ad, SNMP::Info::Aggregate, SNMP::Info, Exporter, SNMP::Info::CiscoPortSecurity, SNMP::Info::Layer3::Cisco, SNMP::Info::CiscoBGP, SNMP::Info::CiscoVTP, SNMP::Info::CDP, SNMP::Info::CiscoStats, SNMP::Info::CiscoRTT, SNMP::Info::CiscoQOS, SNMP::Info::CiscoConfig, SNMP::Info::CiscoPower, SNMP::Info::CiscoStpExtensions, SNMP::Info::Bridge, SNMP::Info::Layer3, SNMP::Info::PowerEthernet, SNMP::Info::IPv6, SNMP::Info::Entity, SNMP::Info::EtherLike, SNMP::Info::AdslLine, SNMP::Info::LLDP, SNMP::Info::DocsisHE, SNMP::Info::PortAccessEntity
    public methods (210):
        cisco_comm_indexing
        Carp:
            carp, confess, croak
        Data::Dumper:
            Dumper
        Exporter:
            as_heavy, export, export_fail, export_ok_tags, export_tags, export_to_level, import, require_version
        SNMP:
            RECEIVED_MESSAGE, SNMP_API_SINGLE, SNMP_API_TRADITIONAL, SNMP_DEFAULT_ADDRESS, SNMP_DEFAULT_COMMUNITY_LEN, SNMP_DEFAULT_ENTERPRISE_LENGTH, SNMP_DEFAULT_ERRINDEX, SNMP_DEFAULT_ERRSTAT, SNMP_DEFAULT_PEERNAME, SNMP_DEFAULT_REMPORT, SNMP_DEFAULT_REQID, SNMP_DEFAULT_RETRIES, SNMP_DEFAULT_TIME, SNMP_DEFAULT_TIMEOUT, SNMP_DEFAULT_VERSION, snmp_get, snmp_getnext, snmp_set, snmp_trap, SNMPERR_BAD_ADDRESS, SNMPERR_BAD_LOCPORT, SNMPERR_BAD_SESSION, SNMPERR_GENERR, SNMPERR_TOO_LONG, TIMED_OUT
        SNMP::Info:
            all, args, AUTOLOAD, bulkwalk, bulkwalk_no, c_cap, c_id, c_if, c_ip, c_platform, c_port, cache, can, class, clear_cache, debug, DESTROY, device_type, error, error_throw, funcs, globals, has_layer, has_topo, i_speed, i_speed_raw, if_ignore, init, ip_index, ip_netmask, ip_table, load_all, loopdetect, mibs, modify_port_list, munge, munge_bits, munge_counter64, munge_dec2bin, munge_e_type, munge_highspeed, munge_i_up, munge_inetaddress, munge_ip, munge_mac, munge_null, munge_octet2hex, munge_port_list, munge_prio_mac, munge_prio_port, munge_speed, new, nosuch, offline, resolve_desthost, session, set_multi, snmp_comm, snmp_connect_ip, snmp_ver, specify, store, update
        SNMP::Info::Aggregate:
            agg_ports_ifstack
        SNMP::Info::Bridge:
            fw_mac, fw_port, fw_status, i_stp_bridge, i_stp_id, i_stp_port, i_stp_state, qb_fdb_index, qb_fw_mac, qb_fw_vlan, qb_i_vlan_t
        SNMP::Info::CDP:
            cdp_cap, cdp_id, cdp_if, cdp_ip, cdp_port, hasCDP, munge_power
        SNMP::Info::CiscoAgg:
            agg_ports, agg_ports_cisco, agg_ports_lag, agg_ports_pagp, agg_ports_propvirtual, munge_port_ifindex
        SNMP::Info::CiscoBGP:
            parse_cisco_bgp_peer2_entry_index
        SNMP::Info::CiscoConfig:
            copy_run_start, copy_run_tftp
        SNMP::Info::CiscoPortSecurity:
            i_err_disable_cause, munge_pae_capabilities
        SNMP::Info::CiscoPower:
            peth_port_ifindex, peth_port_neg_power
        SNMP::Info::CiscoStats:
            cpu, cpu_1min, cpu_5min, flashmem_total, mem_free, mem_total, mem_used, os, os_bin, os_ver, vendor
        SNMP::Info::CiscoStpExtensions:
            i_bpdufilter_enabled, i_bpduguard_enabled, i_faststart_enabled, i_loopguard_enabled, i_rootguard_enabled, mst_config_digest, mst_region_name, mst_region_rev, mst_vlan2instance, oct2str, stp_ver
        SNMP::Info::CiscoVTP:
            i_subinterfaces, i_untagged, i_vlan_membership, i_vlan_membership_untagged, set_add_i_vlan_tagged, set_i_pvid, set_i_untagged, set_i_vlan, set_remove_i_vlan_tagged, v_index
        SNMP::Info::Entity:
            e_index, e_port, entity_derived_os_ver, entity_derived_serial
        SNMP::Info::EtherLike:
            munge_el_duplex
        SNMP::Info::IPv6:
            CISCO, IPMIB, ipv6_addr, ipv6_addr_prefix, ipv6_addr_prefixlength, ipv6_index, ipv6_n2p_addr, ipv6_n2p_if, ipv6_n2p_mac, ipv6_n2p_state, ipv6_n2p_type, ipv6_pfx_origin, ipv6_type, IPV6MIB, munge_physaddr
        SNMP::Info::LLDP:
            hasLLDP, lldp_addr, lldp_cap, lldp_id, lldp_if, lldp_ip, lldp_ipv6, lldp_loc_id, lldp_mac, lldp_media_cap, lldp_platform, lldp_port
        SNMP::Info::Layer3:
            at_index, at_netaddr, at_paddr, i_duplex, i_name, interfaces, isis_peers, model, root_ip, serial
        SNMP::Info::Layer3::Cisco:
            eigrp_peers, i_vlan
        SNMP::Info::PortAccessEntity:
            pae_authsess_mab
    private methods (0)
    internals: {
        args                {
            AutoSpecify         0,
            BulkRepeaters       20,
            BulkWalk            1,
            Community           "public",
            Debug               1,
            DebugSNMP           0,
            DestHost            "10.136.8.137" (dualvar: 10.136),
            IgnoreNetSNMPConf   1,
            MibDirs             [
                [0]  "/home/netdisco/netdisco-mibs/3com",
                [1]  "/home/netdisco/netdisco-mibs/adtran",
                [2]  "/home/netdisco/netdisco-mibs/aerohive",
                [3]  "/home/netdisco/netdisco-mibs/alcatel",
                [4]  "/home/netdisco/netdisco-mibs/allied",
                [5]  "/home/netdisco/netdisco-mibs/apc",
                [6]  "/home/netdisco/netdisco-mibs/arista",
                [7]  "/home/netdisco/netdisco-mibs/aruba",
                [8]  "/home/netdisco/netdisco-mibs/asante",
                [9]  "/home/netdisco/netdisco-mibs/avaya",
                [10] "/home/netdisco/netdisco-mibs/bluecoat",
                [11] "/home/netdisco/netdisco-mibs/bluesocket",
                [12] "/home/netdisco/netdisco-mibs/brother",
                [13] "/home/netdisco/netdisco-mibs/cabletron",
                [14] "/home/netdisco/netdisco-mibs/ceragon",
                [15] "/home/netdisco/netdisco-mibs/cern",
                [16] "/home/netdisco/netdisco-mibs/checkpoint",
                [17] "/home/netdisco/netdisco-mibs/ciena",
                [18] "/home/netdisco/netdisco-mibs/cisco",
                [19] "/home/netdisco/netdisco-mibs/ciscosb",
                [20] "/home/netdisco/netdisco-mibs/citrix",
                [21] "/home/netdisco/netdisco-mibs/clavister",
                [22] "/home/netdisco/netdisco-mibs/cloudgenix",
                [23] "/home/netdisco/netdisco-mibs/colubris",
                [24] "/home/netdisco/netdisco-mibs/cumulus",
                [25] "/home/netdisco/netdisco-mibs/cyclades",
                [26] "/home/netdisco/netdisco-mibs/d-link",
                [27] "/home/netdisco/netdisco-mibs/dell",
                [28] "/home/netdisco/netdisco-mibs/eaton",
                [29] "/home/netdisco/netdisco-mibs/efficientip",
                [30] "/home/netdisco/netdisco-mibs/enterasys",
                [31] "/home/netdisco/netdisco-mibs/etherwan",
                [32] "/home/netdisco/netdisco-mibs/exinda",
                [33] "/home/netdisco/netdisco-mibs/extreme",
                [34] "/home/netdisco/netdisco-mibs/extricom",
                [35] "/home/netdisco/netdisco-mibs/f5",
                [36] "/home/netdisco/netdisco-mibs/force10",
                [37] "/home/netdisco/netdisco-mibs/fortinet",
                [38] "/home/netdisco/netdisco-mibs/foundry",
                [39] "/home/netdisco/netdisco-mibs/gigamon",
                [40] "/home/netdisco/netdisco-mibs/h3c",
                [41] "/home/netdisco/netdisco-mibs/hirschmann",
                [42] "/home/netdisco/netdisco-mibs/hp",
                [43] "/home/netdisco/netdisco-mibs/hpe",
                [44] "/home/netdisco/netdisco-mibs/huawei",
                [45] "/home/netdisco/netdisco-mibs/hwgroup",
                [46] "/home/netdisco/netdisco-mibs/ibm",
                [47] "/home/netdisco/netdisco-mibs/intel",
                [48] "/home/netdisco/netdisco-mibs/juniper",
                [49] "/home/netdisco/netdisco-mibs/korenix",
                [50] "/home/netdisco/netdisco-mibs/lancom",
                [51] "/home/netdisco/netdisco-mibs/lantronix",
                [52] "/home/netdisco/netdisco-mibs/lenovo",
                [53] "/home/netdisco/netdisco-mibs/liebert",
                [54] "/home/netdisco/netdisco-mibs/mediant",
                [55] "/home/netdisco/netdisco-mibs/megatec",
                [56] "/home/netdisco/netdisco-mibs/mellanox",
                [57] "/home/netdisco/netdisco-mibs/meraki",
                [58] "/home/netdisco/netdisco-mibs/meru",
                [59] "/home/netdisco/netdisco-mibs/microsens",
                [60] "/home/netdisco/netdisco-mibs/mikrotik",
                [61] "/home/netdisco/netdisco-mibs/mimosa",
                [62] "/home/netdisco/netdisco-mibs/moser-baer",
                [63] "/home/netdisco/netdisco-mibs/motorola",
                [64] "/home/netdisco/netdisco-mibs/moxa",
                [65] "/home/netdisco/netdisco-mibs/nateks",
                [66] "/home/netdisco/netdisco-mibs/net-snmp",
                [67] "/home/netdisco/netdisco-mibs/netapp",
                [68] "/home/netdisco/netdisco-mibs/netgear",
                [69] "/home/netdisco/netdisco-mibs/netonix",
                [70] "/home/netdisco/netdisco-mibs/netscreen",
                [71] "/home/netdisco/netdisco-mibs/nexans",
                [72] "/home/netdisco/netdisco-mibs/nortel",
                [73] "/home/netdisco/netdisco-mibs/northerndesign",
                [74] "/home/netdisco/netdisco-mibs/oneaccess",
                [75] "/home/netdisco/netdisco-mibs/openbsd",
                [76] "/home/netdisco/netdisco-mibs/opengear",
                [77] "/home/netdisco/netdisco-mibs/packetfront",
                [78] "/home/netdisco/netdisco-mibs/paloalto",
                [79] "/home/netdisco/netdisco-mibs/pica8",
                [80] "/home/netdisco/netdisco-mibs/pulsesecure-gateway",
                [81] "/home/netdisco/netdisco-mibs/rad",
                [82] "/home/netdisco/netdisco-mibs/redlionram",
                [83] "/home/netdisco/netdisco-mibs/rfc",
                [84] "/home/netdisco/netdisco-mibs/rittal",
                [85] "/home/netdisco/netdisco-mibs/riverbed",
                [86] "/home/netdisco/netdisco-mibs/ruckus",
                [87] "/home/netdisco/netdisco-mibs/schleifenbauer",
                [88] "/home/netdisco/netdisco-mibs/sentry",
                [89] "/home/netdisco/netdisco-mibs/siemens",
                [90] "/home/netdisco/netdisco-mibs/silver-peak",
                [91] "/home/netdisco/netdisco-mibs/sixnet",
                [92] "/home/netdisco/netdisco-mibs/sonicwall",
                [93] "/home/netdisco/netdisco-mibs/sophos",
                [94] "/home/netdisco/netdisco-mibs/teleste",
                [95] "/home/netdisco/netdisco-mibs/teltonika",
                [96] "/home/netdisco/netdisco-mibs/tplink",
                [97] "/home/netdisco/netdisco-mibs/transition",
                [98] "/home/netdisco/netdisco-mibs/trapeze",
                [99] "/home/netdisco/netdisco-mibs/ubnt",
                     (...skipping 5 items...)
            ],
            NonIncreasing       0,
            RemotePort          161,
            Retries             2,
            Session             SNMP::Session,
            Timeout             3000000,
            Version             2
        },
        BulkRepeaters       20,
        BulkWalk            1,
        class               "SNMP::Info::Layer3::CiscoSwitch",
        debug               1,
        funcs               {
            ad_lag_ports                                "dot3adAggPortListPorts",
            adsl_atuc_crc_block_len                     "adslAtucChanCrcBlockLength",
            adsl_atuc_curr_tx_rate                      "adslAtucChanCurrTxRate",
            adsl_atuc_interleave_delay                  "adslAtucChanInterleaveDelay",
            adsl_atuc_prev_tx_rate                      "adslAtucChanPrevTxRate",
            adsl_atur_crc_block_len                     "adslAturChanCrcBlockLength",
            adsl_atur_curr_tx_rate                      "adslAturChanCurrTxRate",
            adsl_atur_interleave_delay                  "adslAturChanInterleaveDelay",
            adsl_atur_prev_tx_rate                      "adslAturChanPrevTxRate",
            at_index                                    "ipNetToMediaIfIndex",
            at_netaddr                                  "ipNetToMediaNetAddress",
            at_paddr                                    "ipNetToMediaPhysAddress",
            bgp_peer_addr                               "bgpPeerRemoteAddr",
            bgp_peer_as                                 "bgpPeerRemoteAs",
            bgp_peer_fsm_est_trans                      "bgpPeerFsmEstablishedTransitions",
            bgp_peer_id                                 "bgpPeerIdentifier",
            bgp_peer_in_tot_msgs                        "bgpPeerInTotalMessages",
            bgp_peer_in_upd                             "bgpPeerInUpdates",
            bgp_peer_in_upd_el_time                     "bgpPeerInUpdateElapsedTime",
            bgp_peer_out_tot_msgs                       "bgpPeerOutTotalMessages",
            bgp_peer_out_upd                            "bgpPeerOutUpdates",
            bgp_peer_state                              "bgpPeerState",
            bgp_peers                                   "bgpPeerLocalAddr",
            bp_index                                    "dot1dBasePortIfIndex",
            bp_port                                     "dot1dBasePortCircuit",
            bs_mac                                      "dot1dStaticAddress",
            bs_port                                     "dot1dStaticReceivePort",
            bs_status                                   "dot1dStaticStatus",
            bs_to                                       "dot1dStaticAllowedToGoTo",
            c_addr6_index                               "cIpAddressIfIndex",
            c_addr6_pfx                                 "cIpAddressPrefix",
            c_addr6_type                                "cIpAddressType",
            c_eigrp_peer_types                          "cEigrpPeerAddrType",
            c_eigrp_peers                               "cEigrpPeerAddr",
            c_inet_phys_addr                            "cInetNetToMediaPhysAddress",
            c_inet_phys_state                           "cInetNetToMediaState",
            c_inet_phys_type                            "cInetNetToMediaType",
            c_pfx_origin                                "cIpAddressPfxOrigin",
            cdp_addr                                    "cdpCacheAddress",
            cdp_capabilities                            "cdpCacheCapabilities",
            cdp_dev_id                                  "cdpCacheDeviceId",
            cdp_dev_port                                "cdpCacheDevicePort",
            cdp_domain                                  "cdpCacheVTPMgmtDomain",
            cdp_duplex                                  "cdpCacheDuplex",
            cdp_platform                                "cdpCachePlatform",
            cdp_power                                   "cdpCachePowerConsumption",
            cdp_pri_mgmt_addr                           "cdpCachePrimaryMgmtAddr",
            cdp_pri_mgmt_type                           "cdpCachePrimaryMgmtAddrType",
            cdp_proto                                   "cdpCacheAddressType",
            cdp_sec_mgmt_addr                           "cdpCacheSecondaryMgmtAddr",
            cdp_sec_mgmt_type                           "cdpCacheSecondaryMgmtAddrType",
            cdp_ver                                     "cdpCacheVersion",
            cdp_vlan                                    "cdpCacheNativeVLAN",
            cerr_i_cause                                "cErrDisableIfStatusCause",
            ci_images                                   "ciscoImageString",
            cisco_bgp_peer2_acceptedprefixes            "cbgpPeer2AcceptedPrefixes",
            cisco_bgp_peer2_adminstatus                 "cbgpPeer2AdminStatus",
            cisco_bgp_peer2_advertisedprefixes          "cbgpPeer2AdvertisedPrefixes",
            cisco_bgp_peer2_connectretryinterval        "cbgpPeer2ConnectRetryInterval",
            cisco_bgp_peer2_deniedprefixes              "cbgpPeer2DeniedPrefixes",
            cisco_bgp_peer2_fsmestablishedtime          "cbgpPeer2FsmEstablishedTime",
            cisco_bgp_peer2_fsmestablishedtransitions   "cbgpPeer2FsmEstablishedTransitions",
            cisco_bgp_peer2_holdtime                    "cbgpPeer2HoldTime",
            cisco_bgp_peer2_holdtimeconfigured          "cbgpPeer2HoldTimeConfigured",
            cisco_bgp_peer2_intotalmessages             "cbgpPeer2InTotalMessages",
            cisco_bgp_peer2_inupdatelapsedtime          "cbgpPeer2InUpdateElapsedTime",
            cisco_bgp_peer2_inupdates                   "cbgpPeer2InUpdates",
            cisco_bgp_peer2_keepalive                   "cbgpPeer2KeepAlive",
            cisco_bgp_peer2_keepaliveconfigured         "cbgpPeer2KeepAliveConfigured",
            cisco_bgp_peer2_lasterror                   "cbgpPeer2LastError",
            cisco_bgp_peer2_lasterrortxt                "cbgpPeer2LastErrorTxt",
            cisco_bgp_peer2_localaddr                   "cbgpPeer2LocalAddr",
            cisco_bgp_peer2_localas                     "cbgpPeer2LocalAs",
            cisco_bgp_peer2_localidentifier             "cbgpPeer2LocalIdentifier",
            cisco_bgp_peer2_localport                   "cbgpPeer2LocalPort",
            cisco_bgp_peer2_minasoriginationinterval    "cbgpPeer2MinASOriginationInterval",
            cisco_bgp_peer2_outtotalmessages            "cbgpPeer2OutTotalMessages",
            cisco_bgp_peer2_outupdates                  "cbgpPeer2OutUpdates",
            cisco_bgp_peer2_prefixadminlimit            "cbgpPeer2PrefixAdminLimit",
            cisco_bgp_peer2_prefixclearthreshold        "cbgpPeer2PrefixClearThreshold",
            cisco_bgp_peer2_prefixthreshold             "cbgpPeer2PrefixThreshold",
            cisco_bgp_peer2_prevstate                   "cbgpPeer2PrevState",
            cisco_bgp_peer2_remoteas                    "cbgpPeer2RemoteAs",
            cisco_bgp_peer2_remoteidentifier            "cbgpPeer2RemoteIdentifier",
            cisco_bgp_peer2_remoteport                  "cbgpPeer2RemotePort",
            cisco_bgp_peer2_state                       "cbgpPeer2State",
            cisco_bgp_peer2_suppressedprefixes          "cbgpPeer2SuppressedPrefixes",
            cisco_bgp_peer2_withdrawnprefixes           "cbgpPeer2WithdrawnPrefixes",
            cisco_flash_size                            "ciscoFlashDeviceSize",
            cisco_mem_free                              "ciscoMemoryPoolFree",
            cisco_mem_used                              "ciscoMemoryPoolUsed",
            config_copy_complete_time                   "ccCopyTimeCompleted",
            config_copy_start_time                      "ccCopyTimeStarted",
            config_copy_state                           "ccCopyState",
            config_dest_type                            "ccCopyDestFileType",
            config_fail_cause                           "ccCopyFailCause",
            config_filename                             "ccCopyFileName",
            config_notify_complete                      "ccCopyNotificationOnCompletion",
            config_password                             "ccCopyUserPassword",
            config_protocol                             "ccCopyProtocol",
            (...skipping 314 keys...)
        },
        globals             {
            b_mac                       "dot1dBaseBridgeAddress",
            b_ports                     "dot1dBaseNumPorts",
            b_type                      "dot1dBaseType",
            bgp_id                      "bgpIdentifier.0",
            bgp_local_as                "bgpLocalAs.0",
            cat_cpu                     "cpmCPUTotal5sec.9",
            cat_cpu_1min                "cpmCPUTotal1min.9",
            cat_cpu_5min                "cpmCPUTotal5min.9",
            cdp_gid                     "cdpGlobalDeviceId",
            cdp_holdtime                "cdpGlobalHoldTime",
            cdp_interval                "cdpGlobalMessageInterval",
            cdp_run                     "cdpGlobalRun",
            contact                     "sysContact",
            cps_clear                   "cpsGlobalClearSecureMacAddresses",
            cps_enable                  "cpsGlobalPortSecurityEnable",
            cps_mac_count               "cpsGlobalTotalSecureAddress",
            cps_mac_max                 "cpsGlobalMaxSecureAddress",
            cps_notify                  "cpsGlobalSNMPNotifControl",
            cps_rate                    "cpsGlobalSNMPNotifRate",
            description                 "sysDescr",
            eigrp_id                    "cEigrpAsRouterId",
            ent_physical_software_rev   "entPhysicalSoftwareRev.1",
            id                          "sysObjectID",
            ios_cpu                     "1.3.6.1.4.1.9.2.1.56.0" (dualvar: 1.3),
            ios_cpu_1min                "1.3.6.1.4.1.9.2.1.57.0" (dualvar: 1.3),
            ios_cpu_5min                "1.3.6.1.4.1.9.2.1.58.0" (dualvar: 1.3),
            ipforwarding                "ipForwarding",
            layers                      "sysServices",
            lldp_loc_id_os              "lldpLocChassisId",
            lldp_loc_id_type            "lldpLocChassisIdSubtype",
            lldp_sys_cap                "lldpLocSysCapEnabled",
            lldp_sysdesc                "lldpLocSysDesc",
            lldp_sysname                "lldpLocSysName",
            location                    "sysLocation",
            mac                         "ifPhysAddress.1",
            name                        "sysName",
            old_write_mem               "writeMem",
            old_write_net               "writeNet",
            pae_control                 "dot1xPaeSystemAuthControl",
            ports                       "ifNumber",
            qb_next_vlan_index          "dot1qNextFreeLocalVlanIndex",
            qb_vlans                    "dot1qNumVlans",
            qb_vlans_max                "dot1qMaxSupportedVlans",
            rom_id                      "romId",
            router_ip                   "ospfRouterId.0",
            serial1                     ".1.3.6.1.4.1.9.3.6.3.0" (dualvar: 0.1),
            stp_priority                "dot1dStpPriority",
            stp_root                    "dot1dStpDesignatedRoot",
            stp_root_port               "dot1dStpRootPort",
            stp_time                    "dot1dStpTimeSinceTopologyChange",
            stp_ver                     "dot1dStpProtocolSpecification",
            stpx_bpdufilter_enable      "stpxFastStartBpduFilterEnable",
            stpx_bpduguard_enable       "stpxFastStartBpduGuardEnable",
            stpx_faststart_default      "stpxFastStartGlobalDefaultMode",
            stpx_mst_config_digest      "stpxSMSTConfigDigest",
            stpx_mst_region_name        "stpxMSTRegionName",
            stpx_mst_region_rev         "stpxSMSTRegionRevision",
            stpx_stp_type               "stpxSpanningTreeType",
            uptime                      "sysUpTime",
            vtp_maxstore                "vtpMaxVlanStorage",
            vtp_notify                  "vtpNotificationsEnabled",
            vtp_notify_create           "vtpVlanCreatedNotifEnabled",
            vtp_notify_delete           "vtpVlanDeletedNotifEnabled",
            vtp_trunk_set_serial        "vlanTrunkPortSetSerialNo",
            vtp_version                 "vtpVersion",
            write_mem                   "writeMem"
        },
        IgnoreNetSNMPConf   1,
        init                \ 1,
        mibdirs             var{args}{MibDirs},
        mibs                {
            ADSL-LINE-MIB                         "adslLineType",
            BGP4-MIB                              "bgpIdentifier",
            BRIDGE-MIB                            "dot1dBaseBridgeAddress",
            CISCO-BGP4-MIB                        "cbgpPeer2State",
            CISCO-CDP-MIB                         "cdpGlobalRun",
            CISCO-CLASS-BASED-QOS-MIB             "cbQosIfIndex",
            CISCO-CONFIG-COPY-MIB                 "ccCopyTable",
            CISCO-EIGRP-MIB                       "cEigrpAsRouterId",
            CISCO-ENTITY-VENDORTYPE-OID-MIB       "cevChassis",
            CISCO-ERR-DISABLE-MIB                 "ciscoErrDisableMIB",
            CISCO-FLASH-MIB                       "ciscoFlashDeviceSize",
            CISCO-IETF-IP-MIB                     "cInetNetToMediaNetAddress",
            CISCO-IF-EXTENSION-MIB                "cieIfLastInTime",
            CISCO-IMAGE-MIB                       "ciscoImageString",
            CISCO-LAG-MIB                         "clagAggPortListPorts",
            CISCO-MEMORY-POOL-MIB                 "ciscoMemoryPoolUsed",
            CISCO-PAE-MIB                         "ciscoPaeMIB",
            CISCO-PAGP-MIB                        "pagpGroupIfIndex",
            CISCO-PORT-SECURITY-MIB               "ciscoPortSecurityMIB",
            CISCO-POWER-ETHERNET-EXT-MIB          "cpeExtPsePortEntPhyIndex",
            CISCO-PROCESS-MIB                     "cpmCPUTotal5sec",
            CISCO-PRODUCTS-MIB                    "ciscoIGS",
            CISCO-RTTMON-MIB                      "rttMonCtrlAdminOwner",
            CISCO-STACK-MIB                       "wsc1900sysID",
            CISCO-STP-EXTENSIONS-MIB              "stpxSpanningTreeType",
            CISCO-VLAN-IFTABLE-RELATIONSHIP-MIB   "cviRoutedVlanIfIndex",
            CISCO-VLAN-MEMBERSHIP-MIB             "vmMembershipEntry",
            CISCO-VTP-MIB                         "vtpVlanName",
            DOCS-IF-MIB                           "docsIfMib",
            DOCS-IF3-MIB                          "docsIf3Mib",
            ENTITY-MIB                            "entPhysicalSoftwareRev",
            EtherLike-MIB                         "etherMIB",
            IEEE8021-PAE-MIB                      "dot1xPaeSystemAuthControl",
            IEEE8023-LAG-MIB                      "dot3adAggPortSelectedAggID",
            IF-MIB                                "ifIndex",
            IP-MIB                                "ipNetToMediaIfIndex",
            IPV6-MIB                              "ipv6IfTableLastChange",
            ISIS-MIB                              "isisSysID",
            LLDP-EXT-DOT1-MIB                     "lldpXdot1MIB",
            LLDP-EXT-DOT3-MIB                     "lldpXdot3MIB",
            LLDP-EXT-MED-MIB                      "lldpXMedMIB",
            LLDP-MIB                              "lldpLocSysCapEnabled",
            OLD-CISCO-SYS-MIB                     "writeMem",
            OLD-CISCO-SYSTEM-MIB                  "writeMem",
            OSPF-MIB                              "ospfRouterId",
            POWER-ETHERNET-MIB                    "pethPsePortDetectionStatus",
            Q-BRIDGE-MIB                          "dot1qPvid",
            RSTP-MIB                              "dot1dStpPortOperEdgePort",
            SNMPv2-MIB                            "sysDescr"
        },
        munge               {
            ad_lag_ports                    sub { ... },
            at_paddr                        sub { ... },
            b_mac                           var{munge}{at_paddr},
            bs_mac                          var{munge}{at_paddr},
            c_inet_phys_addr                sub { ... },
            cdp_capabilities                sub { ... },
            cdp_domain                      sub { ... },
            cdp_ip                          sub { ... },
            cdp_platform                    var{munge}{cdp_domain},
            cdp_power                       sub { ... },
            cdp_ver                         var{munge}{cdp_domain},
            cisco_bgp_peer2_lasterror       sub { ... },
            cisco_bgp_peer2_localaddr       sub { ... },
            cps_i_mac                       var{munge}{at_paddr},
            e_type                          sub { ... },
            el_duplex                       sub { ... },
            fw_mac                          var{munge}{at_paddr},
            i6_n2p_phys_addr                var{munge}{at_paddr},
            i_mac                           var{munge}{at_paddr},
            i_octet_in64                    sub { ... },
            i_octet_out64                   var{munge}{i_octet_in64},
            i_pkts_bcast_in64               var{munge}{i_octet_in64},
            i_pkts_bcast_out64              var{munge}{i_octet_in64},
            i_pkts_multi_out64              var{munge}{i_octet_in64},
            i_pkts_mutli_in64               var{munge}{i_octet_in64},
            i_pkts_ucast_in64               var{munge}{i_octet_in64},
            i_pkts_ucast_out64              var{munge}{i_octet_in64},
            i_speed                         sub { ... },
            i_speed_high                    sub { ... },
            i_up                            sub { ... },
            ip                              var{munge}{cdp_ip},
            ip_n2p_phys_addr                var{munge}{at_paddr},
            lag_members                     sub { ... },
            lag_ports                       var{munge}{ad_lag_ports},
            layers                          sub { ... },
            lldp_lport_desc                 var{munge}{cdp_domain},
            lldp_lport_id                   var{munge}{cdp_domain},
            lldp_rem_asset                  var{munge}{cdp_domain},
            lldp_rem_cap_spt                var{munge}{cdp_capabilities},
            lldp_rem_fw_rev                 var{munge}{cdp_domain},
            lldp_rem_hw_rev                 var{munge}{cdp_domain},
            lldp_rem_media_cap              var{munge}{cdp_capabilities},
            lldp_rem_media_cap_spt          var{munge}{cdp_capabilities},
            lldp_rem_model                  var{munge}{cdp_domain},
            lldp_rem_port_desc              var{munge}{cdp_domain},
            lldp_rem_serial                 var{munge}{cdp_domain},
            lldp_rem_sw_rev                 var{munge}{cdp_domain},
            lldp_rem_sys_cap                var{munge}{cdp_capabilities},
            lldp_rem_sysdesc                var{munge}{cdp_domain},
            lldp_rem_sysname                var{munge}{cdp_domain},
            lldp_rem_vendor                 var{munge}{cdp_domain},
            lldp_sys_cap                    var{munge}{cdp_capabilities},
            lldp_sysdesc                    var{munge}{cdp_domain},
            lldp_sysname                    var{munge}{cdp_domain},
            mac                             var{munge}{at_paddr},
            n2p_paddr                       var{munge}{at_paddr},
            old_at_paddr                    var{munge}{at_paddr},
            pae_i_capabilities              sub { ... },
            pae_i_last_eapol_frame_source   var{munge}{at_paddr},
            qb_cv_egress                    var{munge}{ad_lag_ports},
            qb_cv_untagged                  var{munge}{ad_lag_ports},
            qb_v_egress                     var{munge}{ad_lag_ports},
            qb_v_fbdn_egress                var{munge}{ad_lag_ports},
            qb_v_untagged                   var{munge}{ad_lag_ports},
            stp_i_mac                       var{munge}{at_paddr},
            stp_i_root                      sub { ... },
            stp_p_bridge                    var{munge}{stp_i_root},
            stp_p_port                      sub { ... },
            stp_p_root                      var{munge}{stp_i_root},
            stp_root                        var{munge}{stp_i_root},
            stpx_mst_config_digest          sub { ... }
        },
        nosuch              1,
        sess                var{args}{Session},
        snmp_comm           "public",
        snmp_user           "initial",
        snmp_ver            2,
        store               {}
    }
}
[1] 2023-12-07 01:31:18  info show: finished at Thu Dec  7 01:31:18 2023
[1] 2023-12-07 01:31:18  info show: status done: Showed specify response from 10.136.8.137
@rc9000
Copy link
Member

rc9000 commented Dec 7, 2023

Hi! Cisco has some quirks with getting the Mac to Port tables, mostly because many platforms do not support the QBRIDGE MIB (which has these mappings per VLAN), but only the older BRIDGE MIB with some workarounds to make it VLAN-aware. These workarounds are community-based indexing (ie. adding the VLAN id to the SNMP community) for SNMPv2 and contexts (which need to be configured) for SNMPv3.

I'd go ahead and read all the items with "cisco" in the name on this page: https://github.com/netdisco/netdisco/wiki/Vendor-Tips, maybe something in there already can make it work for you.

But chances are that on SD Access there are even some new challenges. For deeper debugging, you can run the macsuck process on the command line with a lot of SNMP-related output enabled:

netdisco-do macsuck -d <ip> -DISQ

Then you see exactly what OIDs are tried, and what they return. Comparing to a non-SD Access device where you get the expected results is often helpful, as well as trying to get the data with manual snmpwalks, and then looking through the SNMP-Info code to see where it goes wrong.

I'll move this issue to the netdisco main repo.

@rc9000 rc9000 transferred this issue from netdisco/netdisco-docker Dec 7, 2023
@gonzalu
Copy link
Author

gonzalu commented Dec 7, 2023

rc9000 thank you for your fantastic response. I appreciate the support. Let me go do some reading. Also apologies for the incorrect forum.

Cheers!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: No status
Development

No branches or pull requests

3 participants