Manage Regional Internet Registry (RIR) resources directly from within NetBox.
- Sync RIR resources -- import organizations, contacts (POCs), networks, and ASNs from your RIR into NetBox
- Auto-link to IPAM -- synced networks are linked to existing NetBox Aggregates, Prefixes, and ASNs
- Write operations -- reassign, reallocate, remove, and delete networks directly through the plugin
- Ticket tracking -- monitor RIR tickets and their status
- Per-user API keys -- encrypted at rest
- Scheduled sync -- daily background jobs keep RIR data current
- Pluggable backend architecture -- ARIN supported today; PRs welcome for RIPE, APNIC, LACNIC, AFRINIC
- Full REST API -- every resource and action exposed under
/api/plugins/rir-manager/ - Sync logging -- full audit trail of every sync operation
| Plugin version | NetBox version | Python |
|---|---|---|
| 0.3.x | 4.5 | 3.12-3.14 |
pip install netbox-rir-managerpip install git+https://github.com/jsenecal/netbox-rir-manager.gitIn your NetBox configuration.py:
PLUGINS = [
"netbox_rir_manager",
]
PLUGINS_CONFIG = {
"netbox_rir_manager": {
"top_level_menu": True,
"sync_interval_hours": 24,
"auto_link_networks": True,
"enabled_backends": ["ARIN"],
"encryption_key": "", # defaults to NetBox SECRET_KEY
"api_retry_count": 3,
"api_retry_backoff": 2,
},
}Then run migrations:
cd /opt/netbox/netbox
python manage.py migrateWarning: the
encryption_key(or NetBox'sSECRET_KEYwhen empty) is used to encrypt stored API keys. Changing or losing it makes previously encrypted keys unrecoverable.
See Configuration -> Settings for the full reference.
Full documentation: jsenecal.github.io/netbox-rir-manager
PRs welcome -- especially for additional RIR backends (RIPE, APNIC, LACNIC, AFRINIC). The plugin uses a pluggable backend architecture; see netbox_rir_manager/backends/base.py for the abstract RIRBackend class.
Use conventional-commits PR titles (feat:, fix:, chore:, docs:, ...) -- release-drafter assembles release notes from them. Run make setup after cloning to install dev dependencies and the pre-commit hooks (including the AI-attribution-rejecting commit-msg hook).