Skip to main content

An NetBox plugin to create Topology maps

Project description

Netbox Topology Views Plugin

Version Downloads

Create topology views/maps from your devices in netbox. The connections are based on the cables you created in netbox. Support to filter on name, site, tag and device role.

Preview

preview image

Install

The plugin is available as a Python package and can be installed with pip.

Run pip install netbox-topology-views in your virtual env.

To ensure NetBox Topology Views plugin is automatically re-installed during future upgrades, create a file named local_requirements.txt (if not already existing) in the NetBox root directory (alongside requirements.txt) and list the netbox-topology-views package:

# echo netbox-topology-views >> local_requirements.txt

Once installed, the plugin needs to be enabled in your configuration.py

# In your configuration.py
PLUGINS = ["netbox_topology_views"]

First run source /opt/netbox/venv/bin/activate to enter the Python virtual environment.

Then run

cd /opt/netbox/netbox
pip3 install netbox-topology-views
python3 manage.py collectstatic --no-input

Versions

netbox version netbox-topology-views version
>= 3.3.0 >= v3.0.0
>= 3.2.0 >= v1.1.0
>= 3.1.8 >= v1.0.0
>= 2.11.1 >= v0.5.3
>= 2.10.0 >= v0.5.0
< 2.10.0 =< v0.4.10

Custom field: coordinates

There is also support for custom fields.

If you create a custom field "coordinates" for "dcim > device" and "Circuits > circuit" with type "text" and name "coordinates" you will see the same layout every time.

The coordinates can then be provided as: "X;Y".

Please read the "Configure" chapter to set the allow_coordinates_saving option to True. You might also set the always_save_coordinates option to True.

Configure

If you want to override the default values configure the PLUGINS_CONFIG in your netbox configuration.py.

Example:

PLUGINS_CONFIG = {
    'netbox_topology_views': {
        'device_img': ['router','switch', 'firewall'],
        'preselected_device_roles': ['Router', 'Firewall']
    }
}
Setting Default value Description
device_img ['access-switch', 'core-switch', 'firewall', 'router', 'distribution-switch', 'backup', 'storage,wan-network', 'wireless-ap', 'server', 'internal-switch', 'isp-cpe-material', 'non-racked-devices', 'power-units'] The slug of the device roles that you have a image for.
preselected_device_roles ['Firewall', 'Router', 'Distribution Switch', 'Core Switch', 'Internal Switch', 'Access Switch', 'Server', 'Storage', 'Backup', 'Wireless AP'] The full name of the device roles you want to pre select in the global view. Note that this is case sensitive
allow_coordinates_saving False (bool) Set to true if you use the custom coordinates fields and want to save the coordinates
always_save_coordinates False (bool) Set if you want to enable the option to save coordinates by default
ignore_cable_type [] The cable types that you want to ignore in the views
preselected_tags '[]' The name of tags you want to preload
draw_default_layout False (bool) Set to True if you want to load draw the topology on the initial load (when you go to the topology plugin page)

Custom Images

You upload you own custom images to the netbox static dir (static/netbox_topology_views/img/). These images need to be named after de device role slug and have the .png format/extension. If you add your own image you also need to add the slug to the device_img setting.

Use

Go to the plugins tab in the navbar and click topology or go to $NETBOX_URL/plugins/netbox_topology_views/ to view your topologies

Update

Run pip install netbox-topology-views --upgrade in your venv.

Run python3 manage.py collectstatic --no-input

Clear you browser cache.

Permissions

To view /plugins/topology-views/ you need the following permissions:

  • dcim | device | can view device
  • dcim | site | can view site
  • extras | tag | can view tag
  • dcim | device role | can view device role

Icons info

Power icons created by Freepik - Flaticon.

Power icons created by Flat Icons - Flaticon

Provider icons created by Good Ware - Flaticon

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

netbox-topology-views-3.0.1.tar.gz (344.6 kB view details)

Uploaded Source

Built Distribution

netbox_topology_views-3.0.1-py3-none-any.whl (348.4 kB view details)

Uploaded Python 3

File details

Details for the file netbox-topology-views-3.0.1.tar.gz.

File metadata

  • Download URL: netbox-topology-views-3.0.1.tar.gz
  • Upload date:
  • Size: 344.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.14

File hashes

Hashes for netbox-topology-views-3.0.1.tar.gz
Algorithm Hash digest
SHA256 d9f3ad674e6edd0b0629134fb11ffa76728f6a52659a8ea782d5c9e77561a179
MD5 589a0a80b4e9d449a2ed44cc406e15cd
BLAKE2b-256 ed5fff564eefe9113e79dc69bbd37b74ce624208423bb7f842f81d4692995174

See more details on using hashes here.

File details

Details for the file netbox_topology_views-3.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for netbox_topology_views-3.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b32a3d1f838a8e9c3b3ba149178c86656402589c992edf145fd15f7f628234b9
MD5 cb417914189825eb58a590726c0902ed
BLAKE2b-256 8c23ef98eb4dbe69c35afce13d210ae82a2edc33ee48c51a1d77aec6c677eb18

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page