Commit Graph

95 Commits

Author SHA1 Message Date
Oliver Gorwits
dc1f76c1aa Feature to gather SNMP Walk, use as Pseudo Device, and Browse Objects
* fix anomalous name

* add gather worker

* fix encoding of binary storage

* store results back to job

* now parsing mbis report to translate

* fix the broken report parser

* rename gather to snapshot

* implement walk code copied from SNMP::Info

* can now bulkwalk and parse mibs report and store resolved walk in cache

* add func/glob aliasing broken

* better aliasing

* implement aliasing from globals and funcs

* fix regexp for matching netdisco-mibs report

* fake cache entry for all ND2 methods called, add comments

* also save to logs/snapshots/IP

* add doc for netdisco-do

* add is_pseudo column to device table

* support for loading cache for pseudo devices

* check for hrSystemUptime as well as sysUpTime for snmp connect

* display pseudo devices with yellow pill for name

* color all cells for layers for pseudo

* no need to b64 encode binary data in scalars as we b64 whole thing after

* tweaked uptime check

* store snapshot to database instead of Job

* expose snapshots in device details tab

* small ux improvements on snap download

* fixes for errors in subnet mask searching

* hide snapshot management for pseudo devices

* update to use new netdisco-mibs object cache

* update for new format oids file

* start of work on loading walk into db for browsing

* store values and meta

* add auto increment col and oid index to browser

* start web plugin for browser

* add virtual search for oid children

* have all oid in separte table (60 seconds load on my laptop)

* rename table and add relation

* store oid as int array

* fix sql for children

* make jstree start working

* working very slow tree expand

* fix to work when first displaying tree

* store both oid and oid_parts

* simplify SQL to speed up (more complicated perl)

* fix sql bug, add better index, prettify tree

* render the snmp node detail

* add node template, make scrollable, pretty print data values (insecure)

* store munge hint

* some dubious code to munge the data

* make sure to filter by IP on device_browser

* make safer the rendering of value data (but need to come back to key ordering)

* fix sorting on object values

* limit the opening of child nodes to keep response good and unclutter

* factor out the munge and make safer

* reject unknown mungers

* show the munger and option (not working) to change

* additional js for munge select

* complete custom munge

* change so that saving to database is only at CLI and on request

* hide snmp tab if no browser rows in the db

* add helpful message when no browser rows for the device

* stub handler for search and add recurse control

* working search

* minor ui fixes

* implement typeahead for leaf search

* limit rows in typeahead

* make sure device_browser is visited in delete and renumber

* add requirements for this branch

* update manifest

* make sure node search and typeahead are restricted to current device only
2021-11-06 07:47:29 +00:00
Oliver Gorwits
202d02a64a #827 add ignore_interface_types setting 2021-10-12 13:21:07 +01:00
Oliver Gorwits
854f19d49e #816 skip duplicate bssid on ports on wireless discovery 2021-09-26 08:27:46 +01:00
Oliver Gorwits
2498d9766b #800 gather and report SNMP Chassis ID http://oid-info.com/cgi-bin/display?oid=1.3.6.1.4.1.9.3.6.3&a=display 2021-08-14 13:28:13 +01:00
nick n
83a946d36e replace unicode nonbreaking space with ascii space (#794) 2021-06-23 22:00:33 +01:00
Christian Ramseyer
3f3de34f51 Allow <"> in remote_port (#782)
Makes the remote_port info work better with Nokia TiMOS devices.
2021-04-21 13:09:39 +02:00
Oliver Gorwits
28349eb489 add macsuck and arpnip hooks, add debug on hook queue 2020-12-29 18:15:58 +00:00
Oliver Gorwits
669eec46db Implement Hooks per #726 2020-12-23 11:18:38 +00:00
Oliver Gorwits
2b72233738 release 2.046004 2020-10-17 14:28:53 +01:00
Oliver Gorwits
4cd0c3eef9 #747 handle missing snmpEngineID 2020-10-17 12:54:41 +01:00
Oliver Gorwits
a146f53d67 #744 remove whitespace from serial numbers 2020-09-22 18:31:14 +01:00
Oliver Gorwits
650c419dc7 error out on discover failing to get good interfaces from SNMP 2020-07-03 09:32:58 +01:00
Oliver Gorwits
7e51fe2295 try to safeguard some snmp leaf gather failures 2020-07-01 21:21:09 +01:00
Oliver Gorwits
dc87a50076 #728 store SNMP Engine ID 2020-06-29 14:38:51 +01:00
Oliver Gorwits
83de59fcc0 #729 Discovery partially fails on invalid indexes 2020-06-29 14:05:44 +01:00
Christian Ramseyer
dcb45e4cad Fix previous commit
* revert unwanted commit of bogus Web/Plugin/Device/Modules.pm
 * commit actual fix for #710
2020-04-25 17:32:01 +02:00
Oliver Gorwits
4f57a4d30a rename ports column in device table to be num_ports 2020-04-18 16:50:49 +01:00
Oliver Gorwits
f7f2d2088b #81 avoid DEPRECATED single warning from DBIC 2019-12-22 09:07:12 +00:00
Oliver Gorwits
7f65d6afdc fix file endling 2019-09-23 14:00:28 +01:00
Christian Ramseyer
8ffdff3bbc Add speed_admin to device ports tab (#650) (#653)
* Add speed_admin to device ports tab (#650)

* move from device_port_properties to device_port table, and tidy up
2019-09-23 13:58:26 +01:00
Christian Ramseyer
26960bdd34 Fix potential crash in Discover/Properties::_get_ipv6_aliases
* On e.g. Cisco N9K, ipv6 objects can be returned undef which crashes the ip alias discovery with `Can't use an undefined value as a HASH reference at .../Discover/Properties.pm line 346.`
 * Discovery continues but leaves device_ip empty, which in turn makes device->neighbor non-functional
 * Fixed by adding various `$snmp->x || {}` safeguards
2019-09-20 13:52:34 +02:00
Christian Ramseyer
8edbd515e7 Store i_speed_admin (#650) 2019-09-19 14:11:04 +02:00
pyro3d
73e9f0bf0d Add DOCSIS/Cable Modem Discovery (#646)
* Add DOCSIS/Cable Modem Discovery
2019-09-18 16:19:18 -07:00
nick n
d31cae99bc typo 2019-08-17 10:32:13 +02:00
Oliver Gorwits
2c138a5690 #581 skip storing and displaying fabricated vlan 0 2019-05-30 06:58:34 +01:00
Oliver Gorwits
731eb765b1 fix strange interaction between CORE::sort and List::MoreUtils::uniq 2019-04-03 14:34:09 +01:00
Oliver Gorwits
db71fffe54 refactor to try device port vlan update again 2019-04-02 15:31:20 +01:00
Oliver Gorwits
223c616cb0 better var names and change logic to skip port 2019-04-01 23:15:44 +01:00
Oliver Gorwits
b22c32a578 better sql update, fixed worker return, better logic on vlans 2019-04-01 22:36:35 +01:00
Oliver Gorwits
a6e7943c03 #528 record egress untagged vlans in device_port_vlan table 2019-04-01 14:38:27 +01:00
Oliver Gorwits
8c974fd256 #549 clean manual topology after device ports change 2019-04-01 13:23:51 +01:00
pyro3d
7be03b6882 Add IS-IS Support (#548)
* Add IS-IS Support

* closing brace for unless needs to be moved i think

* Remove isis_routers from Routed.pm

* bump snmp::info to 3.66

which is needed for isis support.
2019-03-25 14:42:58 +00:00
Oliver Gorwits
0c98318a45 #526 fix discover syntax bug 2019-03-04 09:57:18 +00:00
Oliver Gorwits
b83e614c85 make discover_{phones,waps} work with LLDP capabilities as well 2019-03-03 13:00:43 +00:00
Oliver Gorwits
189d234b55 check discover_no_type and friends earlier on in neighbors list build 2019-03-03 12:49:17 +00:00
Oliver Gorwits
2bae91f1b6 rename match_devicetype() to match_to_setting() 2019-03-03 12:01:34 +00:00
Oliver Gorwits
1265bc8470 #520 catch slave ports defined without a master 2019-03-02 14:52:21 +00:00
ram
c2600ac550 Change location of ifindex to DevicePortProperties
* instead of DevicePort
* as requested by Oliver in PR #513 review
2019-02-23 15:26:38 +01:00
ram
24a7e80470 PR for #510 - store ifindex in device_port 2019-02-23 15:26:38 +01:00
nick n
98a5e2c407 #479 part 2, use debug logging instead of info (#480)
#479 part 2, use debug instead of info logging.

2 whitespace cleanups also included, as well as rewording props -> properties like in the rest of portproperties.pm
2019-01-08 01:50:21 +01:00
Oliver Gorwits
7f1074ff84 #479 attempt better cache control for device ports 2019-01-07 22:47:13 +00:00
Oliver Gorwits
7811c32147 fix cached ports list which needs to be complete rows for Neighbors.pm to work 2019-01-03 22:56:17 +00:00
Oliver Gorwits
ccb0f0c78a #475 fix discover plugins do not respect ignore* config 2019-01-02 22:36:59 +00:00
Oliver Gorwits
3769b7b66b fix to the fix for ospf_routers discovery 2019-01-02 20:56:41 +00:00
Oliver Gorwits
6a986783e4 fix to the fix for ospf_routers discovery 2019-01-02 20:54:50 +00:00
Oliver Gorwits
505b7b5625 #471 fix bug in checking if there are OSPF router IDs to poll 2019-01-02 20:21:34 +00:00
Oliver Gorwits
b445d237e4 #471 OSPF Neighbor Discovery by router ID 2018-12-28 17:32:40 +00:00
nick n
8aed736925 ignore notpresent interfaces, with type filtering config item (set to [] to not filter). work done by postilion/nic bernstein, filter by me. also includes trailing space fix by nic. (#464) 2018-12-28 16:08:40 +00:00
Oliver Gorwits
13d5f04465 #419 "neigh - discrepancy in IP" due to differences in IPv6 formatting 2018-06-08 10:56:16 +01:00
Oliver Gorwits
0d8cd3e764 #411 store_modules: false is ignored 2018-05-05 16:12:43 +01:00