Install the complete package with local command reference and every published mode.
install geogeoUse
Public IP geolocation can be shifted by VPNs, proxies, mobile networks, CDNs and provider routing. -local avoids the remote lookup, but only works when the hosting environment provides a compatible GeoIP extension and database.
geo [host|ip|me] [options]geoshow provider and local GeoIP status
geo meuse the current visitor address
geo -cshow country and continent for the current visitor
geo 8.8.8.8show a brief IP location and network summary
geo example.com -ashow all available location and network fields
geo -dbshow local GeoIP database details
-cshow country and continent
-rshow region, city, postal code and coordinates
-tzshow timezone details
-asn | -isp | -org | -domshow selected network details
-typeshow the IP family
-jsonshow the provider response as formatted JSON
-4 | -6resolve a hostname through IPv4 or IPv6
-localuse the local GeoIP extension only
Run -asn/-isp/-org/-dom for network ownership. -json shows the provider’s returned data; -a requests all supported fields. -4/-6 chooses the address family for hostnames; -local avoids remote lookup when a local GeoIP extension is available. -db checks the local database.
Private and loopback IPs are rejected. Some other special-purpose ranges may pass PHP filtering but still be refused by the geolocation provider. Remote lookups use ipwho.is over HTTPS (with a limited session cache), so avoid querying sensitive addresses without permission. The optional local GeoIP extension may return fewer fields; hosting firewall rules or API outages can block remote lookups. The examples are offline mock responses and deliberately do not claim real locations or contact the provider.
Run the prepared examples directly on the page. Their results are prebuilt and shown in the browser; no terminal command is executed on the server.
Install the current compatible version. Choose Base for the complete feature set or Minimum for the reduced package; use upgrade to update a module that is already installed.
Base and Minimum are two packages of the same current module release, not separate command versions.
Install the complete package with local command reference and every published mode.
install geoInstall the reduced package. Local reference is omitted;
install geo -mInstall exactly this published version.
install geo -v 1.2.4Ask upgrade to check compatibility and replace the installed block only when needed.
upgrade geoRemove the extension block while leaving the core and unrelated modules intact.
install geo -uExamples are copyable command lines, not actions executed by this website. Review paths, permissions and destructive flags before running them on a real project.
geoOffline educational example — not a live lookup
Remote ipwho.is
HTTPS yes
Local GeoIP nogeo -dbOffline educational example — not a live lookup
Local GeoIP database unavailablegeo meOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
Type IPv4
Continent Example continent (XX)
Country Example country (ZZ)
Region Example region (XX-01)
City Example city
Postal 00000
Coordinates 0, 0
ASN AS64500
ISP Example ISP
ORG Example Network
Timezone Etc/UTC (+00:00)geo 8.8.8.8Offline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
Type IPv4
Continent Example continent (XX)
Country Example country (ZZ)
Region Example region (XX-01)
City Example city
Postal 00000
Coordinates 0, 0
ASN AS64500
ISP Example ISP
ORG Example Network
Timezone Etc/UTC (+00:00)geo 8.8.8.8 -aOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
Type IPv4
Continent Example continent (XX)
Country Example country (ZZ)
Region Example region (XX-01)
City Example city
Postal 00000
Coordinates 0, 0
ASN AS64500
ISP Example ISP
ORG Example Network
Domain example.test
Timezone Etc/UTC (+00:00)
Local time 2026-11-01T12:00:00Zgeo -cOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
Continent Example continent (XX)
Country Example country (ZZ)geo 8.8.8.8 -cOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
Continent Example continent (XX)
Country Example country (ZZ)geo 8.8.8.8 -rOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
Region Example region (XX-01)
City Example city
Postal 00000
Coordinates 0, 0geo 8.8.8.8 -tzOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
Timezone Etc/UTC (+00:00)geo 8.8.8.8 -asnOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
ASN AS64500geo 8.8.8.8 -ispOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
ISP Example ISPgeo 8.8.8.8 -orgOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
ORG Example Networkgeo 8.8.8.8 -domOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
Domain example.testgeo 8.8.8.8 -typeOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
Type IPv4geo 8.8.8.8 -jsonOffline educational example — not a live lookup
{
"ip": "8.8.8.8",
"type": "IPv4",
"continent": "Example continent",
"continent_code": "XX",
"country": "Example country",
"country_code": "ZZ",
"region": "Example region",
"region_code": "XX-01",
"city": "Example city",
"postal": "00000",
"latitude": 0,
"longitude": 0,
"connection": {
"asn": 64500,
"isp": "Example ISP",
"org": "Example Network",
"domain": "example.test"
},
"timezone": {
"id": "Etc/UTC",
"utc": "+00:00",
"current_time": "2026-11-01T12:00:00Z"
}
}geo 8.8.8.8 -c -r -tzOffline educational example — not a live lookup
IP 8.8.8.8
Source ipwho.is
Continent Example continent (XX)
Country Example country (ZZ)
Region Example region (XX-01)
City Example city
Postal 00000
Coordinates 0, 0
Timezone Etc/UTC (+00:00)geo 8.8.8.8 -localOffline educational example — not a live lookup
Local GeoIP data unavailablegeo example.test -4 -cOffline educational example — not a live lookup
Target example.test
IP 8.8.8.8
Source ipwho.is
Continent Example continent (XX)
Country Example country (ZZ)geo example.test -6 -cOffline educational example — not a live lookup
Target example.test
IP 2606:4700:4700::1111
Source ipwho.is
Continent Example continent (XX)
Country Example country (ZZ)geo 10.0.0.2Offline educational example — not a live lookup
Public IP address requiredgeo 127.0.0.1Offline educational example — not a live lookup
Public IP address requiredgeo 8.8.8.8 -4 -6Offline educational example — not a live lookup
Choose either IPv4 or IPv6geo 8.8.8.8 -whatOffline educational example — not a live lookup
?geo bad.invalid -cOffline educational example — not a live lookup
Host not foundA field-only