Posts by Category

Announcements

Announcing the NetBox Advocates Program

1 minute read

Are you a NetBox power user? Maybe you’ve even built a plugin or custom script? Would you like to be more involved in feature development and roadmap planning for NetBox? To better enable community members like you to have a direct impact on NetBox’s development, today we’re launching the NetBox Advocates Program!

What does it mean to be a NetBox advocate?

  • We’ll occasionally reach out (via email) for feedback on specific new or planned NetBox features. For example, we may ask for feedback on the plugins development experience, or which of several potential new features you’d prefer to see first. This feedback will help guide NetBox’s long-term development.

  • You may be offered access to pre-release instances of NetBox or other tools for evaluation and feedback.

  • You’ll be able to leverage our community Sentry service for error reporting and correlation. We’ll proactively reach out to advocates who opt to enable this service regarding any new errors we detect. We may ask if you can assist with reproducing the error to help develop a fix, or point you to a potential fix.

  • Your organization’s logo will optionally be published in our list of advocates.

And this is just the beginning! We fully expect the importance of the advocates program to grow as the NetBox ecosystem continues to expand.

Register here to get started!


NetBox v3.2.3 Released

1 minute read

NetBox v3.2.3 is now available on GitHub!

Enhancements

  • #8805 - Add “mixed” option for device airflow indication
  • #8894 - Include full names when listing users
  • #8998 - Enable filtering racks & reservations by site group
  • #9122 - Introduce clearcache management command & clear cache during upgrade
  • #9221 - Add definition list support for Markdown
  • #9260 - Apply user preferences to tables under object detail views
  • #9278 - Linkify device types count under manufacturers list
  • #9280 - Allow adopting existing components when installing a module
  • #9314 - Add device and VM filters for FHRP group assignments
  • #9340 - Introduce support for error reporting via Sentry
  • #9343 - Add Ubiquiti SmartPower power outlet type

Bug Fixes

  • #9190 - Prevent exception when attempting to instantiate module components which already exist on the parent device
  • #9267 - Remove invalid entry in IP address role choices
  • #9296 - Improve Markdown link sanitization
  • #9306 - Include VC master interfaces when selecting a LAG/bridge for a VC member interface
  • #9311 - Permit creating contact assignment without a priority via the REST API
  • #9313 - Remove HTML code from CSV output of many-to-many relationships
  • #9330 - Add missing module_type field to REST API serializers for modular device component templates

NetBox v3.2.2 Released

1 minute read

NetBox v3.2.2 is now available on GitHub!

Enhancements

  • #9060 - Add device type filters for device bays, module bays, and inventory items
  • #9152 - Annotate related object type under custom field view
  • #9192 - Add Ubiquiti SmartPower connector type
  • #9214 - Linkify cluster counts in cluster type & group tables

Bug Fixes

  • #4264 - Treat 0th IP as unusable for IPv6 prefixes (excluding /127s)
  • #8941 - Fix dynamic dropdown behavior when browser is zoomed
  • #8959 - Prevent exception when refreshing scripts list (avoid race condition)
  • #9132 - Limit location options by selected site when creating a wireless link
  • #9133 - Upgrade script should require Python 3.8 or later
  • #9138 - Avoid inadvertent form submission when utilizing quick search field on object lists
  • #9151 - Child prefix counts not annotated on aggregates list under RIR view
  • #9156 - Fix loading UserConfig data from fixtures
  • #9158 - Do not list tags field for CSV forms which do not support tag assignment
  • #9194 - Support position assignment when add module bays to multiple devices
  • #9206 - Show header for comments field under module & module type creation views
  • #9222 - Fix circuit ID display under cable view
  • #9227 - Fix related object assignment when recording change record for interfaces

NS1 is Hiring a NetBox Developer

1 minute read

NS1 is hiring a software to help develop our commercial NetBox Cloud product as well as the open source NetBox project. This candidate will work alongside myself and the rest of our NetBox team here at NS1, and will routinely engage with the NetBox maintainers and community. From the posting:

You will:

  • Help lead the development of NetBox Cloud’s roadmap.
  • Engage in product and roadmap planning discussions.
  • Contribute to documentation and supporting tooling for both the NetBox community and NS1’s NetBox offerings.
  • Work closely with NS1’s NetBox-focused SREs.
  • Support the open source NetBox project and assist in delivering its roadmap.
  • Seek new ways to deliver the best possible user experience for NetBox users.
  • Become an active member of the NetBox open source community.

Ideally, you’ll bring:

  • Proficiency in full stack Python development with a particular focus on development for web applications using Django
  • Solid experience with RESTful APIs and JSON
  • Experience in enterprise network architecture and operations
  • Prior engagement with NetBox as a user, operator, or open source contributor
  • Familiarity with software development best practices, including revision control and documentation
  • Excellent communication skills (written and verbal) and comfort engaging with prospective and current customers to collaborate and solve problems
  • Ability to perform well as part of a distributed team
  • Extra kudos for familiarity with:
    • Experience coaching junior software engineers
    • Open source software and engagement with open source development practices
    • Core network engineering concepts
    • One or more commercial DDI solutions
    • TypeScript development experience
    • Ansible, Salt, or similar configuration management software
    • Tools in the modern DevOps toolkit
    • Cloud infrastructure (AWS, GCP, Azure)

This position is available for full-time remote work, to candidates in the US, UK, and Ireland. You can learn more about this role and apply on NS1’s careers site.


Cisco Live: Next-Level Automation Using Sources of Truth

less than 1 minute read

This year’s Cisco Live conference in Las Vegas boasts a DevNet session titled “Next-Level Automation Using Sources of Truth,” which features NetBox! From the session catalog:

You’ve taken the leap and started automating your network – but it’s time to move past writing single-use scripts that have hardcoded values in them. Are you still storing your credentials in a file or passing them via environment variables? Is the inventory of devices stored in a YAML file? If so, it’s time to embrace Sources of Truth! In this session, participants will use REST APIs to securely store and access secrets using HashiCorp Vault and then manage network device inventory using NetBox. Once the sources of truth are configured, we will use this data to configure a network topology. Move away from text files and take your automation skills to the next level!

The 45-minute session (dubbed DEVWKS-2295) will be presented by Palmer Sample and Juulia Santala, and has an “intermediate” technical level rating. Sounds like fun!


NetBox v3.2.1 Released

1 minute read

NetBox v3.2.1 is now available on GitHub!

Enhancements

  • #5479 - Allow custom job timeouts for scripts & reports
  • #8543 - Improve filtering for wireless LAN VLAN selection
  • #8920 - Limit number of non-racked devices displayed
  • #8956 - Retain old script/report results for configured lifetime
  • #8973 - Display VLAN group count under site view
  • #9081 - Add fhrpgroup_id filter for IP addresses
  • #9099 - Enable display of installed module serial & asset tag in module bays list
  • #9110 - Add Neutrik proprietary power connectors
  • #9123 - Improve appearance of SSO login providers

Bug Fixes

  • #8931 - Copy assigned tenant when cloning a location
  • #9055 - Restore ability to move inventory item to other device
  • #9057 - Fix missing instance counts for module types
  • #9061 - Fix general search for device components
  • #9065 - Min/max VID should not be required when filtering VLAN groups
  • #9079 - Fail validation when an inventory item is assigned as its own parent
  • #9096 - Remove duplicate filter tag when filtering by “none”
  • #9100 - Include position field in module type YAML export
  • #9116 - assigned_to_interface filter for IP addresses should not match FHRP group assignments
  • #9118 - Fix validation error when importing VM child interfaces
  • #9128 - Resolve component labels per module bay position when installing modules

NetBox v3.2.0 Released

less than 1 minute read

NetBox v3.2.0 is now available on GitHub! This is a huge release representing several months of intense development effort. Major new features include:

  • Plugins Framework Extensions (#8333)
  • Modules & Module Types (#7844)
  • Custom Object Fields (#7006)
  • Custom Status Choices (#8054)
  • Improved User Preferences (#7759)
  • Inventory Item Roles (#3087)
  • Inventory Item Templates (#8118)
  • Service Templates (#1591)
  • Automatic Provisioning of Next Available VLANs (#2658)

There’s a ton more still to cover, so be sure to read through the full v3.2 release notes before upgrading. And if you haven’t already, check out our migration scripts to help replicate data out of the legacy ASN and contact fields on the site model.

And if you’re interested in leveraging the newly improved plugins framework, be sure to follow the plugins development tutorial for a step-by-step introduction to the development process. You’ll be up and running with your own custom plugins in no time!


2022 NetBox Community Survey Results

less than 1 minute read

We had an amazing turnout for this year’s NetBox community survey, with 487 total responses. Thank you very much to everyone who took the time to participate! The data generated will help inform our roadmap for the rest of 2022 and beyond.

A detailed analysis of the results has been posted over on GitHub, so check it out if you’d like to learn more about the organizations that use NetBox and what they want to see.



NetBox v3.1.10 Released

1 minute read

NetBox v3.1.10 is now available on GitHub!

Enhancements

  • #8232 - Use a different color for 100% utilization bars
  • #8457 - Enable adding non-racked devices from site & location views
  • #8553 - Add missing object types to global search form
  • #8575 - Add rack columns to cables list
  • #8645 - Enable filtering objects by assigned contacts & contact roles
  • #8926 - Add device type, role columns to device bay table

Bug Fixes

  • #8696 - Fix help link under FHRP group assignment creation view
  • #8813 - Retain global search bar query after submitting
  • #8820 - Fix navbar background color in dark mode
  • #8850 - Show airflow field on device REST API serializer when config context data is included
  • #8905 - Disable ordering by assigned tags to prevent erroneous results
  • #8919 - Fix filtering of VLAN groups by site under prefix edit form
  • #8924 - Improve load time of custom script list
  • #8932 - Fix error when setting null value for interface rf_role via REST API
  • #8935 - Correct ordering of next/previous racks to use naturalized names
  • #8947 - Retain filter parameters when handling an export template exception
  • #8951 - Allow changing device type & platform to different manufacturer simultaneously
  • #8952 - Device images in rear rack elevations should be hyperlinked

March Community Call

less than 1 minute read

The recording of our March community call is now available on YouTube! This month’s call features Dinesh Dutt, co-founder of SuzieQ. SuzieQ is a powerful open source tool which enables network engineers to inspect and query the live network, compare it to a designated source of truth, and alert on changes. Dinesh discusses how you can integrate SuzieQ directly with your existing NetBox deployment to get up and running in no time!


NetBox Plugin Development Tutorial

less than 1 minute read

There is now a complete plugin development tutorial for NetBox v3.2! This detailed guide walks through the entire process of creating a custom plugin for managing simple access lists in NetBox.

The guide is arranged into ten consecutive sections, each of which focuses on a major component of NetBox’s plugins framework. It also includes a companion repo which contains a snapshot of the completed code at each step. This allows readers to easily pick up from any step and focus on a particular subject.

Although NetBox v3.2.0 is still a couple weeks away (scheduled for release the week of Aptril 4th), we don’t anticipate any more major changes to the new plugins framework. You can get started with plugin development right now using the most recent beta release!. The guide will be updated over time as future NetBox releases continue to expand the plugins framework.


10K GitHub Stars!

1 minute read

Wow. Over the weekend, NetBox officially surpassed 10 thousand stars on GitHub! This was not something I ever anticipated when DigitalOcean agreed to release NetBox as open source back in 2016, but it demonstrates just how much impact a project can have when it finds the right community and solves the right problems.

Admittedly, GitHub stars aren’t a terribly meaningful metric: Someone can star a repo but not necessarily use it, and vice versa. But as an open source project without any more tangible means to track effective deployments or customers, it’s one of the few objective metrics we have by which to evaluate the project’s growth. And it does provide a reasonable bellwether indicating how NetBox stacks up against similar projects.

So where does that put NetBox? Amazingly, we’re currently ranked #241 of all Python projects on GitHub, and we’re in the #1 spot for both the ipam and dcim topics by a wide margin. Not bad for a project that was released less than six years ago.

I recently started using Orbit (an excellent tool!) to track community engagement through both GitHub and Slack. Orbit has been a boon in helping to highlight newly engaged users and draw attention to some of our most active contributors. It also provides rich statistics that complement what little data we can get from GitHub.

Orbit: GitHub star growth since release

As you can see, NetBox’s growth has remained fairly constant since a few months after its initial release, even trending upward a bit since being sponsored by NS1 last year.

So what’s next for NetBox? Well, v3.2 is right around the corner, bringing a greatly enhanced plugins framework, device modules, additional customization options, and lots more - and that’s just the first of three major releases planned this year! At the same time, we’re continuing to grow NetBox Cloud at NS1 both in size and feature set. I expect 2022 to be our busiest year yet with NetBox, by far.

Finally, I’d like to thank everyone who uses NetBox today. Your contributions, feedback, and support have made the project what it is today, and continue to power its success.

Now, on to 20,000 stars!


NetBox v3.2 Beta2 Now Available

less than 1 minute read

The second beta release of NetBox v3.2 is now available! This release fixes several bugs found in the first beta, and continues extending and refining the plugins framework. You can install it locally, or try out our public demo at beta-demo.netbox.dev! (If you happen to run into any problems while testing the beta release, please be sure to open a GitHub issue to let us know.)

We’re making excellent progress toward the final v3.2.0 release, which is planned for the week of April 4th. Stay tuned!


NetBox v3.1.9 Released

less than 1 minute read

NetBox v3.1.9 is now available on GitHub!

Enhancements

  • #8594 - Enable filtering by exact description match for all applicable models
  • #8629 - Add description to tag table search function
  • #8664 - Show assigned ASNs/sites under list views
  • #8736 - Add PC and UPC fiber end faces for LC/SC/LSH port types
  • #8758 - Allow empty string substitution when renaming objects in bulk
  • #8762 - Link to rack elevations list from site view
  • #8766 - Add SCTP to service protocols list

Bug Fixes

  • #8546 - Fix bulk import to restrict bridge, parent, and LAG to device interfaces
  • #8633 - Prevent navigation sidebar pin from disappearing at certain breakpoints
  • #8674 - Fix rendering of tabbed content in documentation
  • #8710 - Fix dynamic scope selection form fields when creating a VLAN group
  • #8713 - Restore missing “add” button on services list view
  • #8715 - Avoid returning multiple objects when restricting querysets using multiple tags in permissions
  • #8717 - Fix redirection after bulk edit/delete of prefixes from aggregate view
  • #8724 - Fix exception during device import with invalid device type
  • #8807 - Correct REST API URL for FHRP group assignments
  • #8808 - Fix members count under FHRP group list

2022 NetBox Community Survey

less than 1 minute read

Our 2022 NetBox community survey is now open! This annual questionnaire solicits feedback and demographic data from NetBox users around the world, which the maintainers use to shape the project’s long-term development.

The survey will be open throughout March, and the results will be published in early April. Please take a few minutes to share your experience with NetBox!





NetBox v3.2 Beta1 Now Available

less than 1 minute read

The first beta release of NetBox v3.2 is now available! This release debuts a ton of exciting new features, including:

  • Device modules & module types
  • Object and multi-object custom fields
  • Customizable status choices
  • Improved user preferences
  • Inventory item roles & templates
  • Service templates
  • Automatic provisioning of available VLANs

This release also greatly extends NetBox’s plugins framework, introducing formal support for myriad model, view, form, table, and other components. These will greatly simplify the process of plugin development and minimize the duplication of boilerplate code in plugins. You can find a complete accounting of the new plugins framework in the beta documentation.

As with previous beta releases, we’ve spun up a public demo instance at beta-demo.netbox.dev for the community to help evaluate the new features and submit any bug reports or suggestions. Of course, you’re also encouraged to download and deploy the beta release locally, especially if you’d like to experiment with the new plugins framework.

The final release of v3.2.0 is scheduled for early April, so now is the time to try it out and let us know what you think!


NetBox v3.1.8 Released

less than 1 minute read

NetBox v3.1.8 is now available on GitHub!

Enhancements

  • #7150 - Linkify devices on the far side of a rack elevation
  • #8398 - Embiggen configuration form fields for banner message content
  • #8556 - Add full username column to changelog table
  • #8620 - Enable tab completion for nbshell

Bug Fixes

  • #8331 - Implement replaceAll string utility function to improve browser compatibility
  • #8391 - Null date columns should return empty strings during CSV export
  • #8548 - Fix display of VC members when position is zero
  • #8561 - Include option to connect a rear port to a console port
  • #8564 - Fix errant table configuration key available_columns
  • #8577 - Show contact assignment counts in global search results
  • #8578 - Object change log tables should honor user’s configured preferences
  • #8604 - Fix tag filter on config context list filter form
  • #8609 - Display validation error when attempting to assign VLANs to interface with no mode during bulk edit
  • #8611 - Fix bulk editing for certain custom link, webhook, and journal entry fields

February Community Call

less than 1 minute read

Our next community call will be held on February 24th at 5pm UTC! We’ll be spending half an hour covering the v3.2 beta release, recent improvements to the plugins framework (#8333), and a variety of other topics. Please join us!

Don’t forget to bookmark the upcoming live stream to make sure you don’t miss it!


NetBox v3.1.7 Released

1 minute read

NetBox v3.1.7 is now available on GitHub!

Enhancements

  • #7504 - Include IP range data under IPAM role views
  • #8275 - Introduce alternative ASDOT-formatted column for ASNs
  • #8367 - Add ASNs to global search function
  • #8368 - Enable controlling the order of custom script form fields with field_order
  • #8381 - Add contacts to global search function
  • #8462 - Linkify manufacturer column in device type table
  • #8476 - Bring the ASN Web UI up to the standard set by other objects
  • #8494 - Include locations count under tenant view
  • #8517 - Render boolean custom fields as icons in object tables
  • #8530 - Indicate CSV or YAML as format for “all data” export

Bug Fixes

  • #8315 - Fix display of NAT link for primary IPv4 address under device view
  • #8377 - Fix calculation of absolute cable lengths when specified in fractional units
  • #8425 - Fix exception when viewing change list/records with removed plugins
  • #8456 - Fix redundant display of VRF RD in prefix view
  • #8465 - Accept empty string values for Interface rf_channel in REST API
  • #8498 - Fix display of selected content type filters in object list views
  • #8499 - Content types REST API endpoint should not require model permission
  • #8512 - Correct file permissions to allow execution of housekeeping script
  • #8527 - Fix display of changelog retention period

Back to Top ↑

Tips and Tricks

Error Logging with Sentry

1 minute read

One of the challenges that comes with developing open source software is getting reliable and detailed bug reports from users in the wild. Because NetBox is generally self-hosted and has no phone-home function, we don’t have any direct access to deployments other than what we (the maintainers) deploy ourselves. But there’s a new feature in NetBox v3.2.3 that I think can really help us out: Sentry intgeration.

Enabling error reporting via Sentry allows us to collect and analyze exceptions and other errors as they happen, rather than having to wait for bug reports submitted by end users. It won’t capture all bugs, of course, but it will alert us to the more severe issues. Sentry reports include a full stack trace, which is often needed to determine just where a bug exists, but no end user-identifiable information or confidential data.

To enable Sentry integration, simply turn on the SENTRY_ENABLED configuration parameter and restart NetBox:

SENTRY_ENABLED = True

NetBox will begin generating error reports and sending them to our centralized ingestor. One of the biggest benefits of this community-powered arrangement is that we’ll be able to correlate bugs by software release, operating system, and other deployment attributes.

An example Sentry error report

Of course, it’s possible to use your own Sentry ingestor too: You’ll just need to define your custom DSN:

SENTRY_ENABLED = True
SENTRY_DSN = "https://examplePublicKey@o0.ingest.sentry.io/0"

You can find more detail on Sentry configuration in the NetBox documentation.


Migration Scripts for NetBox v3.2

1 minute read

With NetBox v3.2 due to be released next week, it’s worth taking a moment to evaluate your upgrade readiness. While there aren’t many major breaking changes in this release, there are two items you’ll definitely want to double-check:

  • The contact fields (name, phone, and email) are being removed from the site model
  • The ASN field is being removed from the site model

You may recall that Netbox v3.1 introduced a dedicated “Contact” model, which enables much more efficient and complex contact assignment, and obviates the need for storing contact information directly on individual sites. Likewise, v3.1 also introduced a designated model for autonomous system number (ASN) tracking, rendering the site model’s asn field obsolete.

To help expedite the upgrade process for organizations which still rely on data in any of these fields, we’ve published a set of migration scripts. These can be installed and run in your local NetBox instance to automatically replicate data from the legacy fields into the new models.

Contact migration script in the NetBox UI

As with any such process, it is highly recommended to perform a database backup immediately prior to running these, and to perform a “dry run” (without commiting changes to the database) first as a sanity check. While the behavior of the scripts is likely suitable for most cases, users are also encouraged to modify these if necessary to better fit their exact preferences. For example, you might want to limit the sites being migrated by tag or role. (Be sure to check out NetBox’s custom script documentation too!)

With the relevant data safely migrated to the new models, you’ll be ready for NetBox v3.2!


Okta Authentication with NetBox

less than 1 minute read

NetBox v3.1 introduced support for single-sign on (SSO) authentication when it was released back in December, using the popular python-social-auth library. This has been in high demand for quite some time as it enables NetBox administrators to offload authentication to an external service.

Jason Lavoie has just written an excellent tutorial on enabling Okta authentication for NetBox. He walks through the entire process from start to finish, covering configuration of both Okta and NetBox, even going so far as to include a Terraform configuration for Okta! It’s well worth a read if you’re looking to enable Okta authentication for NetBox.


Back to Top ↑

Events

NetBox Live Coding Session #8

less than 1 minute read

I’ll be hosting another NetBox live coding session today at 6pm UTC / 1pm EST. These sessions run about an hour long, during which I try to knock out various feature requests and bug reports from GitHub, sharing my screen and narrating as I go. I also take relevant questions from the chat. This is a great way to get a “behind the scenes” look at NetBox development, and open source development in general.

These sessions are streamed live via YouTube; no registration is required. Please join us! You can watch today’s stream at https://www.youtube.com/watch?v=Rnl8mzMax2w, and previous recordings are available on my YouTube channel.


Back to Top ↑