SNMP::Info::EDP(3pm)

πŸ¦‹ SNMP::Info::EDP β€” the glow-up edition

okay bestie, welcome to SNMP::Info::EDP, which is a SNMP::Info interface to the Extreme Discovery Protocol (EDP) πŸ’–. (Yeah the page is technically SNMP::Info::EDP(3pm), but we don't gatekeep manual names here.) Your girl is Eric Miller β€” take a bow, icon πŸ‘‘.


✨ AUTHOR ✨

Eric Miller 🫢


🌸 SYNOPSIS 🌸

fr fr here's the vibe, copy-paste away:

my $edp = new SNMP::Info (
                            AutoSpecify => 1,
                            Debug       => 1,
                            DestHost    => 'router',
                            Community   => 'public',
                            Version     => 2
                          );

my $class = $edp->class();
print " Using device sub class : $class\n";

$hasedp   = $edp->hasEDP() ? 'yes' : 'no';

# Print out a map of device ports with EDP neighbors:
my $interfaces   = $edp->interfaces();
my $edp_if       = $edp->edp_if();
my $edp_ip       = $edp->edp_ip();
my $edp_port     = $edp->edp_port();

foreach my $edp_key (keys %$edp_ip){
   my $iid           = $edp_if->{$edp_key};
   my $port          = $interfaces->{$iid};
   my $neighbor      = $edp_ip->{$edp_key};
   my $neighbor_port = $edp_port->{$edp_key};
   print "Port : $port connected to $neighbor / $neighbor_port\n";
}

like, it literally prints who your ports are besties with πŸ«‚βœ¨


πŸ’œ DESCRIPTION πŸ’œ

So SNMP::Info::EDP is a subclass of SNMP::Info, and it hands you an object oriented interface to all the EDP info, pulled straight over SNMP. it's giving ✨research✨

EDP itself? it's a Layer 2 protocol, meaning a network device gets to advertise its identity and capabilities on the local network, which in turn gives you topology information. iconic behavior honestly 🌈. it's the local-network group chat and everyone's posting their whole personality.

BIG CAVEAT, NO CAP: create or use a device subclass that inherits this class. Do not use it directly. this is a base class, not a main character you can just summon yourself πŸ’€

πŸŽ€ Inherited Classes πŸŽ€

None. nada. zero. she stands alone πŸ‘‘

🧚 Required MIBs 🧚

  • EXTREME-EDP-MIB

⭐ GLOBALS ⭐

these are methods that return scalar values from SNMP. one value, one vibe πŸ’…

  • $edp->hasEDP() β€” is EDP actually active on this device? the vibe check of the whole module πŸ”₯

🌟 TABLE METHODS 🌟

these are methods that return tables of information, formatted as a reference to a hash. lots of data, all at once, a whole feast πŸ“

  • $edp->edp_id() β€” returns the string value used to identify the chassis component associated with the remote system.

("extremeEdpNeighborName")

  • $edp->edp_if() β€” returns the mapping to the SNMP Interface Table. this is the one that connects everything, the friend that knows everyone 🫢
  • $edp->edp_ip() β€” returns remote IPv4 address.
  • $edp->edp_port() β€” returns remote port ID
  • $edp->edp_ver() β€” returns the operating system version of the remote system.

Heads up bestie: nulls are removed before the value is returned. cleaning up before company comes over, we love to see it ✨

("extremeEdpNeighborSoftwareVersion")


that's the whole page, periodt πŸ’… no options list to scroll through, no 40 flags, just vibes, tables, and two MIB references.

andddd that's a wrap! brought to you by perl v5.40.1, dated 2026-02-28, filed under SNMP::Info::EDP(3pm) πŸŽ€ stay slaying, bestie πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from