Unless I'm missing it (a strong possibility), it appears that the feature found on the scan agent to remove inactive autodiscovered/dhcp addresses is significantly different than the functionality found on the localhost direct scanning (via the remove_offline_devices.php script).
On the scan agent, it is set via a simple config parameter, runs during the update check, and uses criteria like "autodiscover" being in the description or being flagged as a DCHP address. This is great, but it lacks the timeout value found in the main server scanner.
Conversely, I don't see that the remove_offline_devices script filters for autodiscover/dhcp, so a manually entered IP could be removed by simply being offline for a period, but it does have the timeout features.
I think this inconsistency offers an opportunity for improvement. My first thought would be to allow a filter type to pass as an argument when calling the remove_offline_devices script. This would allow run-time decision on what addresses are being processed simply based on the script call used in the cron. (such as "remove_offline_devices.php DHCP" or "remove_offline_devices.php AutoDiscover") Discrete timeouts for each type would be preferred as well, allowing DHCP removal to be roughly coordinated with lease durations while missing autodiscovered addresses could persist longer if they are outside DHCP pools.
Likewise, a timeout field on the config for the agent, which, from what I can tell processes the DHCP and AutoDiscover addresses immediately.
If I'm missing something obvious on how these functions operate, please let me know.
Unless I'm missing it (a strong possibility), it appears that the feature found on the scan agent to remove inactive autodiscovered/dhcp addresses is significantly different than the functionality found on the localhost direct scanning (via the remove_offline_devices.php script).
On the scan agent, it is set via a simple config parameter, runs during the update check, and uses criteria like "autodiscover" being in the description or being flagged as a DCHP address. This is great, but it lacks the timeout value found in the main server scanner.
Conversely, I don't see that the remove_offline_devices script filters for autodiscover/dhcp, so a manually entered IP could be removed by simply being offline for a period, but it does have the timeout features.
I think this inconsistency offers an opportunity for improvement. My first thought would be to allow a filter type to pass as an argument when calling the remove_offline_devices script. This would allow run-time decision on what addresses are being processed simply based on the script call used in the cron. (such as "remove_offline_devices.php DHCP" or "remove_offline_devices.php AutoDiscover") Discrete timeouts for each type would be preferred as well, allowing DHCP removal to be roughly coordinated with lease durations while missing autodiscovered addresses could persist longer if they are outside DHCP pools.
Likewise, a timeout field on the config for the agent, which, from what I can tell processes the DHCP and AutoDiscover addresses immediately.
If I'm missing something obvious on how these functions operate, please let me know.