Чтобы получить район / регион / подразделение с IP-адреса, вам необходимо использовать службу геолокации IP. Большинство из них включают такие поля, как регион и координаты в своем ответе. Однако следует помнить, что не во всех IP-адресах будет заполнено это поле, независимо от того, какую службу геолокации вы используете.
Вот фрагмент ответа, использующий Ipregistry :
$ curl https://api.ipregistry.co/144.33.1.2?key=tryout&pretty=true
"location": {
"continent": {
"code": "NA",
"name": "North America"
},
"country": {
"area": 9629091,
"borders": [
"CA",
"MX"
],
"calling_code": "1",
"capital": "Washington D.C.",
"code": "US",
"name": "United States"
},
"region": {
"code": "US-MI",
"name": "Michigan"
},
"city": "Dearborn",
"postal": "48120",
"latitude": 42.31146,
"longitude": -83.19134
}
Когда у вас есть код региона или координаты, вы можете использовать оба, OpenStreetMap или Google Map, чтобы нарисовать то, что вам нужно.