NetBox is an infrastructure resource modeling (IRM) tool designed to empower network automation, used by thousands of organizations around the world. Initially conceived by the network engineering team at DigitalOcean, NetBox was developed specifically to address the needs of network and infrastructure engineers. It is intended to function as a domain-specific source of truth for network operations.
Myriad infrastructure components can be modeled in NetBox, including:
- Hierarchical regions, site groups, sites, and locations
- Racks, devices, and device components
- Cables and wireless connections
- Power distribution
- Data circuits and providers
- Virtual machines and clusters
- IP prefixes, ranges, and addresses
- VRFs and route targets
- FHRP groups (VRRP, HSRP, etc.)
- AS numbers
- VLANs and scoped VLAN groups
- Organizational tenants and contacts
In addition to its extensive built-in models and functionality, NetBox can be customized and extended through the use of:
- Custom fields
- Custom links
- Configuration contexts
- Custom model validation rules
- Reports
- Custom scripts
- Export templates
- Conditional webhooks
- Plugins
- Single sign-on (SSO) authentication
- NAPALM integration
- Detailed change logging
NetBox also features a complete REST API as well as a GraphQL API for easily integrating with other tools and systems.
NetBox runs as a web application atop the Django
Python framework with a PostgreSQL database. For a
complete list of requirements, see requirements.txt
. The code is available on GitHub.
The complete documentation for NetBox can be found at docs.netbox.dev. A public demo instance is available at https://demo.netbox.dev.
Discussion
- GitHub Discussions - Discussion forum hosted by GitHub; ideal for Q&A and other structured discussions
- Slack - Real-time chat hosted by the NetDev Community; best for unstructured discussion or just hanging out
Installation
Please see the documentation for
instructions on installing NetBox. To upgrade NetBox, please download the
latest release and
run upgrade.sh
.
Providing Feedback
The best platform for general feedback, assistance, and other discussion is our GitHub discussions. To report a bug or request a specific feature, please open a GitHub issue using the appropriate template.
If you are interested in contributing to the development of NetBox, please read our contributing guide prior to beginning any work.
Screenshots
Related projects
Please see our wiki for a list of relevant community projects.