The cluster_info file added to computers in a cluster reservation may contain wrong public IP addresses. This is due to the backend vcld daemon caching reservation data including the computer public IP address in its %ENV variable.
A computer using dynamic DHCP may obtain a different IP address when loaded. The IP address in the VCL database prior to the computer being loaded is retrieved when the load (new or reload state) process begins. After the computer is loaded, its correct public IP address is retrieved from the computer's OS and the database is updated.
The problem occurs when subsequent processes are forked – mainly when a request goes from new to reserved. After the new process terminates, the vcld daemon is still storing the original computer information in %ENV. A reserved process is forked which uses this data. During reserved, cluster_info is created which contains the public IP address of each computer assigned to the request. When cluster_info is created, the previously retrieved data is used. As a result, the only IP addresses which would be correct are the ones which haven't changed since vcld originally retrieved the data.