Hey The common way to implement such a thing is using some unique data from the server to identify it. For example, you can check the server MAC address when your software start, send it to your management server and find out if this server allowed to run your software or not. You can also check if there more than one server with this MAC address, so on, but this is just an example nothing more. Most software using this principle but real implementation can vary.