Как я могу определить страну, из которой исходит IP-адрес от использования С#. Мне нужно использовать это, чтобы проверить, происходят ли соединения из определенной страны.
Как определить, принадлежит ли IP-адрес стране
Ответ 1
Вы можете использовать эти данные SQL в своем проекте, чтобы определить, что: база данных геолокации IP-адресов. Загрузите эти данные и импортируйте их в свою базу данных, чтобы выполнять проверки локально.
Или вы можете использовать их бесплатный API, который возвращает XML, содержащий код страны и название страны. Вы должны сделать запрос на следующий URL-адрес с IP-адресом, который вы хотите проверить, как показано в этом примере:
http://ipinfodb.com/ip_query_country.php?ip=74.125.45.100
Возврат:
<Response>
<Ip>74.125.45.100</Ip>
<Status>OK</Status>
<CountryCode>US</CountryCode>
<CountryName>United States</CountryName>
</Response>
Ответ 2
Просто простой API вызов, например. https://ipapi.co/8.8.8.8/country/
США
Здесь пример С# с рабочая скрипка:
using System;
using System.Net;
using System.IO;
using System.Text;
public class Program
{
public static void Main()
{
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://ipapi.co/8.8.8.8/country/");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
var reader = new System.IO.StreamReader(response.GetResponseStream(), ASCIIEncoding.ASCII);
Console.WriteLine(reader.ReadToEnd());
}
}
Ответ 3
вы можете попросить Google сделать это за вас.
есть также услуги, которые вы можете заплатить за вас:
Ответ 4
Вот бесплатный IP-адрес в базе данных страны.
Ответ 5
Если вы не хотите использовать API, например, hostip.info, тогда я предлагаю подписаться на maxmind и запустить локальную базу данных хоста.
Ответ 6
ip2cc - Поиск в стране и регионе России по IP-адресу Модуль Python с script для создания базы данных с актуальной официальные данные.
Эта утилита Python
загружает (как можно чаще) обновленную информацию из Региональный интернет-реестр (, ripencc
, apnic
, lacnic
, afrinic
), так как показано в источнике:
url_template = 'ftp://ftp.ripe.net/pub/stats/%s/delegated-%s-latest'
sources = {}
for name in ('arin', 'ripencc', 'apnic', 'lacnic', 'afrinic'):
sources[name] = url_template % (name, name)
После загрузки данных запросы могут быть отправлены в автономном режиме и очень быстро.
Может быть легко изменен, чтобы напрямую ответить на исходный вопрос или использоваться из командной строки, чтобы вернуть страну, к которой принадлежит IP address
.
Ответ 7
Другим сервисом, который вы можете использовать, является мой собственный http://ipinfo.io, который возвращает информацию о местоположении, организации и другую информацию:
$ curl ipinfo.io/8.8.8.8
{
"ip": "8.8.8.8",
"hostname": "google-public-dns-a.google.com",
"loc": "37.385999999999996,-122.0838",
"org": "AS15169 Google Inc.",
"city": "Mountain View",
"region": "California",
"country": "US",
"phone": 650
}
Подробнее см. http://ipinfo.io/developers.