A Laravel package for VPN & Proxy Detection by Trustip.io
You can install the package via composer:
composer require trustip/trustipYou need to set TRUSTIP_API_KEY in your .env file before using the package. You can get the API key from Trustip.io
TRUSTIP_API_KEY=your_api_keyYou can publish the config file with:
php artisan vendor:publish --provider="Trustip\Trustip\Providers\TrustipServiceProvider" Or create the config file config/trustip.php and add this code:
<?php
return [
/*
* The API key used to authenticate with the trustip API.
*
* You can get your API key from https://trustip.io
*/
'api_key' => env('TRUSTIP_API_KEY'),
];You can start using Trustip facade :
use Trustip;
$result = Trustip::check('8.8.8.8');After that, you should get an output similar to this:
{
"status":"success",
"data": {
"ip":"8.8.8.8",
"is_proxy":true,
}
}If the IP is proxy the is_proxy will be true if not it will be false you can read more at https://docs.trustip.io
If there's an error, the output will be similar to this:
{
"status":"error",
"message":"Invalid IP address"
}Check all errors on https://docs.trustip.io.
You can also use the isIpProxy helper function in your controllers or other classes:
The
isIpProxywill return false if the check method throws an exception or returns an error
if (isIpProxy('8.8.8.8')) {
// IP is a proxy
} else {
// IP is not a proxy
}Trustip\Trustip\Exceptions\MissingApiKeyExceptionis thrown if the api key is not found in the env file.Trustip\Trustip\Exceptions\InvalidIpAddressExceptionis thrown if the ip address passed to the check method is invalid
If you discover any security related issues, please email support@trustip.io instead of using the issue tracker.
The MIT License (MIT). Please see License File for more information.
