BouncerService.php 469 B

1234567891011121314151617181920
  1. <?php
  2. namespace App\Services;
  3. use Illuminate\Support\Facades\Cache;
  4. use Illuminate\Support\Facades\Storage;
  5. use Symfony\Component\HttpFoundation\IpUtils;
  6. class BouncerService
  7. {
  8. public static function checkIp($ip)
  9. {
  10. $knownCloudCidrs = Cache::rememberForever('pf:bouncer-service:check-ip:known-cloud-cidrs', function() {
  11. $file = Storage::get('bouncer/all.json');
  12. return json_decode($file, true);
  13. });
  14. return IpUtils::checkIp($ip, $knownCloudCidrs);
  15. }
  16. }