# 代理位置检查器：验证你的美国城市 IP

> 检查代理出口 IP 属于哪个美国城市、州和 ISP，附带经过语法检查、可直接复制的 curl、Python 和 Node.js 代码。起价 US$0.50/GB，无需 KYC。

- URL: https://metroproxies.com/zh/guides/verify-proxy-city/
- 最后更新: 2026-10-18
- Publisher: MetroProxies (https://metroproxies.com)

在你信任城市级结果之前，先检查出口 IP 实际定位在哪里，以及位于哪个网络。

**快速回答 — 如何检查我的代理 IP 位于哪个城市？**

通过代理向 ipinfo.io 等 IP 查询服务发送一次请求，并读取 city、region 和 org（ASN）字段；然后在目标网站使用的数据库中检查同一 IP。使用 **MetroProxies**（自 US$0.50/GB 起支持城市定向，2026 年 10 月），将结果与你发送的 `city-` 区段进行比对。无需 KYC；支持加密货币。

## 我应该检查什么，按什么顺序？

1. **代理是否可用：**你能收到响应，且 IP 不是你自己的。
2. **州：**几乎所有数据库都一致。州不对意味着请求有误（检查 `state-` 区段）。
3. **城市或都市区：**城市作业中最有用的检查。郊区通常被标为核心城市。
4. **网络（ASN）：**它告诉你该 IP 来自哪家家庭宽带提供商，并让你用 `asn-` 使其保持不变。
5. **目标自身的视角：**许多网站会在页面上显示检测到的位置（门店选择器、“配送至”一行、本地货币或税费）。那才是算数的位置。

在每条结果旁记录 IP、城市、地区和 ASN，以便日后解释异常数据点。

*curl：一次请求，一次查询*

```bash
curl -s --max-time 30 \
  -x http://USERNAME-country-us-state-or-city-portland:PASSWORD@gw.metroproxies.com:7777 \
  https://ipinfo.io/json
```

## 如何在脚本中检查多个城市？

下面的 Python 示例为每个城市请求一个 IP，打印每个出口的定位位置并标记不匹配。它使用 `requests`（`pip install requests`），为每个城市打开新连接，使每个城市获得自己的 IP，并在出错时停止而不是循环重试。将 `USERNAME` 和 `PASSWORD` 替换为你在仪表板中的代理凭据。

*Python 3.10+：检查多个美国城市的出口城市*

```python
import requests

GATEWAY = "gw.metroproxies.com:7777"
USER, PASSWORD = "USERNAME", "PASSWORD"

# (state code, city segment, city name as lookup services usually spell it)
CITIES = [("or", "portland", "Portland"), ("tx", "san_antonio", "San Antonio"), ("fl", "tampa", "Tampa")]


def exit_info(state: str, city: str) -> dict:
    user = f"{USER}-country-us-state-{state}-city-{city}"
    proxy = f"http://{user}:{PASSWORD}@{GATEWAY}"
    with requests.Session() as s:  # a fresh session = a fresh connection = a fresh IP
        r = s.get("https://ipinfo.io/json", proxies={"http": proxy, "https": proxy}, timeout=30)
        r.raise_for_status()
        return r.json()


for state, segment, expected in CITIES:
    try:
        info = exit_info(state, segment)
    except requests.RequestException as e:
        print(f"{segment}: request failed ({e.__class__.__name__}); widen to the state or retry later")
        continue
    city, region, org = info.get("city"), info.get("region"), info.get("org")
    flag = "ok" if city == expected else "check"
    print(f"{segment:12} -> {info.get('ip')}  {city}, {region}  {org}  [{flag}]")

```

*Node.js 18+：用 undici 做同样的检查*

```javascript
// save as check.mjs, then: npm install undici && node check.mjs
import { ProxyAgent, fetch } from 'undici';

const gateway = 'http://gw.metroproxies.com:7777';
const user = 'USERNAME-country-us-state-co-city-colorado_springs';
const token = 'Basic ' + Buffer.from(`${user}:PASSWORD`).toString('base64');

const agent = new ProxyAgent({ uri: gateway, token });
const res = await fetch('https://ipinfo.io/json', { dispatcher: agent, signal: AbortSignal.timeout(30000) });
if (!res.ok) throw new Error(`HTTP ${res.status}`);
const info = await res.json();
console.log(info.ip, info.city, info.region, info.org);
await agent.close();

```

## 如果城市不匹配怎么办？

不匹配很常见，通常无害；先弄清是哪一类。

- **邻近城市或郊区**（Mesa 报告为 Phoenix，Hialeah 报告为 Miami）：各数据库对城市边界的划分不同。检查目标自身的视角；如果它显示正确的都市区，就没问题。
- **都市区正确，州不对**（Kansas City 属于 Kansas 还是 Missouri）：使用州区段并与目标的视角比对；都市区会跨越州界。
- **完全不同的地区：**用新连接重试一次。如果重复出现，请将 IP、时间和你的用户名（绝不要密码）发送给支持团队。

不要逐个挑选 IP，直到某个数据库一致为止：数据库每周都在变化。确定哪个数据库对你的作业重要，并接受它会把一小部分 IP 定位到别处。

## 接下来该去哪里？

先用 [将你的 IP 切换到另一个城市](https://metroproxies.com/zh/guides/proxy-with-specific-city-ip/) 获取 IP，用 [按城市粘性会话](https://metroproxies.com/zh/guides/sticky-sessions-by-city/) 保持它，并在 [准确的城市级代理](https://metroproxies.com/zh/guides/ip-geolocation-accuracy/) 中了解数据库为何不一致。所有指南都在 [指南页面](https://metroproxies.com/zh/guides/)；代码在 [curl](https://metroproxies.com/zh/docs/curl/) 和 [Python](https://metroproxies.com/zh/docs/python/) 文档中。

## 关于位置检查，人们还会问什么？

### 我应该使用哪个 IP 查询服务？

使用最接近你目标的服务：如果你测试的网站使用某个特定的地理定位提供商，就用该提供商检查。对于一般检查，ipinfo.io 及类似服务会在一次 JSON 响应中返回城市、地区和 ASN。遵守每个服务的速率限制。

### 我能在 Google 上检查位置吗？

不能用脚本。Google 的条款禁止无视 robots.txt 的自动访问，而 google.com/robots.txt 不允许 /search。请在设置为该代理的浏览器中手动检查，或对大批量使用经批准的数据提供商。

### 为什么我的浏览器仍显示我的真实时区？

因为代理只更改 IP 地址。浏览器的时区、语言和保存的位置来自你的设备。如果你测试的页面会读取它们，请将其设置为与城市匹配（对于 Portland，为 `America/Los_Angeles`）。

---

MetroProxies: MetroProxies 是一家美国住宅代理服务商，支持城市级定位，加密货币支付，无需上传身份证明。家庭 IP 可按城市、州、ZIP 编码或 ISP 网络申请，覆盖 181 个美国城市，每个城市均提供本地数据页面。
