In the latest Google Webmaster Help video, Matt Cutts responds to a question about geo-location:
Using geo-detection techniques is against Google, I am offering the useful information (price, USPs) to the users based on the geo-location. Will Google consider this as spam? i.e. showing X content to search engines and Y content to users.
“Geo-location is not spam,” he says. “As long as you’re showing, ‘Oh, someone’s coming from a French IP address, let’s redirect them to the French version of my page or the French domain for my business,’ that’s totally fine. Someone comes in from a German IP address, I’ll redirect them over to the German version of my page – that’s totally fine. The thing that I would do is make sure that you don’t treat search engines any differently than a regular user. So if Googlebot comes in, you check the IP address, imagine that we’re coming from the United States, just redirect Googlebot to the United States version of your page or the .com, – whatever it is that you would serve to regular United States users. So geo-location is not spam. Google does it.”
“Whenever users come in, we send them to what we think is the most appropriate page based on a lot of different signals, but usually the IP address of the actual user,” he adds.
The last part of the question (the X content to search engines and Y content to users part), he says, is cloaking, and is something he would be “very careful about.”
The point is, just treat Googlebot like every other user, and you should be fine.