The iPod Touch does not have a GPS chip (see here).
As such it uses Wi-Fi to obtain an approximate location. The technology Apple uses is licensed from a company named Skyhook - and they've got a nice "How It Works" section on their website.
Basically they attempt to triangulate (or better) Wi-Fi signals your iPod receives whether you are connected to that Wi-Fi network or not (essentially an SSID scan). They have data of their own regarding the actual GPS location of various Wi-Fi signals (which don't tend to move much).
But given that Wi-Fi signals don't exist everywhere (like in the middle of a cornfield in Iowa, or in the basement of a big academic building, etc.) and the lack of GPS on an iPod, your iPod users frequently have no GeoLocation available.
In your case, you're probably using the Requiring the Presence of Location Services in Order to Run aspect of Core Location which does not require GPS, but only requires some location service (i.e. Wi-Fi on an iPod in this case) to be available.
Other options available through granting geolocation access do not require a geolocation to be available and valid, but simply requires that if a location is available, your app can receive the data.
Depends on how you're coding :)