class NetCrawl::XDP

Attributes

mib[R]

Public Class Methods

new(host) click to toggle source
# File lib/netcrawl/method/xdp.rb, line 22
def initialize host
  @snmp = SNMP.new host
end
peers(host) click to toggle source

@param [String] host host to query @return [Array(NetCrawl::Peer)] neighbor information

# File lib/netcrawl/method/xdp.rb, line 9
def self.peers host
  new(host).poll
end

Public Instance Methods

poll() click to toggle source
# File lib/netcrawl/method/xdp.rb, line 13
def poll
  @mib = @snmp.hashwalk self.class::MIB
  make_peers
rescue SNMP::NoResponse
  []
end

Private Instance Methods

get_ip(ip, name) click to toggle source
# File lib/netcrawl/method/xdp.rb, line 26
def get_ip ip, name
  name = DNS.getip namemap(name)
  name or ip
end
get_oid_hash(peer_id) click to toggle source
# File lib/netcrawl/method/xdp.rb, line 31
def get_oid_hash peer_id
  oid_hash = {}
  self.class::OID.each do |name, oid|
    oid_hash[name] = @mib[oid, peer_id]
  end
  oid_hash
end