For client-side implementations, this is often done through a CDN. For example, your CDN might set a cookie with geo info for the current user. Then, in javascript you can read the cookie and set it as an attribute in GrowthBook.
We're looking into adding geo attributes automatically in the future since it's such a common use case.