← Volver al blog

PPPoE server MikroTik: monta tu BNG en RouterOS para ISP

16 de junio de 2026

PPPoE server MikroTik: monta tu BNG en RouterOS para ISP

Si operas un ISP o WISP y todavía autenticas abonados por IP fija o DHCP, sabes lo que duele en la hora peak: sesiones que no cierran, direccionamiento imposible de rastrear, planes que no se respetan y cero visibilidad de quién está conectado. Un PPPoE server MikroTik bien diseñado resuelve eso: cada abonado levanta una sesión autenticada, recibe su IP desde un pool, arrastra su perfil de velocidad y queda visible en tiempo real. En este artículo revisamos cómo montar ese BNG (Broadband Network Gateway) sobre RouterOS, con los menús y comandos reales que vas a tocar en producción.

Por qué un PPPoE server como BNG y no DHCP plano

Un BNG es el punto donde terminan las sesiones de tus abonados y donde aplicas identidad, direccionamiento, control de tráfico y contabilidad. En RouterOS ese rol lo cumple el servicio PPPoE. La diferencia frente a un esquema DHCP plano no es estética: es operativa.

  • Identidad real por sesión. Cada cliente se autentica con usuario y contraseña (PAP/CHAP), no depende de la MAC ni de la buena fe del CPE.
  • Direccionamiento ordenado. La IP se asigna desde un pool contra la sesión, no queda regada en la LAN.
  • Control de plan integrado. El perfil PPP lleva el rate-limit, así que el plan comercial viaja pegado al usuario.
  • Visibilidad y corte. En /ppp/active ves quién está arriba, desde qué MAC y hace cuánto; cortar a un moroso es deshabilitar su secret.

Ese conjunto es lo que convierte un router en un BNG de verdad. El PPPoE server MikroTik no es un módulo aparte: se arma con tres menús que trabajan juntos, más RADIUS cuando escalas.

Las tres piezas: server, profile y secret

La configuración de gestión de abonados en RouterOS vive en /ppp y en /interface/pppoe-server. Antes de escribir comandos conviene tener claro qué hace cada menú, porque es fácil confundir dónde va cada parámetro.

MenúQué definePropiedades clave
/interface/pppoe-server serverEl servicio que escucha en la interfaz de accesoservice-name, interface, default-profile, authentication, one-session-per-host
/ppp/profileValores por defecto del plan: direccionamiento y velocidadlocal-address, remote-address, rate-limit, dns-server, only-one, address-list
/ppp/secretLa base de usuarios local (uno por abonado)name, password, service, profile, caller-id, remote-address

La regla de precedencia importa: los valores en /ppp/secret sobrescriben a los del /ppp/profile —una IP fija definida en el secret gana por sobre el pool que trae el perfil—. Y si usas RADIUS, los atributos que llegan del servidor sobrescriben al perfil por defecto; los que no lleguen se toman del perfil. Tener esa jerarquía clara te evita horas de "por qué este cliente no toma su velocidad".

Montar el PPPoE server MikroTik paso a paso

Este es un armado mínimo y funcional sobre una VLAN de acceso hacia los abonados. Ajusta pools, direcciones y velocidades a tu red.

# 1) Pool de direcciones para los abonados
/ip pool
add name=pool-pppoe ranges=100.64.0.10-100.64.15.254

# 2) Perfil del plan (200M down / 20M up)
# rate-limit desde el router: rx = subida del cliente, tx = bajada del cliente
/ppp profile
add name=plan-200-20 local-address=10.255.0.1 remote-address=pool-pppoe \
    rate-limit=20M/200M dns-server=1.1.1.1,8.8.8.8 only-one=yes \
    address-list=clientes-pppoe

# 3) Un abonado en la base local
/ppp secret
add name=cliente001 password=Sup3rClave service=pppoe profile=plan-200-20

# 4) Publicar el servicio en la interfaz de acceso
/interface pppoe-server server
add service-name=isp interface=vlan-acceso default-profile=plan-200-20 \
    one-session-per-host=yes authentication=chap,mschap2 disabled=no

Un par de detalles que marcan la diferencia en producción. El rate-limit=20M/200M se lee desde el punto de vista del router: rx es la subida del cliente y tx su bajada, así que el orden correcto para un plan de 200 de bajada y 20 de subida es 20M/200M, no al revés. El only-one=yes impide que el mismo usuario levante dos sesiones a la vez, y one-session-per-host=yes en el server bloquea múltiples sesiones desde la misma MAC. Si quieres amarrar un abonado a un equipo específico, el campo caller-id del secret acepta la MAC del cliente escrita en MAYÚSCULAS.

Verificar y operar

Una vez arriba, la operación diaria pasa por pocos comandos:

  • /ppp/active print — sesiones vivas: nombre, MAC (caller-id), uptime, IP asignada.
  • /ppp/secret print — la base de abonados; deshabilitar un secret corta al cliente en el próximo reintento.
  • El address-list del perfil te deja usar la lista clientes-pppoe directamente en el firewall o en reglas de QoS.

Control de plan: rate-limit y burst en el perfil

El corazón comercial del BNG es el rate-limit. RouterOS crea una cola dinámica por sesión con esos valores, sin que tengas que tocar /queue a mano. La forma completa de la propiedad es:

rx-rate[/tx-rate] [rx-burst-rate[/tx-burst-rate] \
  [rx-burst-threshold[/tx-burst-threshold] \
  [rx-burst-time[/tx-burst-time] [priority] \
  [rx-rate-min[/tx-rate-min]]]]]

Con eso puedes ofrecer burst real: por ejemplo, un plan que garantiza 200M pero permite subir un rato a 240M cuando hay holgura, y una priority (1 a 8, donde 1 es la más alta) para que ciertos planes ganen en la cola cuando el enlace se satura. El rx-rate-min/tx-rate-min te da un piso garantizado por abonado, útil para no dejar a nadie sin ancho de banda durante la congestión. Este control es un punto de encuentro natural con el diseño de QoS y traffic shaping: el perfil PPPoE define el límite por cliente y la política de colas define cómo se reparte el troncal en hora peak.

El perfil también admite parent-queue y queue-type (por ejemplo PCQ), lo que te permite colgar todas las sesiones de un nodo bajo una cola padre y modelar el ancho de banda del sector completo, no solo del abonado individual.

Escalar con RADIUS: de la base local al AAA centralizado

La base /ppp/secret local es perfecta para arrancar o para redes chicas. Cuando el ISP crece, mantener usuarios router por router se vuelve inmanejable y ahí entra RADIUS. RouterOS trae un cliente RADIUS que autentica sesiones PPP/PPPoE y envía contabilidad a un servidor central.

  • Autenticación y autorización centralizadas. El servidor RADIUS es la fuente de verdad; el router solo consulta.
  • Precedencia clara. La base local se consulta solo si no hay un registro que calce; los atributos de RADIUS sobrescriben al perfil por defecto, y lo que no llegue se toma del perfil.
  • Contabilidad. Con accounting activo, el uso de cada sesión se reporta al servidor, base para facturación y control de consumo.
/radius
add service=ppp address=10.0.0.3 secret=ClaveRadius \
    timeout=1100ms

/ppp aaa
set use-radius=yes accounting=yes

Con esto, el PPPoE server MikroTik deja de ser un router aislado y pasa a ser el frontend de un sistema de gestión de abonados: altas, bajas, cambios de plan y cortes por mora se administran desde el RADIUS y se reflejan en toda la red. El perfil PPP sigue siendo la red de seguridad para cualquier parámetro que RADIUS no envíe.

Errores frecuentes al desplegar el BNG

  • Invertir el rate-limit. Recordar que rx es subida del cliente; escribir 200M/20M entrega el plan al revés.
  • Olvidar only-one y one-session-per-host. Sin ellos, un cliente puede multiplicar sesiones y romper el conteo de ocupación del pool.
  • Pool mal dimensionado. Si el rango se agota, las sesiones nuevas quedan sin IP aunque el server esté sano.
  • No usar address-list. Es la forma más limpia de enganchar firewall y QoS con los abonados PPPoE sin listar IPs a mano.
  • Autenticación débil. Definir authentication explícito en el server (CHAP/MSCHAP2) en vez de dejar todo abierto.

Si vienes migrando desde IP fija o DHCP, el salto a PPPoE también toca el resto de la red: MTU sobre la interfaz de acceso, direccionamiento con espacio CGNAT, y las reglas de firewall que aplican sobre las sesiones. Vale la pena planificarlo antes de mover abonados en producción; lo detallamos en nuestra página de PPPoE y gestión de abonados, y si ya tienes un BNG operando y necesitas afinarlo, ese es terreno de soporte especializado.

En MikroTik Chile diseñamos, implementamos y operamos BNG PPPoE sobre RouterOS para ISPs y WISPs que necesitan orden en el direccionamiento, control real de planes y visibilidad de cada sesión, con RADIUS y QoS integrados de punta a punta. Si estás montando tu servidor PPPoE desde cero o quieres estabilizar el que ya tienes en la hora peak, conversemos tu caso con un ingeniero.

Conversemos