I generally don't ask people what country they're from; I'll ask where they're from and mean where in England/Britain are they from - then they'll either say where, or if they're not from England then they'll say so - leaves it open, though I do worry that it might get misinterpreted as the attitude you're complaining about if I ask someone who isn't Caucasian (and I'd be asking them for the same reason as I'd ask anyone).
It's a bit of a weird q though, and I hate it when people ask me, because I'm white and English but my parents live in Italy - only for a couple of years though and I don't really speak Italian, so I don't really feel I can say I 'come from' Italy even though technically I live there, so i have to explain the whole thing and then put up with people saying 'Oh, you're so lucky etc etc (umm hello, no, the Italian countryside is only nice for holidays IMO). It's a normal enough question but it can get complicated and annoying, especially if you look as though you might not be from England (but then, having said 'I come from Somerset, or up North', or wherever, people should definitely just leave it at that, as clearly that says you're from England.)