Если вам нужно для выполнения этой серверной части, вам понадобится одна из баз данных, которые сопоставляют IP-адреса со странами / городами.Эти базы данных часто устаревают и, как правило, являются коммерческими. Maxmind имеют различные лицензии для своей базы данных, в том числе несколько бесплатных, я считаю.
Однако, если вы можете перенести проверку на клиентскую сторону, в браузере вы можете сделать ajax-вызов бесплатный JSONP API Maxmind для получения приблизительного местоположения вашего пользователя, а затем позволить вашему приложению обрабатывать решения с использованием JavaScript.