Páginas

jueves, 21 de mayo de 2020

Limitar Ancho de Banda y Priorizar Trafico Mikrotik

Necesitamos hacer doble encolamiento. Una cola para el manejo de ancho de banda y otra para priorización de tráfico. Las colas se implementan en un solo lugar. No se puede hacer en el Queue Tree, simultáneamente, en un router administrador con múltiples clientes.

Vamos a usar Simple Queue para el manejo de ancho de banda por usuario.

A partir de RouterOS 6 el número de colas no es relevante, el acceso a las colas no es secuencial sino por hashing. De manera que, podemos tener cientos de colas, que pueden ser creadas manualmente, dinámicamente o utilizando scripts. Eficiente en equipos multicore (3011, 4011, CCR, etc.).

Para la priorización de servicios usaremos Queue Tree

Planes

. 3M/512k
. 4M/1M
. Doble velocidad por las noches

Crear Queue Types.
Queue List - Queue Types

Serán 4 Queue types una para cada velocidad
1. 3M
2. 512k
3. 4M
4. 1M

También vamos a crear 4 Queue types adicionales para la doble velocidad. 6M 1M 8M 2M.

Colas de bajada (DOWN)
Clasifier: Dst. Address

Colas de subida (UP)
Clasifier: Src. Address







Generar Simple Queues para asignar el ancho de banda a cada uno de los clientes, ejemplo.



Priorizar Tráfico

. ICMP
. WEB HTTP/HTTPS
. VoIP
. DNS

IP Firewall MANGLE

Marcar tráfico ICMP



Marcar conexión

Primero marcamos la conexión
No-mark para asegurarnos de que lo que vamos a marcar no tiene una marca previa.

Marcar paquetes ICMP

Marcar los paquetes que van a pasar por esa conexión



Marcar tráfico Web HTTP/HTTPS



Marcar paquetes Web



Nuevo Protocolo QUIC Google un híbrido entre tcp y udp utiliz el IP protocolo 17.

Marcar tráfico QUIC



Marcar paquetes QUIC



VoIP telefonía IP. Lo que hace es enviar audio en paquetes IP. La mayoría utiliza un rango de puertos. También podemos utilizar la utilidad Torch para averiguarlo. 5060-5082 y 10000-20000.

Marcado de tráfico VoIP



Marcado de paquetes



Marcar el resto del tráfico



Marcado de paquetes




De esta manera podemos priorizar tráfico, por ejemplo, para bajar la latencia en los juegos. Recuerde que podemos utilizar Torch para monitorear a que puertos se conecta la aplicación y que protocolos está utilizando. A partir de esa información puede generar un par de reglas para marcar la conexión y marcar el paquete.

Mangle es una estructura pasiva dentro de RouterOS. De manera que no estamos realizando ninguna acción sobre esas conexiones. Estas marcas serán utilizada por otra estructura del Router.

Al hablar de QoS la esctructura es HTB o queue tree. Vamos a hacer uso de esos paquetes para dar prioridad.


Las prioridades van desde 1-8 siendo 1 la mayor prioridad.

La suma de los limit A no puede ser mayor que el valor del padre, en este caso 100M.








El proceso para priorizar tráfico DNS es el mismo.





OpenBSD es genial!.

viernes, 15 de mayo de 2020

VPN PPPoE Mikrotik

Los túneles VPN o los túneles de red privada virtual son un método para abarcar diversas redes de manera que permita que dos dispositivos de red se comuniquen entre sí como si estuvieran en la misma red de área local

PPPoE utiliza el direccionamiento punto a punto exclusivamente.

PPPoE es ampliamente utilizado por grandes proveedores de acceso a Internet por algunas importantes razones:

Proporciona una forma escalable para controlar el acceso a la red. Dado que es un protocolo capa 2, maneja las direcciones IP y las rutas predeterminadas de manera similar a DHCP, por lo que protege la red.

Se integra fácilmente con Radius, una aplicación de servidor que centraliza el control de acceso del usuario.

Permitir numerosos atributos por parte de los servidores de Radius, la creación de colas de velocidad, la asignación de direcciones IP y otras funciones.

Con Radius controlando la red, es simple proporcionar nuevos clientes y desactivar el acceso para aquellos que no pagan sus facturas.

Y como que utiliza direccionamiento punto a punto conserva el espacio IP.

PPPoE Mikrotik

Conectamos un extremo de un cabla ethernet RJ45 al puerto ether4 del router Mikrotik y el otro extremo a mi portátil.

En el puerto ether1 hemos conectado un cable ethernet a un puerto LAN del router de nuestro ISP para configurar la conexión a Internet.

Abrimos Winbox y hacemos un Reset Configuration


En el menú lateral clicamos en IP - DHCP Client - New DHCP Client para obtener una dirección IP y otros parámetros.





El Mikrotik ya tiene conexión a Internet. Renombramos la interfaz ether1 como ether1_WAN, creamos un bridge que llamaremos bridge1_LAN que tendrá los puertos ether2 y ether3. Agregamos comentarios a las interfaces.




Asignamos una dirección IP al bridge_LAN y creamos un DHCP Server para que los clientes que se conecten al bridge_LAN obtengan una dirección IP automáticamente.


Creamos el DHCP Server en el bridge1_LAN utilizando el asistente DHCP Setup. El rango de direcciones IP irá desde la 10.10.10.10 hasta la 10.10.10.254, el gateway 10.10.10.1 y los DNS 1.1.1.1 y 1.0.0.1



A la interfaz ether4 le asignamos una IP 172.16.10.1/29 con fines administrativos y creamos un DHCP Server para que asigne una dirección IP automática y conectarme al equipo a través de IP.


Renombramos los rangos de IP (pools), dhcp1 y dhcp2 a PPPoE y admin respectivamente para facilitar su identificación.


Ceramos Winbox y volvermos a conectarnos esta vez por IP.


Vamos a dar acceso a Internet a los equipos de la red interna LAN creando enmascaramiento.



Configuramos los DNS y permitimos Allow remote request.


Habilitamos PPPoE Server.



Creamos un profile que llamaremos pppoe_20M y marcamos yes en Change TCP MSS. Local address 10.10.10.1 y Remote Address PPPoE que es el rango (Pool) de direcciones IP del DHCP Server configurado en bridge1_LAN, con un límite de 20M simétricos.

Name: susigold
Password: ********
Service: pppoe
Profile: pppoe_20M


En este punto creamos desde PPPoE Servers un New PPPoE Service de nombre pppoe_20M, en la interface bridge1_LAN, Default Profile pppoe_20M, Una sesión por Host y autenticación mschap2.


Desconestamos el cable del puerto ether4_winbox y lo conectamos al puerto ether2 o ether3 del router.

Creamos la conexión PPPoE con estos datos

Nombre de PPPoE: pppoe_20M_service
Nombre de la cuenta: susigold
Contraseña: *********

Clic en Aplicar y luego en Conectar.



Conexiones activas




Reglas básicas del Firewall.


[admin@pppoe] > ip firewall filter print    
Flags: X - disabled, I - invalid, D - dynamic
 0    ;;; impedir salir a Internet red 172.16.10.0/29
      chain=forward action=drop src-address=172.16.10.0/29 log=no log-prefix=""

 1    ;;; permitir conexiones establecidas y relacionadas
      chain=forward action=accept connection-state=established,related log=no log-prefix=""

 2    ;;; drop conexiones invalidas
      chain=forward action=drop connection-state=invalid log=no log-prefix=""

 3    ;;; permitir conexiones establecidas y relativas.
      chain=input action=accept connection-state=established,related log=no log-prefix=""

 4    ;;; drop conexiones invalidas
      chain=input action=drop connection-state=invalid log=no log-prefix=""

 5    ;;; permitir conexiones establecidas y relacionadas.
      chain=output action=accept connection-state=established,related log=no log-prefix=""

 6    ;;; drop conexiones invalidas
      chain=output action=drop connection-state=invalid log=no log-prefix=""

[admin@pppoe] > ip firewall nat print
 0    ;;; traducción de direcciones de red NAT
      chain=srcnat action=masquerade src-address=10.10.10.0/24 src-address-list=""
      out-interface=ether1_WAN log=no log-prefix=""


Mikrotik es genial!.