Your model has been tried before. If you are really worried about people stealing your software then yes your best bet would be to go ahead and ping your license server every time the application starts up. Yes, there is that down side of your server going down and people would not be able to use your application.
For my software I prefer to ping the server the first time the person registers his key in my software and any if they are gong to get updates for my software. This basically allows my users to use their applications freely until they reinstall or get those "awesome" new updates! If they don't get updates they can use the tool without contacting the internet. It is the best situation that I could come up with.
Regardless of what you do, there is always a work around! Hackers will just modify their host files, point your license server locally. They will obviously crack or share your keys. It is a sad world that we live in. So in order to keep your users interested you have to provide them with better content to keep track of illegal use. I recommend after the first time doing this in the background, the users won't be able to get updates anyway, so at this point in time, there is no point in telling them you are re authenticating.
I guess I should add on a couple things. I don't recommend you to host your own license server. You should always outsource this to a larger company if possible. One which will have a guarantee to you that their servers will be operational for a long time. Also, make sure to always have multiple license servers, that way if one goes down another one can kick in.
My company even if it goes down is obligated by contract to always keep that software licensing servers alive for up to 10 years. I know many company's give out yearly licenses to their users, this is another great way to get your users to update or face the consequences.
Again, all of this is a lot of work, and you should make sure that your tool really needs this amount of authentication because so far there isn't really anything that can't be broken.