Buenas noches estoy usando una funcion que me arroja mi ip publica ahora mi pregunta es como puedo hacer para obtener mediante mi ip publica mi geolocalizacion para que mi archivo solo sea posible de ejecutar en un rango de ip.
La única forma es que manualmente obtengas el rango de IPs, con que trabajan los operadores de la zona a la que pretendes restringir el acceso.
Esto no será preciso-exacto, pero es lo más que podrías lograr. Además, el cambio de operadores (uno cierra, otro abre), puede con el tiempo malograr el objetivo.
Podría ser más preciso, si la IP se enviara a un servidor (que se mantiene 'actualizado' en el tiempo) y que compara si la IP recibida está en un rango aceptado.
Por supuesto esa limitación será fácil de sobrepasar. Y francamente no veo la utilidad o necesidad de imponer tal limitación (en un PC).