Architecture
NetSV Manager
The monitoring daemon, called netsv-manager, has been written using the Python language. Its role is to listen to the messages sent by the monitored hosts and to maintain up-to-date an XML file containing these informations. This daemons aims at supervising a renumbering, detect eventual problems in the monitored hosts' addressing and trigger diagnostics on these.
A WEB interface uses this XML to display the informations, give a graphical view of the network and pilot the daemon thanks to a CGI written in Python.
NetSV Agent
The monitored daemon, called netsv-agent, has been written using the C language. Its role is to send messages to the monitoring stations conerning the local addresses and the prefixes advertised in Router Advertisements. This daemon also verifies that there is no missing or ghost addresses on the local interfaces and sends alerts to the monitoring daemon if such problems appear. Finally, when a renumbering is detected, some diagnostics are executed (these checks are defined in an XML file and can be dynamically updated) and some alerts (mail and/or pop-up window) can be raised.
The diagnostic tool, called netsv-diagnostic, is a light version of the daemon only composed of the diagnostic feature, and is completely independent from this daemon. this tool can be used with a clustered configuration/management too such as cfengine to trigger diagnostics on all monitored hosts. The only available alert is mails sent to a defined address using the local MTA.
Documentation
- INSTALL: HowTo install NetSV.
- CONFIGURATION: HowTo configure NetSV.
Papers
A reasearch article has been published in the workshop IPv6TD 2006, IPv6 Today - Technology and Deployment, called A Monitoring Approach for Safe IPv6 Renumbering which received the Best Paper Award.
Bibliography
NetSV has been written by taking as reference two papers:
- RFC 4192: Procedures for Renumbering an IPv6 Network without a Flag Day.
- draft-chown-v6ops-renumber-thinkabout-05: Things to think about when Renumbering an IPv6 network.