For some time now I’ve been using BookStackApp to keep track of things in my homelab.

This works very well for the vast majority of things and is fantastic for documentation. However, it does lack in one area and that is management of IP Addresses.

I ended up in a familiar place where instead of a large Excel sheet I had a large table in BookStackApp to keep track of my IP Addressing.

After looking into the various tools available to me I eventually settled on Netbox. This was originally conceived by the team at DigitalOcean and while overkill for a homelab environment is a fanstastic tool and does the job brilliantly.

(Images taken from the Netbox Github)

Netbox Screenshot

Installation is well documented and very simple. I simply spun up another LXC container on my Proxmox cluster to house it and it was up and running in minutes.

In addition to IP Address Management (IPAM), Netbox also does DataCentre Infrastructure Management (DCIM) which has been very useful. This allows me to document things like the link-aggregation configuration for a server, virtual interfaces and the BMC/Out of Band IP addressing and keep it tied together.

It can also produce pretty rack layout diagrams which would be very useful when managing rackspace in datacentres:

Netbox Screenshot

I don’t need the cable management at the kind of scale I’m working with but none of the features are enforced and you only need to use what you want.

So far, just for my homelab I have quite a lot documented, mostly in the IPAM section:

  • 3 Aggregates
  • 7 Prefixes
  • 320 IP Addresses
  • 7 Vlans

One of the features I like the most is how Netbox shows where you have IP space available under a prefix and will offer to let you create the next available address.

Netbox Screenshot

In my lab the vast majority of subnets so far are /24 (mostly from being lazy) but not needing to think too much or open a subnet calculator is very useful, especially in environments with a lot of subnetting.

At some stage I am very likely to colocate some kit at which point having multiple sites will certainly be useful. I don’t need to go very far to check how things are cabled at present but I can certainly see how having things such as cables documented would be useful for a remote site, especially when various grades of fibre/sas/infiniband/dac and all the other types of cabling come into play.

While I now have the vast majority of my lab documented between Netbox and BookStackApp I’m far from perfect and have plenty of documentation to add and some to go back to and correct due to changes and/or updates.

As I’ve now written two blog posts in a month I’d like to keep up the momentum and I hope this will extend to my internal documentation…