Как я могу проверить, находится ли входящий IP-адрес в маске подсети, используя PHP?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как я могу проверить, находится ли входящий IP-адрес в маске подсети, используя PHP?

Сообщение Anonymous »

У меня есть приложение Laravel, в котором я создал промежуточное программное обеспечение для маршрута API для проверки IP-адреса запроса по белому списку IP-адресов, хранящемуся в файле .env (я хотел бы сохранить IP-адреса в таблице базы данных, но не уверен в этом). лучший способ хранить IP-адреса с подсетью, но это вопрос для другого дня).
Теперь мне нужно добавить IP-адрес с маской подсети в белый список. Как я могу изменить приведенный ниже код, чтобы проверить, находится ли IP-адрес запроса в диапазоне подсети?
$requestIP = '12.23.34.56';

// Original array of IP addresses
// $whitelist = collect([
// '127.0.0.1',
// ]);

$whitelist = collect([
'127.0.0.1',
'12.23.34.0/27'
]);

if ($whitelist->contains($request->ip())) {
return $next($request);
}

abort(response('Unauthorized IP', 403));


Подробнее здесь: https://stackoverflow.com/questions/791 ... -using-php
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»