0% encontró este documento útil (0 votos)
34 vistas53 páginas

Introducción al Routing Estático

Cargado por

Facundo Clivio
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
34 vistas53 páginas

Introducción al Routing Estático

Cargado por

Facundo Clivio
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 53

Capítulo 1

Routing estático

1-1
RE
P
Conceptos básicos
● ¿Que significa ruteo?
○ "Ruteo" (o routing en inglés) es la técnica de crear rutas y el proceso
de elegir el mejor camino hacia un destino. En networking un destino
es una IP o una red IP a la que se intenta hacer llegar la información.

● Hay dos tipos de ruteo:


○ Estático, donde el mejor camino lo elige de forma permanente el
administrador de red.
○ Dinámico, donde ciertos protocolos se encargan de elegir el mejor
camino e incluso cambiarlo en función de estado de la red.

1-2
RE
P
Conceptos básicos
● Tabla de ruteo: contiene una lista de rutas para alcanzar destinos.
Ver [IP → Routes].

1-3
RE
P
Conceptos básicos
● Rutas conectadas: se crean automáticamente al cargar IPs en cualquier interfaz. La porción de
red es la red de la IP ingresada y el gateway es la interfaz donde se colocó dicha IP.
Ejemplo: dst-address=192.168.254.0/24 gateway=ether2

● Ruta por defecto: es la ruta más abarcativa, se conoce como puerta de enlace
predeterminada y es por donde se tratará de alcanzar todos los destinos no conocidos. Esta se
escribe siempre así: dst-address=0.0.0.0/0 gateway=203.0.113.1

● Ruta estáticas: se crean manualmente y definen una red y un determinado gateway por
donde encontrar dicha red. Ejemplo: dst-address=192.0.2.0/24 gateway=198.51.100.1

● Ruta dinámicas: mismo concepto de las rutas estáticas pero creadas automáticamente por
programas conocidos como “Protocolos de ruteo dinámico” o por otros recursos del router.

1-4
RIB - Routing Information Base
● RouterOS tiene una tabla de ruteo, pero muchísimo más versátil.

● La información de ruteo en conjunto la administra la RIB, que es la base


de datos de información de ruteo.

● La RIB procesa la totalidad de la información y completa la FIB


(Forwarding Information Base), que es lo mismo que la tabla de ruteo que
vemos en [IP → Routes].

1-5
RIB - Routing Information Base
Rutas Selección

Rutas Activas

1-6
RIB - Routing Information Base
● All Routes: todas las rutas válidas. Se ven dentro de [IP → Routes] (tabla
de ruteo) en color negro y celeste.

● Route Selection: algoritmo que selecciona las rutas que quedarán como
Activas, basándose en Alcance, Prefijo y Distancia.

● Active Routes: las que realmente se utilizan para el ruteo de paquetes.


Se ven en color negro y además están identificadas con la letra “A”.

● Filters: se utilizan para manipular o descartar las rutas publicadas por


protocolos de ruteo dinámico. Hay filtros de salida y de entrada.
1-7
RIB - Proceso de Selección
El proceso de selección verifica:

● Alcance: la IP del próximo salto debe ser alcanzable (al menos de forma local), esto incluye que
el router tenga una IP de la red del próximo salto y que la interfaz asociada esté activa.

● Prefijo: si dos rutas tienen distinto prefijo, pueden convivir en la misma tabla y estar activas,
pero dos rutas con igual número y prefijo no (en ese caso se desempata por distancia).
○ 10.0.0.0/24 y 10.0.0.0/30 son redes distintas.
○ 10.0.0.0/26 y 10.0.0.0/26 son redes iguales!

● Distancia: si se agregan dos o más rutas indicando el mismo destino:


○ Si la distancia es la misma, sólo una ruta quedará activa.
○ Si la distancia es distinta, la ruta de menor distancia quedará activa.

1-8
Decisión de ruteo
Consideraciones:

● Luego de que la RIB arma la tabla de ruteo (FIB), la decisión de a donde enviar los paquetes,
como ya se explicó, se toma en base a la dirección destino de los paquetes.

● Para reenviar el tráfico, siempre se elige la ruta más específica que corresponda con el destino.
Por ejemplo:

/ip route export


add dst-address=10.20.0.0/16 gateway=10.0.0.1
add dst-address=10.20.0.0/24 gateway=10.0.0.2
add dst-address=10.20.0.0/30 gateway=10.0.0.3

Para la IP destino 10.20.0.50 la ruta más específica es la __________________

1-9
LA
B
Decisión de ruteo
Laboratorio 1: ¿Qué gateway se utilizará para llegar a los siguientes destinos?

1) Para llegar a la IP 10.0.0.5: ___ 3) Para llegar a la IP 192.168.128.1: ___


/ip route export /ip route export
add dst-address=10.0.0.0/24 gateway=A add dst-address=0.0.0.0/0 gateway=A
add dst-address=10.0.0.0/25 gateway=B add dst-address=192.168.0.0/24 gateway=B
add dst-address=10.0.0.0/30 gateway=C add dst-address=192.168.128.1/32 gateway=C

2) Para llegar a la IP 10.1.128.140: ___ 4) Para llegar a la IP 172.16.17.18: ___


/ip route export /ip route export
add dst-address=10.1.0.0/16 gateway=A add dst-address=172.16.0.0/16 gateway=A
add dst-address=10.1.0.0/17 gateway=B add dst-address=172.16.16.0/22 gateway=B
add dst-address=10.1.0.0/25 gateway=C add dst-address=172.16.17.0/30 gateway=C

1-10
Reenvío IP
● El "reenvío IP" (o IP forwarding en inglés) es la técnica que utilizan los
equipos de una red IP, para saber qué hacer cuando reciben un paquete.

● La decisión de reenvío se toma siempre en base a la dirección IP destino,


la cual se compara con las direcciones de las redes conocidas por un
equipo.

● Cuando un equipo que recibe un paquete, puede ocurrir lo siguiente:


(ver siguiente diapositiva)

1-11
Reenvío IP
1. Si el paquete está dirigido a alguna dirección IP del equipo que lo recibe...
→ Acción: el equipo procesa el paquete.

2. Si el paquete está dirigido a una dirección IP fuera de la red del equipo


que lo recibe y dicha red es conocida...
→ Acción: el equipo reenvía el paquete.

3. Si el paquete está dirigido a una dirección IP fuera de la red del equipo


que lo recibe, pero dicha red no es conocida…
→ Acción: el paquete se descarta avisando al remitente.

1-12
Tabla de ruteo
Parámetros: Flags (banderas), Dst. Address, Gateway, Distance, Routing Mark y Pref. Source.

1-13
Tabla de ruteo
Flags: las rutas se identifican rápidamente por estado y clasificación con una combinación de letras:

● Tipo
○ S: Estática
○ D: Dinámica

● Estados
○ A: Activa (si la letra A no está presente significa ruta inactiva).
○ X: Deshabilitada manualmente (sólo para estáticas).

● Tipo de dinámicas
○ C: Conectada (instalada al configurar direcciones IP).
○ o: ruta instalada por OSPF.
○ r: ruta instalada por RIP.
○ b: ruta instalada por BGP.

1-14
Tabla de ruteo
● Dst. Address: red IP destino, en formato a.b.c.d/x.

● Gateway: puede usar una IP o una interfaz PtP (las interfaces ethernet o
wireless no son PtP).

NOTA: Dst. Address y Gateway son parámetros principales de una ruta.

1-15
Tabla de ruteo
● Distance: distancia administrativa, desde la perspectiva del router.
○ Rutas Conectada (C): 0
○ Rutas Estática (S): 1* (variable por el administrador)
○ eBGP (b): 20
○ OSPF (o): 110
○ RIP (r): 120
○ iBGP (b): 200

NOTA: Esta distancia se puede modificar manualmente o con filtros, salvo


en el caso de las conectadas.
1-16
Tabla de ruteo
● Routing Mark: para generar varias tablas de ruteo. Cada marca de ruteo
creada, genera una tabla de ruteo paralela.

● Pref. Source: el “origen preferido”, indica la dirección IP local usada para


los paquetes generados localmente y que son enviados a través de la ruta
en cuestión. En caso de múltiples IPs, se usa la de menor índice.

1-17
Tabla de ruteo - Nexthops
● Monitorea cada gateway mencionado en la tabla de ruteo. Nótese que por más que cierto
gateway esté mencionado varias veces, en ésta tabla los gateways se monitorean una sola vez.

● En principio, se monitorea que la interfaz asociada al gateway esté encendida y con


conectividad IP. Más adelante, se verán otros métodos.

1-18
Rutas estáticas simples
● Dst. Address: red IP destino y prefijo,
respetar el formato a.b.c.d/x.

● Gateway: equipo por el cual llegaremos


al destino en cuestión. Tiene que ser
una IP de una red conectada o puede
ser una interfaz PtP.

● Recordar que una ruta con destino


0.0.0.0/0 implica “todo lo demás” y se
conoce como default gateway o ruta por
defecto.

1-19
Rutas estáticas ECMP
● Las rutas ECMP (múltiples caminos del mismo costo), definen más de un gateway para una
misma red remota y al igual que las rutas estáticas simples, los gateways deben ser IPs de una
red conectada o interfaces PtP.

● Los gateways se usan alternadamente (algoritmo Round Robin), por cada par de IPs
origen/destino (y otros parámetros). Por ende el balanceo de carga es por conexión.

● Un mismo gateway puede mencionarse varias veces para obtener más granularidad. Por
ejemplo para lograr que 75% de las conexiones tome el gateway A y 25% el gateway B.

● Estas rutas se pueden crear estáticamente o a través de un protocolo de ruteo dinámico como
OSPF (es el único que hace esta función).

1-20
Rutas estáticas ECMP
● 33% ó 1/3 del tráfico
sale por la 10.1.2.1.

● 50% ó 1/2 del tráfico


sale por la 172.17.1.1.

● 17% ó 1/6 del tráfico


sale por la 192.168.250.1.

1-21
LA
B
Rutas estáticas ECMP
● Deshabilitar las rutas por defecto creadas en el LAB inicial.

● Agregar una ruta con Dst. Address=0.0.0.0/0 y agregar dos Gateways:


○ 198.51.100.254
○ 203.0.113.254

● Navegar por varios sitios y hacer pruebas con traceroute desde la PC y


verificar que haya tráfico en la wlan1 y wlan2.

● Borrar la ruta ECMP y activar las rutas por defecto originales.

1-22
Opciones avanzadas de ruteo
● Utilizando ciertas opciones, se pueden crear rutas estáticas que aseguren:

○ El mejor camino: Distance.


○ Respaldo: Check Gateway.
○ Balanceo de carga: Routing Mark.

1-23
Opción Distance
● Si dos o más rutas permiten alcanzar un mismo destino, puede forzarse la
preferencia de una en particular, utilizando la opción Distance (Distancia
Administrativa).

● El router dirigirá el tráfico a través de la ruta más específica con menor


distancia. Las otras quedarán inactivas.

● Si la ruta con menor distancia se deshabilita o se vuelve inactiva por


alguna razón, dicha ruta se presentará inactiva. El router entonces elige
una ruta alternativa, que vendría a ser la siguiente con menor distancia.

1-24
Opción Distance

1-25
LA
B
Opción Distance
● Cambiar la distancia administrativa de las rutas por defecto creadas en el
LAB inicial.

● Verificar que se utilice la ruta con menor distancia observando la tabla de


ruteo del router y la herramienta traceroute desde la PC.

1-26
RE
P
Opción Check Gateway
Check Gateway

● Si se activa esta opción para una determinada ruta , se envía un paquete


de verificación cada 10 segundos.

● El paquete de verificación puede ser ICMP o ARP.

● Si hay más de 2 intentos fallidos (timeout), la ruta queda inactiva.

1-27
Opción Check Gateway
Check Gateway

● Válida para rutas estáticas simples y rutas estáticas ECMP.

● Una ruta estática simple se marca inactiva, si el gateway no responde al ICMP o al ARP.

● En el caso de una ruta ECMP (varios gateway), sólo los gateways accesibles serán considerados
por el algoritmo Round Robin.

● Si la opción Check Gateway está habilitada para un gateway dentro de cualquier ruta, afectará
a todas las rutas que tengan ese gateway. Si cierto gateway cae, todas las rutas que lo
mencionan caerán, tengan o no Check Gateway (ver tabla en [IP → Routes → Nexthops]).

1-28
Opción Check Gateway

1-29
LA
B
Opción Check Gateway
● Habilitar check gateway por ping a todas las rutas creadas anteriormente.

● Desde el router.aula una de las dos wlan se va a deshabilitar.

● Verificar en la tabla de ruteo cuales rutas quedaron activas.

1-30
Opción Routing Mark
● Puede asignarse tráfico específico a una tabla de ruteo en particular,
identificando estos paquetes con una routing-mark.

● Las marcas de ruteo pueden asignarse por paquete en la sección


[IP → Firewall → Mangle], y solo en las cadenas prerouting y output.

● Los paquetes con marca de ruteo, no pasarán por la tabla de ruteo main.

● Importante:
○ Cada paquete puede tener una sola routing-mark.
○ Las routing-mark no salen del router, son internas.
1-31
Opción Routing Mark
# Regla de mangle
/ip firewall mangle
add chain=prerouting \
in-interface=ether1 \
action=mark-routing \
new-routing-mark=tabla_isp1 \
passthrough=no

# Ruta por defecto con


routing-mark específica.
/ip route
add dst-address=0.0.0.0/0 \
gateway=198.51.100.254 \
routing-mark=tabla_isp1
1-32
Opción Routing Mark
● Al crear una regla de mangle con action=mark-routing se crea una tabla de ruteo vacía y luego
la ruta generada que incluye el parámetro routing-mark=tabla_isp1 genera este resultado:

1-33
LA
B
Opción Routing Mark
● Crear dos reglas de mangle que marquen los paquetes con distintas marcas de ruteo
dependiendo de la lista en la que se encuentre la IP origen. Ejemplo con para la primer regla:

/ip firewall mangle


add chain=prerouting \
src-address-list=alist_salida-isp1 \
action=mark-routing \
new-routing-mark=tabla_isp1 \
passthrough=no

● Crear una ruta por defecto con gateway=198.51.100.254 y routing-mark=tabla_isp1.

● Crear una ruta por defecto con gateway=203.0.113.254 y routing-mark=tabla_isp2.

1-34
LA
B
Opción Routing Mark
● Agregar la IP de la PC en alguna de las listas creadas anteriormente. Ejemplo:

/ip firewall address-list


add list=alist_salida-isp1 \
address=192.168.1.2

● Hacer un ping y traceroute a IPs públicas y verificar por donde está pasando el tráfico.

● Ejemplo de IPs públicas fáciles de recordar que responden al ping y traceroute:


○ 1.1.1.1
○ 8.8.4.4
○ 8.8.8.8
○ 9.9.9.9

1-35
PBR - Políticas de ruteo
● PBR es ruteo basado en políticas (en inglés Policy Based Routing).

● Las políticas se puede armar con:

○ Las routing-mark como se vió en las páginas anteriores. Tenemos


amplia variedad de parámetros para comparar.

○ Directamente sobre la tabla de ruteo en la sección "Rules"


[IP → Routes → Rules]. Tiene menos parámetros de comparación,
pero es más fácil de configurar.

1-36
PBR - Políticas de ruteo

1-37
Comparador PCC y Balanceo de carga
● El PCC hace clasificación de paquetes, usando una combinación de:
src-address, dst-address, src-port, dst-port.

● Las conexiones pueden marcarse, para definir con ellas marcas de ruteo y
obtener el balanceo de carga.

● Si contamos con dos interfaces WAN (por ejemplo ADSLs con PPPoE) es
posible balancear la carga entre ambos ISPs.

● Configuración sencilla y transparente para los usuarios. Ejemplo:


http://wiki.mikrotik.com/wiki/Manual:PCC.
1-38
Comparador PCC y Balanceo de carga
Utilizando las siguientes características:

● Distance
● Check Gateway
● PCC
● Connection Marks*
● Routing Marks

… se puede generar la función de balanceo


de carga con tolerancia a fallos.

1-39
Balanceo de carga PCC 1/6
● Para el ejemplo se contempla que los 3 ISP tienen IP fija. Configuración de las IPs de cada ISP y
su correspondiente regla de NAT con masquerade.

# Configuración de las IPs.


/ip address add address=192.168.1.1/24 interface=ether5_lan
/ip address add address=192.0.2.2/30 interface=ether1_isp1
/ip address add address=198.51.100.2/30 interface=ether2_isp2
/ip address add address=203.0.113.2/30 interface=ether3_isp3

# Configuración de reglas de NAT por interfaz.


/ip firewall nat add chain=srcnat out-interface=ether1_isp1 action=masquerade
/ip firewall nat add chain=srcnat out-interface=ether2_isp2 action=masquerade
/ip firewall nat add chain=srcnat out-interface=ether3_isp3 action=masquerade

1-40
Balanceo de carga PCC 2/6
● Configuración de la tabla de ruteo main y una tabla de ruteo específica para cada proveedor.

# Configuración de la tabla de ruteo main.


/ip route add gateway=192.0.2.1 distance=1 check-gateway=ping
/ip route add gateway=198.51.100.1 distance=2 check-gateway=ping
/ip route add gateway=203.0.113.1 distance=3 check-gateway=ping

# Configuración de la tabla de ruteo de cada proveedor.


/ip route add gateway=192.0.2.1 distance=1 check-gateway=ping routing-mark=tabla_isp1
/ip route add gateway=198.51.100.1 distance=1 check-gateway=ping routing-mark=tabla_isp2
/ip route add gateway=203.0.113.1 distance=1 check-gateway=ping routing-mark=tabla_isp3

1-41
Balanceo de carga PCC 3/6
● Reglas de prerouting para que el router opere correctamente por la WAN que corresponde.

# Marcar las conexiones entrantes con la marca acorde al proveedor por donde ingresó el pedido.

/ip firewall mangle add chain=prerouting in-interface=ether1_isp1 \


connection-mark=no-mark action=mark-connection new-connection-mark=mc_isp1

/ip firewall mangle add chain=prerouting in-interface=ether2_isp2 \


connection-mark=no-mark action=mark-connection new-connection-mark=mc_isp2

/ip firewall mangle add chain=prerouting in-interface=ether3_isp3 \


connection-mark=no-mark action=mark-connection new-connection-mark=mc_isp3

1-42
Balanceo de carga PCC 4/6
● Reglas de output para que el router opere correctamente por la WAN que corresponde.

# Forzar a que el router responda pedidos por la interfaz por donde fueron iniciados.

/ip firewall mangle add chain=output connection-mark=mc_isp1 \


action=mark-routing new-routing-mark=tabla_isp1 passthrough=no

/ip firewall mangle add chain=output connection-mark=mc_isp2 \


action=mark-routing new-routing-mark=tabla_isp2 passthrough=no

/ip firewall mangle add chain=output connection-mark=mc_isp3 \


action=mark-routing new-routing-mark=tabla_isp3 passthrough=no

1-43
Balanceo de carga PCC 5/6
● División del tráfico utilizando al comparador PCC.

# Balancear o distribuir el tráfico, utilizando el comparador PCC.

/ip firewall mangle add chain=prerouting in-interface=ether5_lan \


connection-mark=no-mark dst-address-type=!local per-connection-classifier=both-addresses:3/0 \
action=mark-connection new-connection-mark=mc_isp1

/ip firewall mangle add chain=prerouting in-interface=ether5_lan \


connection-mark=no-mark dst-address-type=!local per-connection-classifier=both-addresses:3/1 \
action=mark-connection new-connection-mark=mc_isp2

/ip firewall mangle add chain=prerouting in-interface=ether5_lan \


connection-mark=no-mark dst-address-type=!local per-connection-classifier=both-addresses:3/2 \
action=mark-connection new-connection-mark=mc_isp3
1-44
Balanceo de carga PCC 5/6
● NOTA: sobre la linea per-connection-classifier=both-addresses:X/Y

● both-address = clasificador que usa dirección IP origen y destino.


○ src-address: dirección IP origen.*
○ src-port: puerto origen.
○ dst-address: dirección IP destino.
○ dst-port: puerto destino.
○ src-address-and-port: dirección IP origen + puerto origen.
○ dst-address-and-port: dirección IP destino + puerto destino.
○ both-addresses: dirección IP origen + dirección IP destino.*
○ both-ports: puerto origen + puerto destino.
○ both-addresses-and-ports: IP origen + IP destino + puerto origen + puerto destino.

● X = Cantidad de líneas o divisiones.


● Y = Índice de dicha línea o división, comenzando desde cero.

1-45
Balanceo de carga PCC 6/6
● Ruteo del tráfico en base a las marcas de conexión generadas en la diapositiva anterior.

# Enviar el tráfico a la tabla de ruteo correspondiente, acorde a la clasificación realizada con PCC.

/ip firewall mangle add chain=prerouting connection-mark=mc_isp1 \


in-interface=ether5_lan action=mark-routing new-routing-mark=tabla_isp1 passthrough=no

/ip firewall mangle add chain=prerouting connection-mark=mc_isp2 \


in-interface=ether5_lan action=mark-routing new-routing-mark=tabla_isp2 passthrough=no

/ip firewall mangle add chain=prerouting connection-mark=mc_isp3 \


in-interface=ether5_lan action=mark-routing new-routing-mark=tabla_isp3 passthrough=no

1-46
TTL - Tiempo de vida
● El TTL es un número que está embebido en la cabecera IPv4 y se utiliza para indicar el límite de saltos entre
dispositivos capa 3 que un paquetes IP puede experimentar antes de que sea descartado.

● El objetivo del campo TTL dentro del paquete IP, fue pensado para evitar eventuales bucles de ruteo. Pasada
una cantidad de saltos finita, el paquete se descarta y se informa con un paquete ICMP al remitente (ejemplo:
“tiempo de vida agotado”), evitando que el paquete quede saltando indefinidamente por la red IP.

● Reglas:
○ Los dispositivos transmiten paquetes con un valor TTL específico (lo recomendado por defecto es 64,
pero puede variar - ver RFC1122 y RFC1700).
○ Al recibir un paquete, los routers reducen este valor en 1 justo antes de la decisión de reenvío (forward).
○ Un router no reenviará un paquete al próximo dispositivo si recibe un paquete con un TTL=1.

● El valor TTL puede ajustarse en la sección [IP → Firewall → Mangle], con la acción change TTL.

1-47
TTL - Tiempo de vida
# Cambiar TTL a 2 para todos los
paquetes que salgan por bridge_lan.
/ip firewall mangle
add chain=postrouting \
out-interface=bridge_lan \
action=change-ttl \
new-ttl=set:1 \
passthrough=yes

1-48
Ruteo Recursivo
● En ruteo regular, no es posible configurar un gateway remoto. Pero con
ruteo recursivo, es posible definir un gateway incluso si ese gateway no se
encuentra alcanzable de forma directa. Esta técnica también se conoce
resolución “recursive next-hop“ y es posible sólo en la tabla main.

● La regla es que la ruta con el gateway no conectado de forma directa


debe estar al alcance (scope) de una ruta con gateway alcanzable de
forma directa.

● Se utilizan los parámetros “Scope“ y “Target Scope“.

1-49
Ruteo Recursivo
Regla: el “Scope“ de una ruta contiene todas las rutas
cuyo scope sea menor o igual a su “Target Scope“.

1-50
Ruteo Recursivo
● El RT1 no puede activar su ruta por defecto
porque el gateway indica la IP 1.1.1.1,
y RT1 no sabe cómo alcanzar esta IP.

1-51
Ruteo Recursivo
● El RT1 ahora tiene una ruta que le indica cómo llegar a
la 1.1.1.1, aún así la ruta por defecto no pasa a activa.
● Esto se debe a que la ruta por defecto tiene
un “Target Scope” de 10 y no hay ninguna
ruta con “Scope” de 10 o menos que diga como
llegar a la 1.1.1.1. La que hay tiene “Scope” de 30.

1-52
Ruteo Recursivo
● La manera de corregir esto es ampliar el “Target Scope”
de la ruta por defecto para que quede al alcance
(“Scope”) de la ruta que indica como llegar a la 1.1.1.1
(en este ejemplo 30).
● Otra posibilidad es bajar el “Scope” de la ruta que
como llegar a la 1.1.1.1.

1-53

También podría gustarte