ZoneEditor 1.0.1 ================ ZoneEditor is a Windows service that periodically checks for changes in a host's IP address and updates DNS records with the ZoneEdit dynamic DNS service. It is written in C# under the .NET framework and offers plug-in support for various routers. Motivations =========== The idea for ZoneEditor appeared when I switched the router/firewall on my home network from a FreeBSD system to a ZyXEL ZyWALL 10 hardware firewall. While previously, shell scripts tied to DHCP changes successfully managed DNS updates with ZoneEdit, no such functionality existed on the ZyWALL. Thus, the need for an external monitoring utility became apparent. A Windows service performing periodic checks on the external IP through the firewall's telnet service seemed to fit the bill quite well. Usage ===== After the installation, edit the ZoneEditor.exe.config file with your ZoneEdit and router/firewall credentials, DNS records to update and poll interval for checking IP changes. Once you have completed the set-up, open the Services console and start the ZoneEditor service. By default, the service is set to manual startup. To uninstall the service, simply choose Remove from the Add/Remove Programs applet in the Control Panel. Plug-ins ======== ZoneEditor implements router/firewall device connectivity through plug-ins. The ZyWALL plug-in ships with the standard installer, since this is the device used in developing and testing the service. To install a new plug-in, simply drop the plug-in DLL into the ZoneEditor installation folder, change the appropriate entry in the ZoneEditor.exe.config file and restart the service. From a developer's perspective, a plug-in is a library that implements the IFirewallConnector interface as the FirewallConnector class. Once the library is made visible to ZoneEditor, it is automatically loaded on service start. Contact ======= Contact author at: seva at graphite.net Source code available at: http://sourceforge.net/projects/zoneeditor/ I hope you can find this little utility useful. Seva Petrov