Skip to main content



Some of you may not know that NAV has an API, but it has!

The reason for adding an API to NAV was to enable local developers to use the considerable knowledge NAV has about your network to make useful tools - first of all for local use, but also for sharing.

To get started with the API we have provided some information in our official documentation. As of NAV 4.3 we also document our endpoints a bit more.

As with everything NAV related we are dependent on feedback and patches from our users to make things better. The API is no exception, and we have already gotten pointers about things that can be improved. Take a look at the community channels for how to contact us and contribute.

We have a release candidate for NAV 4.3.0 ready to download for those who want an early peek.

The source code is available for download at Launchpad. A new package for Debian Wheezy has been published in our APT repository, but in the “navbeta” archive instead of the regular “nav” archive - modify the instructions accordingly (We have no packages for Debian Jessie yet, due to dependency problems and our own resource constraints).

We have also published a “beta” Virtual Appliance on our homepage, if you want to test the release candidate separately from your production install (remember, there is no downgrade path!)


This release makes some fundamental changes to NAV’s data model to improve support for non-physical devices (like Cisco VSS and Cisco VDC). Please read the release notes for further information.

User-visible features and improvements:

  • LP#744943 (Add switch to toggle display of traffic lines in Geomap)
  • LP#961212 (Show planned/active maintenance tasks for device in IP Device Info)
  • LP#1149160 (Auto-recognize HTTP URLs in reports and hyperlink them)
  • LP#1166695 (PortAdmin available from the toolbox)
  • LP#1169550 (NAV’s data model should reflect modern reality, with virtual device support)
  • LP#1242872 (Option to turn off traffic stats in Geomap)
  • LP#1248081 (New interface/tool to browse unrecognized neighbors)
  • LP#1366895 (Report widget)
  • LP#1421644 (Support Weathergoose traps from external temperature sensors)


  • LP#1397257 (Port Admin may not work properly for any non-HP and non-Cisco device)
  • LP#1447973 (CDP/LLDP neighbor matching fails when multiple ports match the identification)
  • LP#1447999 (Existing adjacency candidate data in db is not deleted if a device’s CDP cache or LLDP remote table becomes empty)
  • LP#1448086 (Unable to identify LLDP neighbor’s port in some instances)

Happy NAVing everyone!

The sixth maintenance release of the NAV 4.2 series is now available.

The source code is available for download at Launchpad. A new package for Debian Wheezy has been published in our APT repository, as usual.

Debian Jessie (the next stable release of Debian) is scheduled for release on Saturday 25th April, so we will start working on building a package for Jessie as well.


The following 11 reported issues have been fixed:


  • LP#1248083 (The ipdevinfo “Affected” tab should be renamed to “what if”)
  • LP#1248085 (ipdevinfo “affected” tab needs to properly list the affected organizations)
  • LP#1338388 (Netmap link traffic does not always show)
  • LP#1435451 (Vendors report should only show Vendors in use)
  • LP#1436125 (No CPU graph from some Cisco CPUs)
  • LP#1436388 (VLAN number cannot be forced by router port description)
  • LP#1437318 (PostgreSQL load driven up by overzealous pruning of old ipdevpoll_job_log entries in NAV 4.2.5)
  • LP#1438930 (No negative values can be displayed in graphs)
  • LP#1442538 (Graphite-web doesn’t support metric aliases with non-ASCII characters)
  • LP#1443775 (alert templates for climate humidity notifications does not exist)
  • LP#1444416 (netmap L3 crash in

Happy NAVing everyone!

The fifth maintenance release of the NAV 4.2 series is now available.

This replaces the 4.2.4 release, which broke the parallel pinger, and possibly other event-posting components. Again, to those who already upgraded to 4.2.4, we apologize for the inconvenience. More details at the bug report here:

The source code is available for download at Launchpad. A new package for Debian Wheezy has been published in our APT repository, as usual.

  • LP#1403365 (offMaintenance alerts for same device every 5 minutes)
  • LP#1422298 (device history crashes when viewing weathergoose events)
  • LP#1422316 (thresholdmon AttributeError crash)
  • LP#1425536 (Status widget error when filtering on Device group)
  • LP#1425846 (alert profiles does not display without refresh)
  • LP#1427666 (watchdog is slow)
  • LP#1428071 (Portadmin crashes when searching by sysname or ip)
  • LP#1428578 (seeddb test for snmp version crashes if neither v1 or v2c is supported)
  • LP#1429868 (ipdevpoll jobs that are no longer supposed to run for a device as flagged as “overdue”)
  • LP#1430795 (SeedDB room edit form asks for user’s location, shows no map until permission is given)
  • LP#1430797 (Geomap shows no map at all when no room positions are defined)
  • LP#1430802 (SeedDB room edit insists on inserting a geoposition)
  • LP#1430803 (SeedDB room form position indicator icon is missing)
  • LP#1431780 (Trunk port status is never reset on non-Cisco equipment)
  • LP#1432056 (mod_wsgi option WSGIApplicationGroup should be %{GLOBAL} by default)
  • LP#1432057 ([appliance] missing python-dnspython)
  • LP#1432620 (Unable to load Netmap layer 3 map with ELINK peers)
  • LP#1432682 (Should be able to specify exact subnet prefixes to ignore)
  • LP#1433063 (netmap zoom and pan does not work for some views)
  • LP#1433120 (Shouldn’t generate linkState alerts for intentionally shutdown interfaces)

Happy NAVing everyone!

The third maintenance release of the NAV 4.2 series is now available.

The source code is available for download at Launchpad. A new package for Debian Wheezy has been published in our APT repository, as usual.


  • LP#392148 (Add microformats in maintenance module)
  • LP#1108736 (seeddb vlan page have checkbox but no delete selected)
  • LP#1242868 (device group improvements)
  • LP#1248095 (device groups should be searchable in the NAVbar)
  • LP#1316608 (Search in statistics gives stacktrace)
  • LP#1398382 (AssertionError prevents Netmap from loading any graph/map)
  • LP#1410687 (room netbox interfaces must indicate that topology exists)
  • LP#1411243 (Radius error log search: “could not convert string to float: hours”)
  • LP#1412735 (arnold switching from exponential to normal duration gives wrong duration)
  • LP#1414934 (Expanding some switch ports makes Network Explorer hang)
  • LP#1414943 (No collected IPv6 prefixes on Cisco Nexus routers)
  • LP#1414975 (network explorer doesn’t report backend failures to end user)
  • LP#1419746 (portadmin crashes when searching for a netbox that has no type)
  • LP#1420836 (Parsing of sensors with names that contains #)
  • LP#1421126 (snmpAgentDown blocks BoxDown event)

Happy NAVing everyone!

The second maintenance release of the NAV 4.2 series is now available.

The source code is available for download at Launchpad. A new package for Debian Wheezy has been published in our APT repository, as usual.


Important note:

This release adds commas to the list of characters escaped in Graphite metric names, which may change the name used for some of your existing metrics after an upgrade. If you want to keep your data, the underlying files need to be renamed manually in your Graphite installation. See the updated release notes for more details.

The following 23 reported issues have been fixed:

  • LP#1169559 (Print button for Netmap)
  • LP#1394522 (Netbox and Location bulk import formats must be changed to include data attributes)
  • LP#1396913 (Status page, filter on Device Group)
  • LP#1396920 (NAV 4, Internet Explorer Compatibility mode)
  • LP#1396924 (NAV 4.2 does not work with SASS 3.4 or newer, but the install docs do not specify this)
  • LP#1397255 (Subject text of psuDown alerts in status tool is non- descriptive)
  • LP#1397886 (device history script timeout on many results)
  • LP#1398382 (AssertionError prevents Netmap from loading any graph/map)
  • LP#1398791 (Maintenance system stops working when an IP device on maintenance is deleted)
  • LP#1398815 (Rooms, hyperlink inconsistensies between report and seeddb)
  • LP#1399558 (portadmin tries to write to memory for each change)
  • LP#1400307 (Need easier way to remove services)
  • LP#1401114 (dropdown for ipdevice when adding a service is fubar)
  • LP#1401470 (ipdevpoll TypeError: unsupported operand type(s) for +: ‘NoneType’ and ‘float’)
  • LP#1403066 (Some routers fail to expand in Network Explorer)
  • LP#1403432 (report.conf, wrong url for netboxinfo)
  • LP#1403797 (Geomap is insanely slow after migration to Graphite in NAV 4.0)
  • LP#1403803 (Geomap “loading data” indicator is missing)
  • LP#1403884 (geomap sends data request on every tiny movement)
  • LP#1404207 (Intermittent ValueErrors thrown from pynetsnmp causes ipdevpoll jobs to fail)
  • LP#1404222 (Conflicting sysnames cause ipdevpoll jobs to crash)
  • LP#1404225 (Multiple DNS PTR records for the same IP address causes sysname to swing back and forth in NAV)
  • LP#1407625 (/search/devicegroup takes too long)

Happy NAVing everyone!

Post 4.0 experiences and 4.1 plans

NAV 4.0 has now been widely deployed, and people are enjoying the fresh layout, improved interface and (not really enjoying) new bugs. The feedback has been very good, but some issues have been raised.

NAV 4.0 experiences

Graphite and it’s data-accepting sidekick Carbon have been creating some trouble for new and old NAV users. We have tried to help those with problems, but still have some issues that have not been resolved. This is kind of expected when introducing a new element for such a critical part of NAV, but we are working hard to fix the remaining issues.

We have seen an increased interest in NAV after the release of 4.0. That is something we are very happy about. We would like to remind you that to communicate with other NAV users and developers, you can use IRC (channel #nav on or email

NAV 4.1

In addition to fixing bugs we have been working on new functionality for the NAV 4.1 release which is scheduled for release in late May.

Screenshot of WatchDog report in NAV

The most visible addition is WatchDog. WatchDog tries to give you an indication about the health of your NAV installation. It runs tests for known problems to see if everything is as it should be, and displays this information in a widget. WatchDog also has its own page displaying its status, as well as interesting general information about your NAV installation.

We have also been working on the Subnet Matrix report to make it able to display smaller subnets for a more complete overview of the prefix usage on your network.

Lastly we have been working on getting rid of the optional fields available in rooms and organizations. These fields will be replaced with a much more flexible solution where you can have as many or few fields with custom information as you want. And yes, the old values will be copied to the new solution.

That is all for now. As always, feel free to contact us by email for general inquires or for support related issues. We are also available on IRC channel #nav on

Cake with NAV logo

For those of you who have not already noticed, we released the final NAV 4.0 version less than two weeks ago. Due to a serious bug found on the 3.15 branch, 4.0.1 was also released last week.

We also celebrated with cake!

As before, the most convenient way of getting started with NAV is using Debian GNU/Linux and the packages from our APT repository. If you aren’t already up and running with NAV, see our guide for adding the repository to your Debian server.

We realize that Graphite’s documentation may not be the best, and we are already receiving question about installing and configuring both the Carbon backend and the web frontend. Since we are a bit Debian focused, we have published a guide for installing and configuring Graphite for NAV use on a Debian server on our wiki.

As always, happy NAVing!

Why I love Whisper

We have just built a new, modern server room at UNINETT, with robust power distribution and cooling systems, and of course, we want to monitor the server room environment using NAV.

For NAV, we are brushing up its support for collecting sensor readings from UPSes, and we are implementing support for the Comet web probes that have been deployed to take temperature readings in the new server room.

This is when I happened upon NAV’s implementation of the UPS-MIB (RFC 1628), where the precision of a couple of objects is off by a factor of 10. No way our UPS is putting out 50 Amperes of electric current! The fix for the NAV code was quick, but the graph doesn’t look very nice after the change:

Graph of temperature readings from UPSes where the precision is off. Output current graph drops suddenly at the end.

This is where Whisper, the storage format used by Graphite, shines, compared to RRD, in my humble opinion. This was all fixable with some one-line command trickery: upsOutputCurrent.wsp \
| perl -lane \
    'print @F[0] . ":" . @F[1]/10.0 if @F[1] > 15.0' \
| xargs upsOutputCurrent.wsp
  1. The whisper-fetch command pulls out all the data points from the underlying Whisper file.
  2. The perl command filters any data point with a value above 15.0, divides the value by 10.0 and outputs an updated data point.
  3. The xargs+whisper-update combination updates the Whisper file with all the modified datapoints output by the perl command.

The result:

Graph of temperature readings from UPSes with better precision. There are no sudden drops in the graph.

Brilliantly simple :-)