wget -O ipregion.sh https://ipregion.vrnt.xyz
chmod +x ipregion.shbash <(wget -qO- https://ipregion.vrnt.xyz)This runs your IP geolocation check using IPv4 only, without requiring host network mode:
docker run --rm vernette/ipregion:latestYou can append additional script options as needed, for example:
docker run --rm vernette/ipregion:latest --group geoip
To access both IPv4 and IPv6 on the host real network interfaces, or to specify a custom network interface (e.g., eth1), use Docker host network mode:
docker run --rm --network=host vernette/ipregion:latestdocker run --rm --network=host vernette/ipregion:latest --interface eth1Note
When using --network=host, the container shares the host network stack, which reduces network isolation but enables full access to interfaces. Without --network=host, the container uses Docker bridge network, which may not expose IPv6 or allow interface selection
- Multiple GeoIP APIs and web services (YouTube, Netflix, ChatGPT, Spotify, etc.)
- IPv4/IPv6 support with SOCKS5 proxy and custom network interface
- JSON output and color-coded tables
- bash
- curl
- jq
- util-linux/bsdmainutils
./ipregion.sh --help # Show all options
./ipregion.sh --group primary # GeoIP services only
./ipregion.sh --group custom # Popular websites only
./ipregion.sh --ipv4 # IPv4 only
./ipregion.sh --ipv6 # IPv6 only
./ipregion.sh --proxy 127.0.0.1:1080 # Use SOCKS5 proxy
./ipregion.sh --json # JSON output
./ipregion.sh --debug # Debug modeAll options can be combined.
The script outputs country codes in ISO 3166-1 alpha-2 format (e.g., RU, US, DE).
You can look up the meaning of any country code at the official ISO website: https://www.iso.org/obp/ui/#search/code/
Just enter the code in the search box to get the full country name.
Contributions are welcome! Feel free to submit pull requests to add new services or improve the scriptโs functionality.
