Skip to main content

Netbox Routing Protocols

PyPI Python NetBox CI License: Apache 2.0

A plugin for tracking all kinds of routing information

The Routing tab of a device, with its static routes, OSPF instances and IS-IS instances

Every routing protocol of a device in one Routing tab: static routes, OSPF, IS-IS, BGP and EIGRP.

About this project

This plugin was created by Daniel Sheppard (dansheps), who is credited as the original author and a historical contributor. The package is now maintained by Arturo (baldoarturo). This repository is a fork that is developed with the help of AI, using Claude Code to speed up development: Claude writes the code, tests and documentation, and the maintainer sets the direction and reviews and approves the changes.

Documentation

The documentation for operators and users (every protocol and feature, with the RFC it comes from) is in docs/. Start with Using the plugin; the RFC index goes from an RFC to the features that use it, and Development explains how to work on the docs.

Features

Ready

  • Routing objects
  • Route policies (match and set, jump to another policy, final deny, search tool; used by OSPF, IS-IS and EIGRP)
  • Static routes (special next hops, interface, route leaking)
  • OSPF, versions 2 (IPv4) and 3 (IPv6) (instances, areas, interfaces, authentication with key rollover, redistribution, virtual links, ranges, neighbors, traffic engineering, segment routing, fast reroute)
  • IS-IS (instances, levels, interfaces, authentication, redistribution, route leaking, segment routing, Flex-Algo, SRv6)
  • BGP (instances, address families, peer groups, peers, listen ranges, redistribution, originated networks and aggregates, route policy; RFC 4271 and its extensions)
  • BFD profiles (timers, Simple Password and Keyed MD5 authentication, single-hop and multihop mode, echo interval; RFC 5880, 5881, 5882, 5883; used by BGP, OSPF and IS-IS)
  • EIGRP (named mode only; routers, address families with autonomous system and K values, networks, interfaces with timers, authentication, stub, passive default and bandwidth, summaries, redistribution; RFC 7868)

Work in progress

Not production ready; the model and the migrations can still change. Each one has a tracking issue.

Requirements

  • NetBox 4.7+
  • Python 3.12+

Compatibility Matrix

NetBox Version Plugin Version
3.2.x 0.1.x
4.1.x 0.2.x
4.2.x 0.3.0
4.3.x 0.3.1
4.4.x 0.3.1
4.5.x 0.4.x
4.6.x 0.5.0
4.7.x 1.0.0 and later

Installation

Follows the standard NetBox plugin installation procedure.

The package is published on PyPI as netbox-routing-plugin. You can also install the development version straight from GitHub.

Bare metal

The steps below assume NetBox lives in /opt/netbox; adjust paths to match your environment.

  1. Install the package into the NetBox virtual environment:

    source /opt/netbox/venv/bin/activate
    pip install netbox-routing-plugin
    

    To install the development version from GitHub instead, use pip install git+https://github.com/baldoarturo/netbox-routing-protocols.git.

  2. Add it to local_requirements.txt so it is reinstalled whenever NetBox is upgraded:

    echo "git+https://github.com/baldoarturo/netbox-routing-protocols.git" >> /opt/netbox/local_requirements.txt
    
  3. Enable the plugin in configuration.py:

    PLUGINS = [
        'netbox_routing_plugin',
    ]
    
  4. Apply the database migrations and collect static files:

    python3 /opt/netbox/netbox/manage.py migrate
    python3 /opt/netbox/netbox/manage.py collectstatic --no-input
    
  5. Restart NetBox (e.g. sudo systemctl restart netbox netbox-rq).

Docker

Plugins in Docker are installed by building a custom image, not with pip inside a running container. Follow the netbox-docker plugin instructions and use the same git URL as the package, and netbox_routing_plugin as the plugin name in PLUGINS. Migrations and collectstatic run automatically when the container starts.

Configuration

None

Usage

See Using the plugin: the menu, how the objects relate to each other, bulk import and validation.

Additional Notes

TBD

Contribute

Contributions are always welcome! Please open an issue first before contributing as the scope is going to be kept intentionally narrow

Install the pre-commit hooks once in your clone (pip install pre-commit, then pre-commit install): they run Ruff and Black on every commit with the same configuration as the CI, which runs pre-commit run --all-files on every pull request. See dev/README.md to run NetBox and the tests.

Metadata

Release files for netbox-routing-plugin 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for netbox-routing-plugin 1.0.0
File Size Uploaded Provenance Actions
netbox_routing_plugin-1.0.0.tar.gz 250.4 kB With provenance Details for netbox_routing_plugin-1.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for netbox-routing-plugin 1.0.0
File Interpreter ABI Platform Actions
netbox_routing_plugin-1.0.0-py3-none-any.whl Python 3 none any Details for netbox_routing_plugin-1.0.0-py3-none-any.whl

Total release size: 596.2 kB

Release files / netbox_routing_plugin-1.0.0.tar.gz

Download URL netbox_routing_plugin-1.0.0.tar.gz
Size 250.4 kB
Tags Source
SHA-256 checksum
How to use checksums
cb0dbedbb98b7964582d2e29ccff7d19078984f34ee191f9f271f516b9cd6687
BLAKE2b-256 checksum
How to use checksums
24e92b4405677aa5f5dab2091942feda85c1e63d464764d7627568d450eb2fea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / netbox_routing_plugin-1.0.0-py3-none-any.whl

Download URL netbox_routing_plugin-1.0.0-py3-none-any.whl
Size 345.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
94f38febdc1308cf72ab0e32d9b06be30647d96c0419d6cf9a915b6f76bd4e62
BLAKE2b-256 checksum
How to use checksums
613b01487c67bfcdc557b50a548ab119ccde57456f30e80208346a9b1c2410de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Security for netbox-routing-plugin 1.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for netbox_routing_plugin-1.0.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page