Skip to content
IPOK

Cursor IP Check: Observable Browser Exit Signals vs. Local IDE Process Routing

When Cursor IDE shows account restrictions, subscription verification errors, or model request failures, community guides often mix together device identifiers, payment cards, and proxy IPs. On the network side, IPOK scopes its observation strictly to your browser's connection to ipok.io endpoints—combining independent IPv4/IPv6 probes, bounded hosting vs. residential inference, multi-source risk evidence, and on-click WebRTC/DNS checks.

Cursor's internal anti-abuse, account eligibility, and model availability rules are not public; account and billing status follow Cursor's official documentation (https://docs.cursor.com) and in-app notices, and IPOK cannot confirm why an account or request was restricted. The dual-stack, network classification, public risk, and WebRTC/DNS checks on this page are for local browser network self-checking only—they do not imply that Cursor uses those probe metrics as enforcement criteria and never guarantee account or model access.

Your public IP
Try a sample IP
Try sample:

Step 1: Distinguish Browser Exit to ipok.io from Standalone Cursor IDE & Terminal Routing

Cursor runs as a standalone desktop application with local extension hosts, terminal sessions, and MCP subprocesses. Its outbound traffic depends on system proxy settings, IDE HTTP proxy configuration, terminal environment variables (HTTP_PROXY / HTTPS_PROXY), or TUN virtual interfaces—which often differ from how your browser reaches ipok.io.

No web page can inspect local IDE process configurations, environment variables, local machine identifiers (machineId), or private proxy client rules. Always pair the browser diagnostics on this page with your proxy client's live connection logs for Cursor processes and API domains.

Step 2: Probe ip4.ipok.io & ip6.ipok.io Independently and Check RFC 7359 Conditions

IPOK's main card and dual-stack card independently query ip4.ipok.io and ip6.ipok.io to echo each stack's exit IP (without creating an application-level v4/v6 pairing record).

When both IPv4 and IPv6 exits respond, dual-stack reachability by itself is not a leak, and different addresses or ISP labels across the two stacks do not by themselves prove a tunnel bypass. IPOK references RFC 7359 dual-stack tunnel traffic-protection considerations so you can verify against your client routing rules and connection logs whether the other stack left your intended tunnel and exited directly via your local ISP. If the other stack times out or does not respond, that does not prove IPv6 is disabled or absent, nor does it prove safety or absence of a leak.

Step 3: Review Hosting vs. Residential Inference, Public Risk Feeds & On-Click WebRTC/DNS Checks

IPOK combines public ASN/BGP declarations and upstream metadata (such as ipapi.is company.type, asn.type, and is_datacenter) for bounded hosting (35-point contextual floor) vs. residential/ISP inference, and compares GeoIP country (geo.countryCode) with registration country (rdap.country ?? intel.asn.country) for native vs. broadcast clues (see https://ipok.io/en/t/datacenter-or-residential and https://ipok.io/en/t/native-ip). This is heuristic inference, not 100% absolute identification.

Across up to 10 registered risk sources, IPOK shows AbuseIPDB report counts and confidence when returned, while Scamalytics is attempted on explicit IP lookups when the shared cache misses and quota permits (or under narrow residential top-up rules). EvidenceSummary.confidence (and directSources) indicates only whether direct risk flags (Tor 90, blocklists 70, proxy/VPN 65, abuser 55) came from a single source or multiple sources (collection independence unverified). Pair this with the on-click WebRTC probe (contacting Google / Cloudflare public STUN with local ICE parsing and no candidate upload to IPOK) and leak.ipok.io DNS resolver exit check (5 minutes of readable lifetime; expired records become unreadable, are cleared on subsequent session activity, and may remain in memory while idle; falling back to bash.ws only if initial token issuance fails, not a DNS pollution test); see https://ipok.io/en/privacy.

To also check the official Claude region snapshot and connection diagnostics, open the Claude IP Checker.

FAQ

Why does Cursor still show region or account errors when my browser shows a low-risk residential IP on IPOK?

First, your browser's connection to ipok.io may not match the outbound path used by the Cursor desktop app or terminal subprocesses (check your TUN mode, IDE proxy settings, and terminal environment variables). Second, Cursor's internal checks are not public and may involve account history, billing details, or device state. The dual-stack, WebRTC, DNS, and risk checks on this page are for local browser network self-checking only and do not imply that Cursor uses those probe metrics as enforcement criteria; check https://docs.cursor.com and official prompts.

What if ip4.ipok.io and ip6.ipok.io show different exits, or the other stack does not respond?

Different addresses or ISP labels across the two stacks do not by themselves prove a tunnel bypass (a dual-stack tunnel or separate protected exits may also present different addresses). It may indicate single-stack coverage or different outbound policies, which you should verify against your client routing rules and connection logs—a bypass under RFC 7359 only applies once you confirm the other stack left your intended tunnel and exited directly via your local ISP. If the other stack times out or does not respond, that does not prove IPv6 is disabled or absent, nor does it prove safety.

Does this page read my local Cursor machineId or upload WebRTC ICE candidates?

No. A browser page cannot read local IDE configuration files or machine identifiers. The WebRTC probe runs only on click and parses ICE candidates locally in your browser without sending them to IPOK. Records on our self-hosted leak.ipok.io DNS test domain have 5 minutes of readable lifetime; expired records become unreadable, are cleared on subsequent session activity, and may remain in memory while idle. See https://ipok.io/en/privacy.

Related checks