Automatic layout of manual network mapping
- by Paul
So I have a small business network mainly consisting of two routed layer-2 domains with a total of ca. 100 devices spread over ca. 2000m² production and office spaces. Typical problems to solve using the graph would be: Over what (cable) path is a PC connected to the server? Where to expect devices connected to a switch port?
I want to generate a graph of the physical network topology: Nodes are endpoint devices, switch ports, wall outlets, patch panel ports etc. Edges are cable connections. Ideally, grouping edges (or segments) that pass through the same bundle could be grouped.
Also I would like to augment the graph data with automatically gathered data (monitoring state, MAC address, Switch port <- MAC entries to build up parts of the map).
At the moment I use graphviz for this inside a Confluence wiki like that:
layout = "neato"
overlap = scale
subgraph {
rankdir = "TB"
subgraph cluster_r1pf1 {
r1pf1 [label="{ Rack 1 PF 1 | { <p1>P1 | <p2>P2 | <p3>P3} }", shape=record]
}
subgraph cluster_switch1 {
switch1 [label="{ Rack 1 Switch 1 | { <p1> P1 | <p1> P1 | <p3> P3} }", shape=record]
}
r1pf1:p1 -> switch1:p1
(obviously there are dozens of entries omitted here)
Problem is: I have a hard time to influence graphviz to generate a bearable layout. Edges overlap so bad that you can't read the diagram anymore.
The question is: What other tools (be it interactive like Visio, Omnigraffle or I/O-oriented like graphviz) exist that would allow an easily versionable (as in: Operates on a text file) documentation that is both machine and human readable and editable?
Why not OmniGraffle or Visio? Well we don't have Macs and Visio is not available at the moment. To buy it I would need good arguments. Automation would be one of that. But last time I looked, versioning Visio files or even thinking about automatic handling was a nightmare.
Related:
Network Mapping Tools basically asks the same with a focus on generating the complete graph automatically (but without the need to document cabling connections)
Recommendations for automatic computer inventory brings up links of "all-in-one" solutions