I am managing a small college network which of course has grown in size and complexity over a long period of time. I've only been here 16 months, and am constantly having to track down network details. My predecessors have set this up on paper, in 3-ring binders in the various IDF closets, with a motley collection of spreadsheets and notes that got printed out to go in those binders. When things changed those spreadsheets/notes were occasionally updated and new pages printed out and replaced old pages. A lot of the spreadsheets and notes disappeared when they departed, and what I have left are floor plans (mostly correct) and hard copies. To solve problems and figure out what's going on, I can do a few things. I log into switches and look at port configurations. I go to closets and I follow patch cables where they come out of switches and go into patch panel jacks. I can look at my floor plans and see where the jack is at the other end. Most of that will be documented correctly on some hard copy somewhere. But some is completely undocumented, and -- much worse -- some is documented but the documentation is wrong because it never got updated when something changed. So most of the time I just go and follow cables for myself and don't even waste the time to look at the documentation.
This must be a solved problem -- there are many networks out there much more complex than mine, and y'all have not collapsed into total chaos so you must have
tools, right?!?
I'm imagining something where I could dump port data out of switches and load it into a database. (I'm reasonably experienced in using grep & perl to do those sorts of things, and could learn python if I had a project.) Maybe something attached to an asset management tool which keeps track of physical equipment? It would need to understand physical locations -- maps and floor plans, and probably means that it can record something as latitude/longitude/elevation or at least something that can map to those numbers. The one kind of data that can only come from user entry is what's at the two ends of a patch cable, so I'm imagining some little app that runs on a cell phone and when you plug slot/port x/y into jack n you then spend 10 seconds recording that on your phone when you are standing in the closet. It needs to be something easy and fast so that it gets done every time something gets moved.
So what do you use? What would you choose if you didn't have anything and could start from scratch?
(Long ago in a previous job we used an ancient version of OCSinventory, and I got pretty good at scraping that database to solve similar problems. I have a conceptual idea of the information, just no knowledge of current tools to manage and organize this information.)