I do the exact same thing (local business pages based on visitor IP) but you can change your location based on what search terms you enter.
What we also do is allow anyone to browse any state/city results through our faceted search and we have XML sitemap entries for each state/category landing page which will then link down to city level searches.
We have seen no problem with google indexing our site (currently almost 500,000 pages indexed.)
As long as you don't actively hide content that doesn't pertain to the requesting site IP and you provide some way for Google to find it, you should be OK.