Хорошо, сегодня пятница, и у меня была длинная неделя, поэтому буду признателен за помощь!
В настоящее время у меня есть список диапазонов IP-адресов, как показано ниже:
List<IPRange> ipRanges = new List<IPRange>();
ipRanges.Add(new IPRange { From = "145.36.0.0", To = "145.36.255.255" });
ipRanges.Add(new IPRange { From = "194.183.227.184", To = "194.183.227.191" });
ipRanges.Add(new IPRange { From = "193.131.192.0", To = "193.131.223.255" });
После получения IP-адреса клиента, если он находится где-то между этими наборами диапазонов, их необходимо перенаправить в другое место.
Например,
Если кто-то посетит сайт с IP 192.168.0.1
, ему будет разрешен доступ.
Если они посещают с 145.36.1.0
, им не будет разрешен доступ, потому что он находится между первым диапазоном в этом списке.
Я мог бы разделить каждый IP по периоду и выяснить, где диапазон начинает меняться, затем выполнить сравнение, но это было бы тяжело для сервера.
Я знаю, что IP - это просто десятичные числа, но я не совсем уверен, как это работает.
Кто-нибудь сталкивался с этим раньше?
Приветствия, Шон.