Proxies para email marketing

Antes de una campaña limpias la lista y ves dónde cae el correo. Ambas cosas chocan con la misma IP: el servidor de correo limita los accesos frecuentes desde una dirección. Un pool MIX de hasta 25.000 IP reparte las comprobaciones entre miles de direcciones, así que validar una lista de un millón corre en miles de hilos. Una hora de prueba cuesta $1.

  • El tráfico no se cobra
  • Pool verificado cada 5 minutos
  • Reembolso en paquetes desde 3 días
Ver precios
Los correos se reparten a las direcciones de los destinatarios a través de una red de nodos proxy

El precio para tu volumen

Elige un paquete y mueve el periodo y el número de hilos. Un hilo es una conexión SMTP abierta en ese momento: un validador con 2.100 hilos comprueba 2.100 direcciones a la vez. A ese caso apunta el control.

MIX-Elite está hecho para validación industrial y monitoreo de entregabilidad: listas de decenas de millones, pruebas de bandeja desde varios países, pasadas programadas. El pool más grande, 25.000 direcciones, e hilos hasta 9.900. La comprobación SMTP necesita muchos hilos, por eso el widget abre en 2.100, el inicio recomendado.

1 mes
2.100+40%

Un hilo es una conexión simultánea. Más hilos: más trabajo hecho en el mismo tiempo.

$210
≈ $7 / díapor 30 días

$150 por un mes+ $60 por hilos

ahorro $630 vs. diario
reembolso del resto
  • 1 hora — $1
  • 1 día — $20
  • 3 días — $40
  • 1 semana — $70
  • 2 semanas — $100
  • 1 mes — $150
  • 3 meses — $360
  • 6 meses — $675
Comprar proxies — MIX-Elite

Cómo conectar los proxies a la validación de listas

  1. 1
    Compra una hora por $1 e indica la IP del servidor donde corre el validador.

    La lista blanca abre el acceso al propio servidor, el validador no tiene dónde meter usuario ni contraseña. Hasta diez direcciones en la lista.

  2. 2
    Copia en tu panel el enlace a la lista de proxies.

    La respuesta llega en texto plano: dirección y puerto, un proxy por línea. El mismo enlace terminado en .csv añade una columna uptime, útil para elegir las direcciones más estables.

  3. 3
    Carga el enlace en el validador como fuente de proxies.

    MailList Verify, BriteVerify y los verificadores caseros toman la lista por enlace y la releen solos. Un script propio en Python se arma a partir del ejemplo de abajo.

  4. 4
    Pon los hilos sin superar los puertos del paquete.

    500 en Basic, 1.000 en Business, 1.500 en Elite sin ampliar, hasta 9.900 con ampliación. Una conexión SMTP sale por un puerto, y en una lista grande los hilos deciden el tiempo de la pasada.

  5. 5
    Comprueba la dirección por SMTP en vez de enviar un correo.

    El validador saluda al servidor de correo del dominio y pregunta por la dirección con el comando RCPT; un 250 significa que el buzón existe. No sale ningún correo y la reputación del dominio no se gasta.

Así se valida una lista desde Python. El script lee las direcciones de emails.txt, busca el MX del dominio de cada una, abre SMTP por un proxy aleatorio de la lista y escribe valid, invalid o unknown en checked.csv según la respuesta al RCPT. Sustituye PROXY_LIST_URL_FROM_DASHBOARD por el enlace de tu panel.

# pip install requests dnspython PySocks
import random, smtplib, socks, requests
import dns.resolver
from concurrent.futures import ThreadPoolExecutor

PROXY_LIST_URL = "PROXY_LIST_URL_FROM_DASHBOARD"
THREADS = 2100
HELO_DOMAIN = "yourdomain.com"
FROM_ADDR = "check@yourdomain.com"

proxies = [line.strip() for line in requests.get(PROXY_LIST_URL, timeout=15).text.splitlines() if ":" in line]

class ProxySMTP(smtplib.SMTP):
    def __init__(self, proxy, host, port=25, timeout=15):
        self.proxy = proxy
        super().__init__(host, port, timeout=timeout)

    def _get_socket(self, host, port, timeout):
        proxy_host, proxy_port = self.proxy.split(":")
        sock = socks.socksocket()
        sock.set_proxy(socks.SOCKS5, proxy_host, int(proxy_port))
        sock.settimeout(timeout)
        sock.connect((host, port))
        return sock

def mx(domain):
    records = dns.resolver.resolve(domain, "MX")
    return str(min(records, key=lambda r: r.preference).exchange).rstrip(".")

def check(email):
    try:
        smtp = ProxySMTP(random.choice(proxies), mx(email.split("@")[1]))
        smtp.ehlo(HELO_DOMAIN)
        smtp.mail(FROM_ADDR)
        code, _ = smtp.rcpt(email)
        smtp.quit()
        return email, "valid" if code == 250 else "invalid"
    except Exception:
        return email, "unknown"

emails = [line.strip() for line in open("emails.txt") if "@" in line]
with ThreadPoolExecutor(THREADS) as pool, open("checked.csv", "w") as out:
    for email, status in pool.map(check, emails):
        out.write(f"{email};{status}\n")
        print(email, status)

Qué paquete elegir para email marketing

MIX-Basic

8.000 IP · 500–900 hilos

desde $50 al mes

Limpieza puntual de la lista y prueba de bandeja. Tómalo con decenas de miles de direcciones y una pasada al mes.

MIX-Business

16.000 IP · 1.000–1.400 hilos

desde $100 al mes

Paquete para servicios y trabajo regular: un millón de direcciones por pasada, control de entregabilidad por dominios.

MIX-Elite

25.000 IP · 1.500–9.900 hilos

desde $150 al mes

Paquete para validación industrial: decenas de millones de direcciones, hilos hasta 9.900, pasadas programadas.

Cinco ajustes que cuidan el pool y la lista

  • Una conexión SMTP por un proxy, la siguiente por otro. El servidor cuenta accesos por dirección y devuelve un fallo temporal ante RCPT frecuentes.
  • Saluda con un dominio real en HELO y pon una dirección de retorno real en MAIL FROM, o algunos servidores cortan la conexión antes de responder.
  • Una respuesta 4xx no es 'la dirección es mala' sino 'reintenta luego': aparta la dirección y pásala otra vez por otro proxy.
  • Mantén un timeout de 15 segundos: una conexión SMTP colgada ocupa un hilo más que una decena de comprobaciones normales.
  • Antes de la pasada, ordena la lista por uptime y toma las direcciones más estables; el script de abajo lo hace.

Preguntas sobre proxies para email marketing

01¿Puedo enviar correos directamente por vuestro pool?
El pool resuelve las dos tareas alrededor de la campaña: validar la lista por SMTP y comprobar dónde cae el correo. El envío en sí de miles de correos hazlo desde un dominio calentado y su propio SMTP: los sistemas de correo juzgan la reputación de la IP que envía, y una dirección ajena del pool solo daña la entregabilidad.
02¿Cuántas direcciones por hora comprobará el pool?
El servidor limita el ritmo de RCPT por IP. Con pausas, una dirección soporta cientos de comprobaciones por hora, y el pool las paraleliza: las 8.000 de Basic comprueban listas de cientos de miles, las 25.000 de Elite varias veces más rápido. La velocidad exacta para tus dominios la sacas en una hora de prueba.
03¿Por qué el widget ya marca 2.100 hilos?
La comprobación SMTP son miles de conexiones cortas seguidas, y los hilos deciden el tiempo de la pasada. 2.100 es el inicio recomendado para Elite: el pool aguanta ese número y una lista de un millón se despacha en horas, no en un día. El control llega a 9.900 si la lista es mayor.
04¿Con qué se autentica el validador?
Con su propia IP: los proxies aceptan peticiones desde las direcciones que añadiste en el panel, hasta diez por cuenta, y no hay dónde meter usuario ni contraseña. ¿Mudaste el validador a otro servidor? Cambias la dirección en la lista y listo.
05¿Cómo elijo las direcciones más estables?
El CSV del mismo enlace trae una columna uptime. Toma la lista en CSV: columnas ip, port, country, speed, uptime, real_ip separadas por punto y coma. El script de abajo ordena por uptime y escribe las direcciones de arriba en un archivo, para que la comprobación vaya por las que más tiempo siguen online.
import csv, io, requests

CSV_URL = "PROXY_LIST_URL_FROM_DASHBOARD.csv"
TAKE = 2100
OUT_FILE = "proxies_stable.txt"

text = requests.get(CSV_URL, timeout=15).text
rows = list(csv.DictReader(io.StringIO(text), delimiter=";"))
rows.sort(key=lambda r: int(r["uptime"]), reverse=True)
picked = [f"{r['ip']}:{r['port']}" for r in rows[:TAKE]]

with open(OUT_FILE, "w") as f:
    f.write("\n".join(picked) + "\n")
print(f"{len(picked)} proxies saved to {OUT_FILE}")
06¿Y si las respuestas de los servidores no convencen?
Para eso está la hora de $1: pasa un trozo de la lista y mira cómo responden los servidores de correo. Un paquete desde 3 días se cancela en el panel cualquier día, el tiempo usado se recalcula a la tarifa normal y el resto vuelve a tu saldo.

Las dudas generales sobre el servicio están en las preguntas generales, la tabla completa de planes en la página principal.

Empieza con una hora por $1

Pasa un trozo de la lista por el pool una hora, mira cómo responden los servidores y luego elige el periodo. En paquetes desde 3 días el resto vuelve a tu saldo.

Probar proxies por $1
INICIAR SESIÓN/REGISTRARSE