To be fair, as we're mentioning GUPs, you may not need go to so much trouble.
The multiple GUP feature allows you to define a long list of GUPs which is passed onto SEP clients. Using this feature, the SEP Clients then take this list, determine if it is in the same subnet as any of the GUPs, and use one if so.
This is best used if you are able to find a machine to act as a GUP in each of your subnets, but negates the requirement to use Location Awareness. As the logic is performed by the SEP Clients, this is generally easier to implement.
There aren't really any risks to using GUPs per se as it is just a proxy cache for defs, but you do need to consider what SEP clients should do if a GUP fails (i.e. should they not update at all, use a 'backup' GUP, or go straight to the SEPM?).
I'd recommend reading up ont he below article on GUP best practices:
http://www.symantec.com/docs/TECH93813
http://www.symantec.com/docs/TECH95353
If you're still interested in Location Awareness, the Brian's links should sort you out.