"Is it possible to do without asking to the user?"
No, not in most cases.
IP based geolocation is a waste of time:
Using IP based Geolocation - and why it's pretty much useless.[
^] - easy to do, but it can;t be relied upon.
And unless your user is on a tablet or phone they probably don't have GPS for you to access - if they would let you get access.
So your best result is to ask them: They may lie to you, but at least they will expect the location to be rubbish in that case!