DNS Lookup / Host Name Resolution
Sometimes the Ethernet devices you need to communicate with do not have a fixed IP address. This is common challenge in applications in water/wastewater, oil/gas, and other industries with widely distributed control systems. When using cellular modems to communicate to remote devices the cellular carrier often charges a per device, per month fee to obtain a fixed IP address for every device in your system. The fees associated with paying for fixed IP addresses for a large number of devices can add up quickly.
TOP Server eliminates the cost of paying for fixed IP addresses and allows you to leverage the flexibility of dynamic IP addresses.
TOP Server’s DNS Lookup functionality, also called Host Name Resolution, enables you to enter a DNS name in the format <hostname> in the Device ID on supported drivers. TOP Server will automatically use that DNS name and your Windows computer’s configured DNS servers to convert the <hostname> to a valid IP address.
This feature empowers you to use Dynamic DNS (i.e. dydns.org, dyndns.com, and others) or DNS Servers that your IT team manage to locate your device IP addresses. Since TOP Server simply hands off the DNS lookup request to the DNS servers specified in your network connection settings in Windows, it will work with any DNS server.
Currently, this feature is supported for the following drivers:
How it Works:
Starting with V5.8, DNS Host Resolution has been streamlined in supporting drivers, eliminating the need for configurable settings for this feature. This feature has been enhanced to optimize driver reactions to changes in network address mappings for the best performance while being transparent to user applications.
On Initial Device Connection: Provided that your device that has a changing IP address automatically updates it’s DNS entry whenever it’s IP address changes, TOP Server will be able to get a valid IP address when it initially connects. If you have a large number of devices, TOP Servercarefully manages how it sends the DNS lookup requests on startup to prevent it from flooding your DNS server with requests which could trigger IT security alarms otherwise. You can use the Cache Lifetime and Request Pool features to tune this management to suit your needs.
Independent of Device Communications: TOP Server automatically updates the IP address it has in memory independently of the polling of devices so a current IP address willl be available when device polling occurs. You can use the Cache Lifetime setting to control how often TOP Server will update its’ IP address list in memory.
On Subsequent Device Polls/Communications: TOP Server will first try to communicate with the IP address it has in memory or cache. If the device IP has not changed, then the TOP Server driver will receive a response when it tries to use the IP address it has in memory/cache. If the IP of the device has changed, and the TOP Server cache was not already updated, when TOP Server tries to communicate to the device, it will timeout, and do a new DNS lookup, get the new IP address and reconnect and resume communications.
Note: If your DNS servers have delays in updating their records when your device IP address changes, those delays will affect TOP Server’s ability to reconnect quickly on a device IP address change; which can result in bad quality data and “Device Not Responding” errors while TOP Server waits for the new IP to appear in the DNS settings.
Legacy DNS Resolution Settings (V5.7 and prior):
In TOP Server Version 5.7 and prior, you control how long TOP Server will keep the IP addresses that it gets from DNS servers in it’s memory or “cache” via user configurable settings.
You get to the the TOP Server Settings by Right Clicking on the Administration Icon in the system tray of your Desktop (shown below) and choosing Settings from the pop up menu.
If you don’t see the Administration Icon, go to the desk top Start Menu - All Programs - Software Toolbox - TOP Server 5 - TOP Server 5 Administration. The Administration Icon shown above will then appear in the system tray.
Since DNS lookups do take system and network resources, you do not want to be doing DNS lookups too frequently. At the same time you do not want to “miss” a change.
The Cache Lifetime and Request Pool settings in TOP Server address these facts of working with dynamic IP addresses and DNS lookups. These settings are found on the Host Resolution tab in the TOP Server Settings as shown below.
(NOTE: Starting in V5.8, these functions are optimized internally by TOP Server with no configuration necessary)
Cache Lifetime - If you know your IP addresses will not change at a high frequency, set the Cache Lifetime to a higher value than the default but to a time that is shorter than the change interval of your IP address. If you are using devices with dynamic IP addresses, it is common for the provider of your dynamic IP addresses to have assigned a “Default Lease Time” for your IP addresses. Ask them what that is and set TOP Server’s Cache Lifetime setting to less than their Default Lease Time. If you do not know how often your IP addresses change, leave this setting at the default to insure maximum responsiveness. Cache lifetime can be set as high as 7200 seconds.
Request Pool - This setting is useful if you have a large number of channels and IP addresses that change frequently. TOP Server can perform up to 8 simultaneous DNS lookups/requests to help maintain performance. TOP Server will queue requests once the Maximum oustanding requests number is reached. Most DNS lookups are very quick, so for most users the default is sufficient. Increase the Maximum outstanding requests setting if you have a large number of devices and their IP addresses that change very frequently, or if your DNS servers are slow to respond.