Я ищу быстрый/простой метод для сопоставления заданного IP4 с четким IP-адресом с маской обозначений CIDR.
У меня есть куча IP-адресов, мне нужно увидеть, соответствуют ли они диапазону IP-адресов.
Пример:
$ips = array('10.2.1.100', '10.2.1.101', '10.5.1.100', '1.2.3.4');
foreach ($ips as $IP) {
if (cidr_match($IP, '10.2.0.0/16') == true) {
print "you're in the 10.2 subnet\n";
}
}
Как выглядит cidr_match()
?
Это не должно быть просто, но быстро будет хорошо. Все, что использует только встроенные/общие функции, является бонусом (поскольку я, вероятно, получу одного человека, чтобы показать мне что-то в груше, которое делает это, но я не могу зависеть от груши или того пакета, который установлен там, где мой код развернут).