- How do I install ip2proxy/ip2proxy-laravel in a Laravel application?
- Install it with Composer using composer require ip2proxy/ip2proxy-laravel. On modern Laravel versions the service provider and facade are auto-discovered, so no manual registration is usually needed. After installing, publish the package config with the vendor:publish Artisan command and point it at your IP2Proxy BIN database file.
- Which Laravel versions does ip2proxy-laravel support?
- Version 1.1.6 added support for Laravel 13, and the package tracks framework major releases closely. That means it now spans at least two framework majors, so check the composer.json constraints for the exact minimum before you upgrade. Because the Laravel 13 support shipped as a patch release, the widened constraint can reach loosely pinned installs without an explicit review.
- Where do I get the IP2Proxy BIN database and how do I configure the path?
- Download a BIN database from the IP2Proxy vendor and store it outside your public webroot so it cannot be fetched over HTTP. Then set the database path in the package config file you published during installation. The free LITE databases have limited coverage and proxy-type detail, so production fraud checks generally need a commercial edition with regular updates.
- How do I detect whether an IP is a VPN or Tor exit node using the facade?
- Resolve the package facade and run a lookup on the client IP address. The result exposes proxy type information such as VPN, Tor exit, open proxy, and web proxy, along with related metadata you can use in your rules. Branch your access control or fraud logic on those flags, and make sure you are passing the real client IP when the app sits behind a load balancer or reverse proxy.
- Does this package support IPv6 lookups?
- Yes, the wrapper performs both IPv4 and IPv6 lookups against the IP2Proxy BIN database. Make sure the database edition you download actually includes IPv6 coverage, since the free variants are more limited. Validate and normalize the address before passing it in so malformed input does not silently produce empty results.
- What is the difference between ip2location-laravel and ip2proxy-laravel?
- IP2Location answers geolocation questions like country, city, and ISP, while IP2Proxy answers anonymization questions such as proxy, VPN, and Tor usage. Many applications use both: geolocate with IP2Location and gate or score traffic with IP2Proxy. They are separate wrappers from the same vendor over different BIN databases, so the configuration workflow feels similar.
- How do I test proxy detection in my Laravel test suite without a real BIN file?
- Bind a fake or mock of the underlying lookup class into the service container so the facade resolves your stub instead of the real database. That keeps tests fast and avoids committing a large BIN file to version control or CI. Assert on your own branching logic, such as what your app does when an IP is flagged as a VPN.
- Is IP2Proxy fast enough to look up every request in production?
- BIN lookups are local binary searches, so they are much faster than calling a remote HTTP API per request. The remaining cost is constructing the lookup object, so bind it as a singleton and cache repeated IP results where it makes sense. Benchmark with your real database edition and traffic pattern rather than assuming.
- What changed in version 1.1.6 of ip2proxy-laravel?
- Version 1.1.6 is a compatibility release that adds Laravel 13 support, with no new features, deprecations, or documented breaking changes to the package's own API. The release notes do not say whether this was a pure constraint widening or required internal code changes. If you pin loosely, review the diff before the update silently enters your lockfile.
- Should I use the IP2Proxy BIN database or the web API in Laravel?
- The BIN approach runs locally, works offline, avoids per-query costs and network latency, and keeps user IP addresses inside your infrastructure. The web API is quicker to start with and always current, but adds latency and depends on external availability. For high-volume fraud prevention, the usual pattern is a local BIN database refreshed on a schedule.