La forma más fiable de ver anuncios y resultados de búsqueda locales exactamente como los ve un usuario doméstico de otro país es ejecutar un navegador headless en un servidor cuya IP de salida sea una dirección residencial real registrada a un ISP local. El Servidor de IP Residencial Nativa de IMIDC ofrece justo eso: un servidor con un bloque /24 completo de 253 IPv4 residenciales nativas en Taipéi, Kuala Lumpur, Tokio, Seúl, Johannesburgo o Bangkok, desde $2,188/mes, para que cada comprobación salga por la IP de banda ancha doméstica local que usted elija.
Idea clave: lo que ve un usuario depende mucho del país, el idioma y el tipo de red desde la que se conecta, así que la verificación debe hacerse desde una conexión del mismo tipo.
Los buscadores y las plataformas publicitarias localizan de forma muy agresiva. Una misma búsqueda en Google desde Taipéi, en Yahoo! JAPAN desde Tokio o en Naver desde Seúl devuelve posiciones orgánicas, resultados locales, anuncios de shopping y espacios publicitarios distintos a los de Singapur o EE. UU. Las redes de afiliados y las tiendas online van más allá: según la ubicación del visitante cambian la moneda, los precios, las promociones, los avisos de cookies o incluso la oferta que se muestra.
Idea clave: muchas redes publicitarias y sitios web clasifican a los visitantes por tipo de IP, y una IP de centro de datos se trata a menudo como tráfico no humano o de «hosting».
Las bases de datos de inteligencia de IP etiquetan los rangos como residenciales, ISP/empresa, móviles o de hosting. Las plataformas publicitarias usan esas etiquetas para filtrar fraude, y algunos sitios para defenderse de bots o decidir qué contenido servir. Al revisar desde rangos de centro de datos, los equipos suelen encontrar más CAPTCHAs, menos anuncios o ninguno, contenido genérico en vez de localizado y ofertas de afiliados ocultas o redirigidas. Nada de esto es universal ni está documentado, y precisamente por eso conviene que su punto de vista coincida con su audiencia real: local, de banda ancha doméstica y registrado a un ISP nacional.
Eso no significa ser invisible ni estar «limpio»: una IP residencial de IMIDC es una dirección real con historial real, y no se garantiza que carezca de reputación previa ni que nunca reciba un desafío. Simplemente le da el mismo tipo de conexión que usan sus clientes.
Idea clave: una VPN sirve para una mirada manual ocasional y un VPS de centro de datos para sondas de latencia y disponibilidad, pero la evidencia repetible con visión residencial requiere un servidor de IP residencial.
| Método | Tipo de IP que suelen ver los sitios | IP de origen fija y conocida | Automatización en la misma máquina | Puntos de vista | Ideal para |
|---|---|---|---|---|---|
| VPN de consumo | Mayormente centro de datos, compartida con muchos usuarios | No, cambia en cada sesión | Limitada, normalmente en su portátil | Depende del proveedor | Comprobaciones manuales rápidas |
| VPS de centro de datos (p. ej., VPS Japón de IMIDC desde $28/mes) | Hosting / centro de datos | Sí | Sí | Una o pocas IP | Sondas de disponibilidad, latencia, CDN y DNS |
| IMIDC Native Residential IP Server | Residencial, ISP local | Sí, se elige por sesión | Sí, los navegadores headless corren en el servidor | Hasta 253 IP por país | Verificación repetible de anuncios, SEO y precios con evidencia |
Idea clave: asigne a cada comprobación su propia IP de origen, ejecute Playwright en el servidor y guarde una captura y el HTML en cada ejecución.
Chromium no puede enlazarse por sí mismo a una dirección de origen, así que el patrón más sencillo es un pequeño servidor SOCKS5 local por cada IP de observación, cada uno con su salida ligada a una de sus 253 direcciones. Los ejemplos usan el rango de documentación 203.0.113.0/24 en lugar de su bloque real.
# 1) Confirm the server holds the /24 and test one source IP
ip -4 addr show dev eth0 | grep 203.0.113.
curl -s --interface 203.0.113.21 https://example.com/ip
# 2) One tiny SOCKS5 listener per vantage IP (microsocks, -b = bind/egress address)
microsocks -i 127.0.0.1 -p 1081 -b 203.0.113.21 & # check A
microsocks -i 127.0.0.1 -p 1082 -b 203.0.113.22 & # check B
Después, apunte cada contexto de navegador de Playwright al puerto de la IP que desee y ajuste el idioma y la zona horaria al mercado, para que la página se renderice como la pediría un navegador local:
# adcheck.py - Playwright, one browser context per source IP
import asyncio, datetime, pathlib
from playwright.async_api import async_playwright
CHECKS = [
{"name": "tw-google", "port": 1081, "locale": "zh-TW", "tz": "Asia/Taipei",
"url": "https://www.google.com.tw/search?q=example+keyword&hl=zh-TW&gl=tw"},
{"name": "tw-landing", "port": 1082, "locale": "zh-TW", "tz": "Asia/Taipei",
"url": "https://example.com/offer?utm_source=affiliate"},
]
async def run(check, browser):
ctx = await browser.new_context(
proxy={"server": f"socks5://127.0.0.1:{check['port']}"},
locale=check["locale"], timezone_id=check["tz"],
viewport={"width": 1366, "height": 900})
page = await ctx.new_page()
await page.goto(check["url"], wait_until="networkidle", timeout=60000)
ts = datetime.datetime.utcnow().strftime("%Y%m%dT%H%M%SZ")
out = pathlib.Path("/srv/evidence") / check["name"]
out.mkdir(parents=True, exist_ok=True)
await page.screenshot(path=str(out / f"{ts}.png"), full_page=True)
(out / f"{ts}.html").write_text(await page.content(), encoding="utf-8")
await ctx.close()
async def main():
async with async_playwright() as p:
browser = await p.chromium.launch(headless=True)
for c in CHECKS: # sequential on purpose: low, polite volume
await run(c, browser)
await browser.close()
asyncio.run(main())
Si prefiere un aislamiento más fuerte, ponga cada IP en su propio espacio de nombres de red de Linux (ip netns add tw01, mueva allí una interfaz macvlan con esa IP y lance el navegador con ip netns exec tw01). Así nada de la sesión puede salir por otra dirección, y las cookies y la caché quedan separadas por comprobación.
Idea clave: un calendario moderado y regular le da datos de tendencia y pruebas para reclamaciones sin generar mucho tráfico automatizado.
# crontab -e : run every 6 hours, keep a log, prune evidence after 90 days
0 */6 * * * /usr/bin/python3 /opt/adcheck/adcheck.py >> /var/log/adcheck.log 2>&1
30 3 * * * find /srv/evidence -type f -mtime +90 -delete
Los anuncios rotan y las posiciones fluctúan, así que una sola captura demuestra poco; una serie de capturas con fecha desde la misma IP local muestra patrones. Sincronice la carpeta de evidencias con su propio almacenamiento y, cuando plantee un problema a una red publicitaria o a un socio afiliado, envíe la captura, la instantánea HTML y la IP y la hora en que se tomó. El puerto de 100 Mbps sobra para cargas y subidas de este tamaño.
Idea clave: verifique, no manipule; mantenga un volumen bajo y respete los términos de cada plataforma.
Idea clave: contrate puntos de vista residenciales solo en los mercados que realmente necesita verificar.
IMIDC ofrece el Native Residential IP Server con 253 IPv4 residenciales nativas registradas a un ISP local en Taipéi, Tokio y Seúl, además de Kuala Lumpur, Bangkok y Johannesburgo. Los precios parten de $2,188/mes en Taipéi y todos los planes se pueden contratar en línea.
Las plataformas publicitarias y los sitios web suelen clasificar los rangos de IP como hosting o residenciales y pueden filtrar, deslocalizar o desafiar el tráfico de hosting. Comprobar desde una IP residencial del país objetivo le acerca a lo que ven los usuarios locales reales, aunque la personalización y la rotación de anuncios siguen influyendo.
Los buscadores restringen las consultas automatizadas en sus términos, así que priorice las herramientas y API oficiales, mantenga las comprobaciones con navegador en un volumen bajo y limítelas a sus propias palabras clave y páginas. Revise los términos vigentes de cada plataforma antes de automatizar nada.
La mayoría de los equipos solo necesita unas pocas IP por mercado, una por escenario o grupo de campañas. El resto de direcciones del /24 puede servir para QA, servicios localizados o la operación de sus propias tiendas en el mismo servidor.
¿Quiere ver sus campañas como las ven los usuarios locales? Contrate un Servidor de IP Residencial Nativa en el mercado que necesite o contacte con ventas de IMIDC para cantidades de IP y países a medida. Si ya es cliente, abra un ticket de soporte para recibir ayuda con las comprobaciones de navegador por IP.