Virteche
Guideschevron_rightProxies

Proxies · 5 min read · Updated

How to Test a Proxy: IP, Location, DNS and Speed

To test a proxy, check four things. The exit IP: a request through the proxy should show the proxy's address, not yours. Ownership and location: an IP lookup shows the network (ASN), provider and country that sites will see. Leaks: DNS lookups and, in browsers, WebRTC should not reveal your own address. Speed: time the connection and a download through the proxy. Each takes one command or one web page, below.

1. The Exit IP

curl https://api.ipify.org; echo                                     # your own address
curl -x http://USER:[email protected]:PORT https://api.ipify.org; echo  # through the proxy

The second line should print the proxy's address. Run it a few times: a static proxy returns the same address every time.

2. Who Owns It, and Where It Appears

curl -x http://USER:[email protected]:PORT https://ipinfo.io/json

org shows the network the address belongs to. For an ISP proxy, expect a consumer internet provider there, not a hosting company. country and region are what most sites use for location. If something looks wrong, compare with a second lookup service before concluding anything: location databases differ.

3. DNS Leaks

With an HTTP proxy, the proxy looks up the site's address, so your own DNS resolver never sees which sites you visit. With SOCKS5, it depends on the URL scheme:

curl -x socks5://USER:[email protected]:SPORT https://example.com    # your machine looks up example.com
curl -x socks5h://USER:[email protected]:SPORT https://example.com   # the proxy looks it up

Use socks5h (or your library's “remote DNS” option) to keep lookups at the proxy.

4. WebRTC in Browsers

A browser set to use a proxy can still reveal your own address through WebRTC, which video calls use to connect directly. Open a WebRTC leak test page in the browser that uses the proxy. If it shows your own public address, turn off non-proxied WebRTC: in Chrome and Edge, the WebRtcIPHandling policy set to disable_non_proxied_udp, or an extension that does the same; in Firefox, set media.peerconnection.ice.proxy_only to true in about:config.

5. Speed

Time the connection stages, then a 100 MB download from a public test file:

P=http://USER:[email protected]:PORT
curl -o /dev/null -s -x $P https://example.com \
  -w "proxy %{time_connect}s  tls %{time_appconnect}s  total %{time_total}s\n"
curl -o /dev/null -s -x $P https://proof.ovh.net/files/100Mb.dat \
  -w "%{speed_download} bytes/s\n"

Compare with the same commands without -x. The proxy adds a hop, so some extra time is normal; the distance between you, the proxy and the site matters most.

If a Test Fails

How to fix proxy errors goes through each error message, and ISP vs residential vs datacenter proxies explains what the ownership lookup tells sites about an address.

Common Questions

  • Why do different sites show different cities for the same IP?

    Each site uses its own IP location database, and they disagree, especially at city level. The country and the internet provider are reliable; the city is an estimate.

  • Should the IP change between tests?

    Not for a static ISP proxy: the same address should come back every time. A different address on every request is how rotating proxies behave.

  • Is a proxy the same as a VPN for privacy?

    No. A proxy only carries the traffic of the apps you point at it, and in a browser, features like WebRTC can still reveal your own address. A VPN routes everything from the device.

Static US ISP proxies with an HTTP and a SOCKS5 port on every address.

See proxy pricing

Keep Reading

All guides
How to Test a Proxy: IP, Location, DNS, Speed | Virteche