An Ansible playbook is about to configure forty access switches, and it needs to know, per switch, the management IP, the VLAN IDs, which uplink goes where, and which prefix each user VLAN routes. If those answers live in three spreadsheets and a Visio file, the playbook is only as right as whoever last edited them. NetBox was built to be the one place the playbook asks — and that framing tells you both why it is so good and where its limits sit.
What NetBox is
NetBox is a web application for modelling networks: IP address management (IPAM) and data-centre infrastructure management (DCIM) in one relational model. The community edition is open source under the Apache 2.0 licence and maintained by NetBox Labs, which also sells a hosted NetBox Cloud and a self-hosted NetBox Enterprise. At the time of writing the current community release is v4.7.1 (September 2026).
A self-hosted install is a Django application: Python 3.12, 3.13, or 3.14; PostgreSQL 15 or newer; Redis 6.0 or newer; gunicorn serving the app behind nginx or Apache. The official documentation is written against Ubuntu 24.04. Many teams instead run the community Docker Compose project, which wires the same components together.
On the IPAM side you get RIRs and aggregates, prefixes with roles and statuses, IP ranges, individual addresses, VRFs with route targets, VLAN groups and VLANs, and ASNs. Every object can carry tags, custom fields, tenancy, and a change log. On the DCIM side sit sites, racks, devices, interfaces, cables, power, and circuits — and addresses attach to specific interfaces, which is what makes NetBox useful to automation.
The reconciliation question
Here is the honest part for anyone arriving from a scanner-driven tool: NetBox does not ping your network. Out of the box it has no scheduled discovery, no “last seen” column fed by ICMP, and no alert when an unknown host appears in 10.30.0.0/24. It records intent, and assumes something else will compare intent with reality.
That something is usually one of:
- Custom scripts and reports inside NetBox (Python classes that run on demand or on a schedule) which, for example, query your DHCP server or a scanner’s CSV and flag mismatches;
- The REST and GraphQL APIs, so an external job can pull prefixes, sweep them, and write back a status or tag;
- NetBox Labs’ own discovery product, sold alongside the commercial editions (check the vendor’s page for what is included in which plan);
- Plugins from the community ecosystem, whose quality and maintenance vary.
A simple pattern many admins start with is a nightly job that reads all active prefixes from the API, runs a sweep against each, and sets a custom field:
GET /api/ipam/prefixes/?status=active&limit=0
Authorization: Token <api-token>
This works, but it is your code to own. Teams that expect the IPAM to tell them, unprompted, that a record is stale will find NetBox quiet by default.
Where it’s strong
- Modelling depth. Interfaces, cables, VRFs, VLAN groups scoped to sites, and tenancy are genuinely rich. If the question is “which switch port does this address live on”, NetBox can answer it — assuming someone entered it.
- Automation fit. The API is complete and consistent, and the data model maps cleanly onto Ansible inventories, Nornir, and Terraform providers.
- Change history. Every object edit is logged with user and diff, which helps when two people disagree about who moved a prefix.
- Ecosystem and longevity. A large user base, active releases, and a commercial company behind it reduce the risk of the project stalling.
Where it falls short / who should skip it
If your immediate pain is “we keep assigning addresses that are already in use”, NetBox alone will not stop it; you need discovery wired in. phpIPAM or GestióIP will surface conflicts sooner with less effort.
The model is also demanding. Entering devices, interfaces, and cables for a mid-size network is weeks of work, and a half-populated NetBox is arguably worse than a spreadsheet because people trust it. A two-person IT team with a single office and one flat /23 is likely to find the ceremony heavier than the benefit.
NetBox does not manage DHCP scopes or DNS zones. It can hold DNS names on addresses, but pushing reservations to Windows DHCP or Kea is again integration work; tools such as Micetro or SolarWinds IPAM do that natively.
Upgrades across major versions require reading release notes carefully — plugins frequently pin specific NetBox versions, and a plugin that lags can hold your whole instance back.
Who it suits
Network teams moving toward automation, organisations with multiple sites or data centres, and MSPs using tenancy to separate customers. It rewards teams with at least one person comfortable in Python and PostgreSQL, or a budget for NetBox Cloud so someone else runs the stack.
Licensing and cost
The community edition is free under Apache 2.0. NetBox Cloud is offered in Starter, Professional, and Premium tiers, and NetBox Enterprise is self-hosted with vendor backing; at the time of writing NetBox Labs publishes no list prices for these and asks you to contact sales. A free sign-up path is advertised, but check the vendor’s current pricing page for what it includes.
How it compares
The most common head-to-head is covered in phpIPAM vs NetBox: phpIPAM scans and is quicker to adopt; NetBox models more and integrates better. For subnet planning before you enter anything, a calculator such as LanCalculator or our guide on planning subnets for a new site fits upstream of NetBox. Wider options are in the IPAM software category and the subnet planning category.
Getting it safely
Obtain NetBox from the NetBox Labs site or the project’s GitHub repository, using a tagged release. Container users should take images from the publisher named in the project documentation, and verify tags rather than running latest in production. See where to get software for how we handle vendor links.
FAQ
Does NetBox discover devices or IP addresses automatically?
Not in the community edition by itself. Discovery comes from scripts, plugins, API jobs, or NetBox Labs’ commercial discovery offering.
Can NetBox replace phpIPAM?
For modelling, yes and then some. For “tell me what is actually answering”, only once you have added a discovery process.
What database does NetBox use?
PostgreSQL 15 or newer, plus Redis 6.0+ for caching and background tasks.
Is NetBox Cloud the same software?
It is NetBox operated by NetBox Labs as a hosted service, with vendor-added features depending on tier. Compare the tiers on the vendor’s pricing page before assuming parity with self-hosted community NetBox.
