Creación de VXLAN en Fortigate
- jogofus
- 6 ene 2024
- 2 Min. de lectura
Empezamos el año, y lo hacemos con esta entrada sobre las vxlan, algo que me parece muy interesante y, aunque es probable que en nuestro día a día no las usemos, creo que todo administrador de sistemas y redes debe conocer y saber implementar.
Lo primero de todo: ¿qué es eso de las vxlan?
VXLAN = Virtual extensible LAN
Simplificando muchísimo, y haciendo referencia a la documentación de Cisco VXLAN es una tecnología que permite superponer una red de capa 2 (L2) sobre una capa 3 (L3) subyacente mediante el uso de cualquier protocolo de routing IP.

Aquí podemos ver el encapsulamiento en Wireshark, siguiendo el modelo OSI.

Imagen tomada de la web http://medium.com
El estándar 802.1Q, sobre el que se trabajan las conocidas vlan, tiene una limitación de 4096 vlan que se pueden crear. Sin embargo, con la llegada en 2014 de las vxlan, este límite es capaz de superar las 16 millones de vxlan posibles.
Según todo esto podemos deducir que esto prácticamente queda reservado a ISP's y Datacenters.
¿De qué se compone vxlan?
Voy a explicar algunos conceptos básicos a tener en cuenta a la hora de trabajar con vxlan:
VTEP: Es el dispositivo que va a encapsular y desencapsular la trama vxlan.
VNI: Identificador de vxlan. Sería algo así como el tag en las vlan.
OuterIP: El destino del VTEP.
Manos a la obra...
Este va a ser un laboratorio sencillo.
Disponemos de lo siguiente:
Hipervisor: Proxmox
Dos FortiOS virtualizados
Dos VM con Debian
Un vmbr0 que conecta los FortiOS en la red 10.178.10.0/24
Un vmbr1 que conecta debian1 con Forti-1.
Un vmbr2 que conecta debian2 con Forti-2
Las VM Debian no se ven entre sí, ya que los vmbr son redes internas.
Conozco mucha gente que usa los firewall (en este caso Forti) con su interfaz gráfica, pero hay cosas en las que hay que meterse dentro, así que abrimos la CLI o nos conectamos por SSH.
Escribimos lo siguiente en el Forti-1:
config system vxlan Entramos en modo config de la vxlan
edit vxlanA Ponemos el nombre que queramos
set vni 5000 VNI de la vxlan
set interface port1 Interfaz donde estará la vxlan
set remote-ip 10.178.10.60 IP del VTEP remoto
Y lo siguiente en el Forti-2:
config system vxlan
edit vxlanB
set vni 5000
set interface port1
set remote-ip 10.178.10.50
Ahora nos vamos a la GUI y podemos ver que se ha creado.
Abrimos Network > Interfaces:
Ahora deberemos crear un software switch entre la vxlanA y los puertos/vlan que queramos que se comuniquen con el otro VTEP. En mi caso no tengo ninguna vlan definida, por lo que voy a seleccionar un puerto físico, que será el port2-.
Hacemos lo mismo en el Forti-2 y veremos que la comunicación ya se establece.
Ahora, la capa 2 del modelo OSI va a ser capaz de "traspasar" la capa 3 y podremos llegar a los destinos con la misma subred al otro lado del VTEP.
Como todos sabemos, cuando hay un enrutador/firewall de por medio, la MAC de origen cambia por la de este último dispositivo.
Con las vxlan, al extender la capa 2, si ponemos un Wireshark/TCPdump escuchando en uno de los equipos, podremos ver que la MAC origen se respeta.
Equipo origen:
Y en el equipo destino, escuchando con TCPdump:
¡Funcionó!
En próximas entradas veremos como usar lo que se conoce como vxlan over IPsec.
¡Nos vemos!
Podrías poner una imagen del esquema? cómo conseguiste una vm fortiOS?