This is a simple Python scripts that achieve the purpose of keeping an updated list of IP Address which are active/responding in your network. To achieve that we are using nmap.
By default the scripts is scanning all prefixes with the active status inside your Netbox instance. If you don't want a prefix to get scan, create a new tag 'Disable Automatic Scanning'
Create the tag 'autoscan', this will allow you to quickly know which IP Addresses has been added by the script.
And create the following custom field in Customization, this way you can see when was the last time an ip address has been pinged by the scanning engine.
The more prefixes you want to scan, the more time it will require to finish.
Tested and working with Python 3.12.2 - 3.12.4 and Netbox 3.6.x - 4.0.x
The How-To are located in https://github.com/henrionlo/netbox-nmap-scan/wiki
TODO
- Add DNS server selection for the nmap command in the ini file (if required to have a different one from the system DNS running the script)
- Allow users to disable the DNS part of the script and only run the regular nmap command
- Cleanup of code and import
- Adding more description
- Better logging of errors and debug output
- All-in-One script for easier setup