Node-locked is actually associated with license activation and not the license directly.
Suppose your customer has a laptop and a PC, you may provide a single license key to your customer with two allowed activations, and your customer can activate the key on laptop and PC. When it happens you can see two activations with the machine names in the dashboard for that license. So this license key has been locked to two machines and cannot be used on a third machine. So, having 2 or more allowed activation also means the license is node locked, it’s just locked to 2 or more machines.
For node-locked you should set allowed deactivations to any value greater than 0, 3 is recommended. It can save you on support requests from your customer. Suppose the above customer buys a new laptop, if you have implemented
DeactivateLicense() in your app, and there is a button or a menu option which user can use to deactivate the license, user can easily deactivate it on the older laptop (freeing an activation slot on license) and reactivate it on new laptop without contacting you. If you set allowed deactivations to 3, the customer can do it three times, on the fourth attempt, the customer would need to contact you.
Floating licenses are different from node-locked, as they are time-based, they auto-deactivate (if lease time is over and the lease is not refreshed), even if you don’t call
DeactivateLicense(). So if lease length is 30 minutes, and you close the app, without calling
DeactivateLicense(), it will automatically deactivate after 30 minutes from the client as well as the server. Having called
DeactivateLicense() would have saved 10 minutes, so some user could have fetched it earlier instead of waiting for 10 minutes (given all activation slots were already taken).
The only type of situation where node locked offers something more would be if the user activates legitimately on computer a computer, then moves or copies the hard drive elsewhere. Am I right?
Copying hard drive won’t move the license, and it will return an error code on the new machine, as fingerprint won’t match. You should almost always use node-locked. Floating licenses have a specific use case which is discussed in the docs:
So unless you have this use case just stick to the node-locked licenses.