En este post se representará un escenario donde simulamos que redes de internet se están comunicando con una red ISP a través de un Carrier. Los prefijos y ASN utilizados son sólo para emular el laboratorio generado en eve-ng
Configuración de router Facebook
Este router se usa para simular comunicación hacia Facebook. Como el router tiene su propio ASN esta publicando el prefijo 1.1.1.0/24 mediante BGP.
1 Configurar direccionamiento en las interfaces.
Este equipo tiene dos enlaces, uno hacia el router de Alestra y otro hacia un servidor que es a donde deben conectarse los clientes de la red ISP.
/ip address
add address=1.1.1.1/30 comment=to-Alestra interface=ether1 network=1.1.1.0
add address=1.1.1.5/30 comment=to-Server-Facebook interface=ether2 network=1.1.1.4
2 Anuncio de rutas mediante BGP
Agregamos el ASN dentro de la instancia default del Mikrotik.
/routing bgp instance set default as=100
Agregamos la red para que BGP se encargue de publicarlas a los demás peer.
/routing bgp network add network=1.1.1.0/24 synchronize=no
Establecemos el peer con nuestro vecino.
/routing bgp peer add name=peer-to-alestra remote-address=1.1.1.2 remote-as=300
Configuración de router Google
De la misma forma en como configuramos el router Facebook, en este configuraremos el peer hacia el router Alestra con la diferencia que aquí estamos anunciando dos prefijos, el 2.2.2.0/24 y el 8.8.8.0/24.
1 Configurar direccionamiento en las interfaces.
/ip address
add address=2.2.2.1/24 comment=to-Alestra interface=ether1 network=2.2.2.0
add address=8.8.8.2/24 comment=to-Server-Google interface=ether2 network=8.8.8.0
2 Configurar el enrutamiento BGP
/routing bgp network
add network=2.2.2.0/24 synchronize=no
add network=8.8.8.0/24 synchronize=no
#
/routing bgp instance set default as=200
#
/routing bgp peer add name=peer-to-alestra remote-address=2.2.2.2 remote-as=300
Configuración de router Alestra
Para este laboratorio hemos colocado Alestra como representación de un Carrier, por lo cual sólo hemos puesto valores ficticios con el fin de la práctica. El prefijo anunciado por este router es el 3.3.3.0/24.
1 Configurar direccionamiento en las interfaces.
/ip address
add address=1.1.1.2/30 comment=to-Facebook interface=ether1 network=1.1.1.0
add address=2.2.2.2/24 comment=to-Google interface=ether2 network=2.2.2.0
add address=3.3.3.1/24 comment=to-ISP-Border interface=ether3 network=3.3.3.0
2 Configurar el enrutamiento BGP
#
/routing bgp network add network=3.3.3.0/24 synchronize=no
#
/routing bgp instance set default as=300 redistribute-connected=yes
#
/routing bgp peer
add name=peer-to-facebook remote-address=1.1.1.1 remote-as=100
add name=peer-to-google remote-address=2.2.2.1 remote-as=200
add name=peer-to-isp-border remote-address=3.3.3.2 remote-as=400
#
Configuración de router ISP-Border
Este router viene a representar a un ISP que esta haciendo peering con su Carrier (Alestra para esta práctica), por lo lo que este anuncia su prefijo hacia el Carrier mediante BGP y recibe las rutas de internet en su tabla de ruteo.
1 Configurar direccionamiento en las interfaces.
/ip address
add address=3.3.3.2/24 comment=to-Alestra interface=ether1 network=3.3.3.0
add address=4.4.5.254/24 comment=to-ISP-Core interface=ether2 network=4.4.5.0
2 Configurar el enrutamiento BGP
#
/routing bgp network
add network=4.4.4.0/24 synchronize=no
add network=4.4.5.0/24 synchronize=no
#
/routing bgp instance set default as=400
#
/routing bgp peer add name=peer-to-alestra remote-address=3.3.3.1 remote-as=300
#
Configuración de router ISP-Core
Este router viene a representar un router de agregación donde estamos colocando a los clientes de la red. Se ha puesto que el enlace hacia el borde use las ips públicas de la red para que se pueda natear directamente desde el router core.
1 Configurar direccionamiento en las interfaces.
/ip address
add address=4.4.5.2/24 comment=to-ISP-Border interface=ether1 network=4.4.5.0
add address=192.168.9.254/24 comment=to-Cliente-Final interface=ether8 network=192.168.9.0
2 Colocamos la ruta por defecto hacia el router de borde
/ip route add distance=1 gateway=4.4.5.254
3 Agregamos el NAT para salida a internet de los clientes
/ip firewall nat add action=masquerade chain=srcnat out-interface=ether1
Verificación en cliente final
Si entramos al equipo de laptop que tenemos conectado al ISP-Core, podemos hacer un ping a 8.8.8.8 y veremos como obtenemos respuesta.
Dentro de la tabla de ruteo del Mikrotik ISP-Border podemos ver como se estan recibiendo las rutas de las redes simuladas en internet.
Nota
Dado que tenemos un enlace hacia el router Alestra donde usamos el prefijo completo, la ruta recibida por BGP se observa secundaria respetando la prioridad de las rutas directamente conectadas.
Ayer, 16:49 #2Conclusiones de la práctica.
Escenario 1.- Hacer full routing
Pregunta1.- ¿Alestra va a tomar las rutas de facebook y google cuando haga sesion BGP? Si, En este escenario el router Alestra esta simulando ser un Carrier con conexión directa en los datacenter de Facebook y Google, por lo que recibe directamente las redes medianrte peering BGP.
¿Dónde se ven las rutas? Dado que estamos en un router Mikrotik, las rutas las podemos observar en la tabla de ruteo del router
Vemos que estan las redes 1.1.1.0/24 de facebook y 2.2.2.0/24, 8.8.8.0/24 de google. Debes poder hacer ping al 1.1.1.1, 2.2.2.1 y 8.8.8.8
Para que las rutas se propaguen activamos la opcion redistribute-connected=yes
Pregunta2.- El router ISP-Borde va a tomar las rutas de Alestra, facebook y google cuando haga sesion BGP? Si, las va recibir directamente del carrier alestra. Pero tenemos que habilitar la opcion Redistrbute Connected en BGP
¿Dónde veo las rutas?
Pruebas de PING :
Prueba 2.-
Realizar ping 1.1.1.1 facebook, ping 2.2.2.1 y 8.8.8.8 google. Desde la Laptop
a
¿Cuántos saltos tengo desde la laptop hacia google 8.8.8.8?
¿Cuántos saltos tengo desde la laptop hacia el carrier alestra 3.3.3.1?
¿Cuántos saltos tengo desde la el carrier Alestra hacia google 8.8.8.8?
¿Cuántos saltos tengo desde el ISP-Borde hacia google 8.8.8.8 y faceboo 1.1.1.1?
Prueba 3.-
¿Qué pasa si anuncio solo la red 4.4.5.0/24 en ISP Borde e intento usar la red 4.4.6.0/24 en el router ISP Core, es decir agrego las ips necesarias en ip/address o rutas necesarias en ip/routes. Tendre conexion a google y facebook desde ISP-Core?
Respuesta: No tendras [COLOR=var(--clrSquiggleHighlightTextColor,#000000)]conexion ya que la red 4.4.4.6.0/24 no está anunciada en ISP Borde. Todos los equipos conectados bajo el router ISP Borde no podran usar ips que no esten anunciadas en BGP.
Ver ejemplo de usar red 4.4.6.0/24 sin estar anunciada, No hay Ping
[/COLOR]
¿Cómo resolveriamos esto? La forma más fácil sería que en el ISP-Borde agreguemos el segmento 4.4.6.0/24 dentro de las redes anunciadas hacia el Carrier. Eso se hace en Routing>BGP
Nos vamos a ISP Borde y anunciamos al rede 4.4.6.0/24
Nos vamos a ISP Core y debemos dar ping a google
![]()
hoy, 10:38 #3CONFIGURACION DE ROUTER FACEBOOK
#
/ip address
add address=1.1.1.1/30 comment=to-Alestra interface=ether1 network=1.1.1.0
add address=1.1.1.5/30 comment=to-Server-Facebook interface=ether2 network=1.1.1.4
#
/ip dhcp-client add disabled=no interface=ether3
#
/routing bgp network add network=1.1.1.0/24 synchronize=no
/routing bgp instance set default as=100
/routing bgp peer add name=peer-to-alestra remote-address=1.1.1.2 remote-as=300
#
/system identity set name=Facebook
/tool romon set enabled=yes
#
CONFIGURACION DE ROUTER GOOGLE
#
/ip address
add address=2.2.2.1/24 comment=to-Alestra interface=ether1 network=2.2.2.0
add address=8.8.8.2/24 comment=to-Server-Google interface=ether2 network=8.8.8.0
#
/routing bgp network
add network=2.2.2.0/24 synchronize=no
add network=8.8.8.0/24 synchronize=no
/routing bgp instance set default as=200
/routing bgp peer add name=peer-to-alestra remote-address=2.2.2.2 remote-as=300
#
/system identity set name=Google
/tool romon set enabled=yes
#
CONFIGURACION DE ROUTER ALESTRA
#
/ip address
add address=1.1.1.2/30 comment=to-Facebook interface=ether1 network=1.1.1.0
add address=2.2.2.2/24 comment=to-Google interface=ether2 network=2.2.2.0
add address=3.3.3.1/24 comment=to-ISP-Border interface=ether3 network=3.3.3.0
#
/routing bgp network add network=3.3.3.0/24 synchronize=no
#
/routing bgp instance set default as=300 redistribute-connected=yes
#
/routing bgp peer
add name=peer-to-facebook remote-address=1.1.1.1 remote-as=100
add name=peer-to-google remote-address=2.2.2.1 remote-as=200
add name=peer-to-isp-border remote-address=3.3.3.2 remote-as=400
#
/system identity set name=Alestra
/tool romon set enabled=yes
#
CONFIGURACION DE ROUTER ISP-BODER
#
/ip address
add address=3.3.3.2/24 comment=to-Alestra interface=ether1 network=3.3.3.0
add address=4.4.5.254/24 comment=to-ISP-Core interface=ether2 network=4.4.5.0
#
/routing bgp network
add network=4.4.4.0/24 synchronize=no
add network=4.4.5.0/24 synchronize=no
#
/routing bgp instance set default as=400
#
/routing bgp peer add name=peer-to-alestra remote-address=3.3.3.1 remote-as=300
#
/system identity set name=ISP-Border
/tool romon set enabled=yes
#
CONFIGURACION DE ROUTER ISP-CORE
#
/ip address
add address=4.4.5.2/24 comment=to-ISP-Border interface=ether1 network=4.4.5.0
add address=192.168.9.254/24 comment=to-Cliente-Final interface=ether8 network=192.168.9.0
#
/ip firewall nat add action=masquerade chain=srcnat out-interface=ether1
#
/ip route add distance=1 gateway=4.4.5.254
#
/system identity set name=ISP-Core
/tool romon set enabled=yes
#
CONFIGURACION DE SERVER FACEBOOK
CONFIGURACION DE SERVER GOOGLE