No, right now the IP address stored is the first one used to activate that particular "slot" of the product key. In the future we might update it to the latest access with a log of IP addresses the machine has been behind.
But, regardless, the IP address shouldn't really be used for anything mission-critical. Why? It can be spoofed, be behind VPNs, proxies, and even just plain old routers. At best it's "interesting information". It's not useful for identifying users.
>> "(our software recheck the activation on every start"
That's overkill. You're forcing customers to always be online (making your software just not work when you're offline). And it punishes customers that launch multiple instances of your software. For example if a customer launches your app 20 times in 1 day do they really need to re-verify with the servers 20-times? No.
Use the IsGenuineEx() function to check at a reasonable frequency. Every 30-days is more reasonable. Even once a week.