Virtualización da Rede
| Sitio: | Aula Virtual do IES de Rodeira |
| Curso: | Seguridade e Alta Dispoñibilidade (Javier Taboada) |
| Libro: | Virtualización da Rede |
| Impreso por: | Usuario convidado |
| Data: | venres, 26 de decembro de 2025, 5:04 PM |
Descrición
- Bridges (ip e brctl)
- Veth Pairs
- VLAN
- VXLAN
- VPN
- OpenVSwitch
- As SDN (Software Defined Networks)
1. Bridges
Os bridges (pontes) en Linux son dispositivos virtuais de rede que permiten interconectar varias interfaces de rede a nivel de capa 2 (enlace de datos) do modelo OSI, funcionando como un switch de software. En Linux, os bridges son especialmente útiles en virtualización, redes de contedores e en topoloxías de rede complexas, xa que permiten que varias interfaces físicas e/ou virtuais compartan a mesma rede de maneira transparente
1. Introdución aos Bridges en Linux
En Linux, un bridge permite interconectar varias interfaces nun único segmento de rede, reenvíando tráfico entre elas. Funciona como un switch, utilizando a dirección MAC dos paquetes para decidir a que porto envialos. Os bridges empréganse amplamente en:
- Virtualización: para conectar máquinas virtuais (VMs) ou contedores entre si e coa rede física.
- Redes de contedores: permitindo que varios contedores estean nunha mesma rede.
- Interfaces escravas: son as interfaces físicas ou virtuais engadidas ao bridge.
- Filtrado de tráfico: os bridges en Linux poden filtrar tráfico segundo enderezos MAC, habilitar STP (Spanning Tree Protocol) e aprender que interfaces son responsables de cada MAC.
2. Ferramentas para a Xestión de Bridges
Linux proporciona principalmente dúas ferramentas para a xestión de bridges:
- brctl (parte do paquete
bridge-utils): a ferramenta máis tradicional. - ip (parte do paquete
iproute2): máis avanzada e versátil, con soporte adicional para configuracións modernas.
Ambas permiten tarefas como crear bridges, engadir ou eliminar interfaces, listar configuracións, entre outras.
3. Instalación das Ferramentas de Xestión de Bridges
Para instalar as ferramentas necesarias en Debian/Ubuntu:
apt update apt install bridge-utils iproute2
4. Creación e Configuración de Bridges con brctl
brctl é a ferramenta básica para crear e xestionar bridges en Linux. A continuación, detállase como usar brctl para configurar bridges.
4.1 Crear un Bridge
Para crear un bridge:
brctl addbr br0
Este comando crea un bridge chamado br0. Un bridge sen interfaces non reenvía tráfico, polo que é preciso engadir interfaces escravas para que sexa funcional.
4.2 Engadir Interfaces a un Bridge
As interfaces pódense engadir ao bridge co seguinte comando:
brctl addif br0 eth0 brctl addif br0 eth1
Neste caso, eth0 e eth1 son interfaces físicas engadidas ao bridge br0. Os paquetes recibidos en eth0 poden reenviarse a eth1 e viceversa a través do bridge br0.
Nota: Ao engadir unha interface a un bridge, recoméndase non asignarlle IP directamente; no seu lugar, asigna a IP ao propio bridge.
4.3 Eliminar Interfaces dun Bridge
Para quitar unha interface do bridge:
brctl delif br0 eth0
Este comando elimina eth0 de br0, restaurando a súa configuración de rede independente.
4.4 Configurar o Spanning Tree Protocol (STP)
O STP evita bucles na rede. Para habilitar STP no bridge:
brctl stp br0 on
Isto pode ser útil en redes complexas onde existe o risco de bucles.
4.5 Listar Bridges e Verificar a Configuración
Para listar os bridges existentes e verificar a configuración:
brctl show
Este comando amosa todos os bridges creados, as interfaces engadidas e o estado do STP.
4.6 Eliminar un Bridge
Para eliminar un bridge (deben quitarse as interfaces primeiro):
brctl delbr br0
Este comando elimina br0.
4.7 Configuración de bridges no arranque con /etc/network/interfaces
Para configurar un bridge en /etc/network/interfaces no arranque, se configura como unha "tarxeta normal", pero indicando logo con bridge_ports as tarxetas incluidas no bridge. Si o bridge non ten tarxetas se indicará bridge_ports none
auto br0iface br0 inet staticbridge_ports noneaddress ....
5. Creación e Configuración de Bridges con ip
O comando ip ofrece funcionalidade avanzada na xestión de bridges, incluíndo opcións non soportadas por brctl.
5.1 Crear un Bridge
Para crear un bridge con ip:
ip link add br0 type bridge
Este comando crea un bridge chamado br0.
5.2 Engadir Interfaces a un Bridge
Para engadir interfaces a un bridge:
ip link set eth0 master br0 ip link set eth1 master br0
Con isto, eth0 e eth1 convértense en interfaces escravas do bridge br0.
5.3 Asignar IP ao Bridge
Recoméndase asignar a IP ao bridge e non ás interfaces escravas:
ip addr add 192.168.1.1/24 dev br0
Este comando asigna o enderezo IP 192.168.1.1 ao bridge br0.
5.4 Activar o Bridge
Para activar o bridge (e cada interface engadida):
ip link set br0 up
5.5 Listar a Configuración de Bridges
Para ver os bridges e as súas configuracións:
ip link show type bridge
Este comando amosa os bridges creados e as súas propiedades.
5.6 Eliminar un Bridge
Para eliminar un bridge (primeiro quitar interfaces):
ip link delete br0 type bridge
6. Comparación entre brctl e ip para a Xestión de Bridges
| Función | brctl | ip |
|---|---|---|
| Crear un bridge | brctl addbr br0 | ip link add br0 type bridge |
| Engadir interface ao bridge | brctl addif br0 eth0 | ip link set eth0 master br0 |
| Eliminar interface do bridge | brctl delif br0 eth0 | ip link set eth0 nomaster |
| Activar o bridge | ifconfig br0 up | ip link set br0 up |
| Eliminar o bridge | brctl delbr br0 | ip link delete br0 type bridge |
| Soporte avanzado (e.g., VLANs) | Limitado | Completo |
7. Exemplo Completo de Configuración de Bridge
# Crear o bridge ip link add br0 type bridge # Engadir interfaces físicas ip link set eth0 master br0 ip link set eth1 master br0 # Asignar dirección IP ao bridge ip addr add 192.168.1.1/24 dev br0 # Activar o bridge ip link set br0 up
Neste caso, br0 actúa como un switch que conecta eth0 e eth1, permitindo que dispositivos nestas interfaces intercambien tráfico de rede.
8. Integración con Redes Virtuais
Os bridges en Linux son útiles en contornas de virtualización, conectando interfaces de máquinas virtuais ou contedores coa rede física ou entre eles, ao modo dun switch virtual.
2. VLAN
Unha VLAN (Virtual Local Area Network) permite dividir unha rede física en múltiples redes lóxicas independentes. As VLANs agrupan dispositivos como se estivesen na mesma rede física, pero os illan de outros dispositivos que tamén estean na mesma infraestrutura física, reducindo o tráfico de difusión e mellorando a seguridade.
Cada VLAN identifícase mediante un número (o VLAN ID) que vai de 1 a 4094. O tráfico etiquetado cun VLAN ID específico só é accesible para os dispositivos que pertencen a esa mesma VLAN.
Configuración de VLANs en Linux
A configuración dunha VLAN implica crear unha interface virtual vinculada a unha interface física existente e asignarlle un VLAN ID.
Exemplo: Configurar unha VLAN coa Interface eth0
Suporemos que queremos crear unha VLAN coa interface física eth0 e asignarlle o VLAN ID 10.
3.1 Configuración Básica con ip
Crear a Interface VLAN:
ip link add link eth0 name eth0.10 type vlan id 10Explicación dos parámetros:
link eth0: Define a interface física á cal se vincula a VLAN.name eth0.10: Define o nome da interface VLAN virtual. É habitual incluír o ID da VLAN no nome para referencia.type vlan id 10: Especifica que é unha interface VLAN e asigna o VLAN ID 10.
Asignar unha Dirección IP á Interface VLAN:
Agora, podes asignar unha dirección IP á interface VLAN:
ip addr add 192.168.10.1/24 dev eth0.10Activar a Interface VLAN:
ip link set dev eth0.10 upVerificar a Configuración:
Para comprobar que a interface se creou e está activa, usa:
ip -d link show eth0.10Verás a interface
eth0.10listada como unha VLAN co VLAN ID 10.
3.2 Configuración con bridge para Contornas Virtualizadas
Nas contornas de contedores ou máquinas virtuais, bridge facilita a xestión de VLANs e múltiples interfaces.
Crear un Bridge VLAN:
Crea un bridge e engade unha VLAN coa interface física:
ip link add name br-vlan10 type bridge ip link set br-vlan10 up ip link set eth0 master br-vlan10Engadir a VLAN ao Bridge:
bridge vlan add dev eth0 vid 10 pvid untaggedEste comando engade a VLAN ID 10 ao bridge, marcándoa como "untagged" (non etiquetada) para ese VLAN.
4. Configuración Avanzada: VLAN Trunking
O VLAN Trunking permite que unha interface de rede manexe múltiples VLANs simultaneamente. Isto é útil cando un servidor ou un switch debe comunicarse en varias VLANs ao mesmo tempo.
Para configurar unha interface como trunk en Linux:
Crear Múltiples VLANs na Mesma Interface:
ip link add link eth0 name eth0.10 type vlan id 10 ip link add link eth0 name eth0.20 type vlan id 20Configurar Direccións IP para Cada VLAN:
ip addr add 192.168.10.1/24 dev eth0.10 ip addr add 192.168.20.1/24 dev eth0.20Activar as Interfaces VLAN:
ip link set dev eth0.10 up ip link set dev eth0.20 up
Esta configuración permite que a interface eth0 actúe como un enlace "trunk" para as VLANs 10 e 20.
6. Eliminación dunha VLAN
Para eliminar unha interface VLAN creada con ip:
ip link delete dev eth0.10
Este comando elimina a interface VLAN eth0.10 e elimina a configuración asociada.
7. Verificación e Monitorización das VLANs
Para ver todas as interfaces VLAN configuradas, usa:
ip -d link show type vlan
Este comando mostra todas as interfaces VLAN e os seus VLAN IDs, proporcionando un resumo do estado actual da configuración VLAN en Linux.
8. Consideracións de Seguridade
- Ilimitación de VLANs: Asegúrate de que as interfaces só teñan asignadas as VLANs necesarias para evitar o acceso non autorizado entre diferentes VLANs.
- Separación de Tráfico Sensible: Para redes onde a seguridade é primordial, asegúrate de que o tráfico crítico teña unha VLAN dedicada.
- Acceso de VLAN: Configura as VLANs de usuario e de administración de forma independente para evitar colisións ou acceso non desexado.
3. OpenVSwitch
Open vSwitch (OVS) é un switch de software avanzado para Linux que permite configurar redes complexas, definidas por software, e a creación de redes virtuais a través de interfaces de rede físicas e virtuais. Utilízase amplamente en contornas de virtualización, contedores e redes definidas por software (SDN) debido á súa flexibilidade e capacidades avanzadas, incluíndo soporte para VLANs, VXLAN, QoS e bonding.
1. Introdución a Open vSwitch
Open vSwitch é unha alternativa avanzada aos bridges tradicionais de Linux, ofrecendo funcionalidades adicionais como:
- Integración con virtualización: OVS permite conectar VMs e contedores directamente a redes virtuais.
- Configuracións complexas de redes: Soporta VLANs, QoS e bonding de interfaces para redundancia.
- Xestión remota e centralizada: Compatible con protocolos SDN como OpenFlow, permitindo a xestión centralizada de redes.
Open vSwitch conta con dúas ferramentas principais para a súa xestión:
- ovs-vsctl: Configura e xestiona a configuración persistente de OVS.
- ovs-appctl: Configura e obten información sobre o switch virtual
- ovs-ofctl: Manipula e consulta regras de fluxo, utilizado en redes definidas por software.
Podemos ver detalles da configuración con man ovs-vswitchd.conf.db
2. Instalación de Open vSwitch
En sistemas Debian/Ubuntu, Open vSwitch pódese instalar executando:
apt update apt install openvswitch-switch
3. Creación e Xestión de Bridges con Open vSwitch
Unha vez instalado, pódense crear e xestionar bridges utilizando ovs-vsctl.
3.1 Crear un Bridge
Para crear un bridge chamado br0:
ovs-vsctl add-br br0
Isto crea o bridge br0, que funcionará como un switch virtual. Pódese verificar a creación do bridge co comando:
ovs-vsctl show
3.2 Engadir Interfaces a un Bridge
As interfaces físicas pódense engadir a un bridge para que reenvíen tráfico a través do switch virtual. Por exemplo, para engadir eth0 ao bridge br0:
ovs-vsctl add-port br0 eth0
Se desexas engadir unha interface virtual, como unha interface TAP (para VMs), tamén podes facelo con add-port.
3.3 Configuración de VLANs en Open vSwitch
Open vSwitch permite crear VLANs para segmentar o tráfico. Pódese engadir unha interface a un bridge cunha VLAN específica, como neste exemplo:
ovs-vsctl add-port br0 eth1 tag=10
Neste caso, eth1 será membro da VLAN 10, permitindo o illamento de tráfico entre diferentes VLANs.
3.4 Bonding de Interfaces en Open vSwitch
Open vSwitch tamén soporta bonding de interfaces, o cal permite engadir varias interfaces a un mesmo bond para redundancia ou maior ancho de banda.
Para crear un bond entre eth1 e eth2 no bridge br0 en modo LACP:
ovs-vsctl add-bond br0 bond0 eth1 eth2 -- set port bond0 bond_mode=balance-tcp lacp=active
Nesta configuración:
- bond_mode=balance-tcp usa o modo de balance de carga en TCP.
- lacp=active activa LACP (Link Aggregation Control Protocol), que require soporte de LACP no switch físico.
3.5 Asignar Enderezos IP ao Bridge
É común asignar o enderezo IP ao propio bridge e non ás interfaces escravas. Podes facelo co comando ip:
ip addr add 192.168.1.1/24 dev br0 ip link set br0 up
3.6 Configuración de QoS en Open vSwitch
Open vSwitch permite aplicar políticas de QoS para priorizar tráfico en función de certos criterios. Por exemplo, para crear unha cola con ancho de banda limitado:
ovs-vsctl set port eth1 qos=@newqos -- \ --id=@newqos create qos type=linux-htb other-config:max-rate=100000000
Neste exemplo, eth1 ten unha limitación de ancho de banda de 100 Mbps.
4. Listar Bridges e Interfaces en Open vSwitch
Para ver todos os bridges e as interfaces en Open vSwitch, utiliza:
ovs-vsctl show
Este comando mostra a configuración completa, incluíndo bonds, VLANs, e QoS asociados aos ports.
5. Eliminar Bridges e Interfaces
5.1 Eliminar un Bridge
Para eliminar un bridge:
ovs-vsctl del-br br0
Este comando elimina o bridge br0 e todas as interfaces asociadas a el.
5.2 Eliminar unha Interface dun Bridge
Para eliminar unha interface específica dun bridge:
ovs-vsctl del-port br0 eth0
6. Integración con Contornas de Virtualización
En contornas de virtualización como KVM, Open vSwitch pódese utilizar para conectar VMs a bridges virtuais. Moitas ferramentas de xestión de hipervisores, como libvirt, soportan OVS, permitindo que as VMs usen interfaces TAP conectadas aos bridges de OVS.
7. Exemplos de Configuración
7.1 Configuración de Bridge Básico con Open vSwitch
# Crear o bridge ovs-vsctl add-br br0 # Engadir unha interface física ao bridge ovs-vsctl add-port br0 eth0 # Asignar enderezo IP ao bridge ip addr add 192.168.1.1/24 dev br0 ip link set br0 up
7.2 Configuración de Bridge con VLANs e Bonding
# Crear o bridge ovs-vsctl add-br br0 # Engadir unha interface cunha VLAN específica ovs-vsctl add-port br0 eth1 tag=10 # Configurar un bond con dúas interfaces e habilitar LACP ovs-vsctl add-bond br0 bond0 eth2 eth3 -- set port bond0 bond_mode=balance-tcp lacp=active
8. Comparación entre Open vSwitch e Bridges Tradicionais
| Funcionalidade | Bridges Linux Tradicionais (brctl, ip) | Open vSwitch (ovs-vsctl) |
|---|---|---|
| Soporte de VLAN | Limitado | Completo |
| Bonding | Soporte básico | Soporte avanzado con LACP |
| QoS e Limitación de Ancho de Banda | Non soportado | Soporte completo |
| Configuración Remota (OpenFlow) | Non soportado | Soporte completo |
| Integración con SDN | Non soportado | Compatibilidade con OpenFlow |
4. VXLAN
Que é VXLAN
VXLAN encapsula o tráfico L2 dentro de paquetes UDP en redes L3, permitindo así que segmentos de rede en diferentes subredes actúen como unha rede L2 unificada. Isto é particularmente útil para:
- Aislar redes virtuais en contornas de multitenant.
- Escalabilidade, ao permitir até 16 millóns de redes virtuais grazas ao seu identificador de rede (VXLAN Network Identifier ou VNI).
- Flexibilidade na interconexión de hosts distribuídos en diferentes subredes.
Para configurar VXLAN en Linux, necesitas:
- Unha versión do kernel de Linux 3.8 ou superior (xa que soporta VXLAN de forma nativa).
- O paquete
iproute2, que contén o comandoippara configurar interfaces e rutas. - Conectividade entre os enderezos IP que van participar na rede VXLAN.
1. Configuración de VXLAN en Linux
A continuación explicaremos os pasos para configurar un túnel VXLAN entre dous hosts.
Exemplo de Configuración
Suporemos que temos dous servidores, Host A e Host B, cos seguintes enderezos IP:
- Host A: 192.168.1.10
- Host B: 192.168.1.20
- VNI: 100
a) Crear unha Interface VXLAN
En cada host, crea unha interface VXLAN coa seguinte sintaxe:
ip link add vxlan100 type vxlan id 100 dev eth0 dstport 4789
Explicación dos parámetros:
vxlan100: Nome da interface VXLAN. Escollemos "vxlan100" para indicar que pertence ao VNI 100.id 100: Define o VNI para este túnel. Debe ser o mesmo en ambos hosts para que pertenzan á mesma rede virtual.dev eth0: Interface física a través da cal viaxará o tráfico VXLAN.dstport 4789: Porto UDP estándar para tráfico VXLAN. Pódese omitir, xa que 4789 é o porto por defecto.
b) Configurar o Enderezo IP da Interface VXLAN
Unha vez creada a interface, asignámoslle un enderezo IP en ambos hosts. Por exemplo:
ip addr add 10.0.0.1/24 dev vxlan100 ip link set vxlan100 up
No Host B:
ip addr add 10.0.0.2/24 dev vxlan100 ip link set vxlan100 up
Agora, ambos hosts deberían ser capaces de comunicarse entre eles a través dos enderezos 10.0.0.1 e 10.0.0.2, sempre que o túnel estea configurado correctamente.
c) Configurar o Enderezo de Destino VXLAN
Para definir con quen se debe comunicar cada host, podemos empregar o comando bridge fdb para engadir o enderezo MAC de destino á táboa de reenviamento.
No Host A:
bridge fdb add 00:00:00:00:00:02 dev vxlan100 dst 192.168.1.20
No Host B:
bridge fdb add 00:00:00:00:00:01 dev vxlan100 dst 192.168.1.10
Este comado indica que todo o tráfico destinado á interface VXLAN debe encapsularse e enviarse á IP do outro host.
d) Verificación da Configuración
Para asegurarte de que a configuración é correcta, executa os seguintes comandos:
-
Comproba as Interfaces VXLAN:
ip link show vxlan100 -
Comproba a Conectividade: Tenta facer ping dende
Host AaHost Busando os enderezos VXLAN configurados:ping 10.0.0.2 -
Comproba a Táboa de Reenviamento: Verifica que o enderezo MAC de destino estea configurado correctamente:
bridge fdb show dev vxlan100
e) Configuración de VXLAN con Multicast
Para soportar varios destinos nunha única configuración VXLAN, é posible usar multicast en lugar de configuraciones punto a punto. Isto permite que o tráfico se envíe a múltiples destinos simultaneamente.
Para habilitar VXLAN con multicast, usa un enderezo multicast ao crear a interface:
ip link add vxlan100 type vxlan id 100 dev eth0 group 239.1.1.1 dstport 4789
Neste caso, group 239.1.1.1 é o enderezo multicast que distribuirá o tráfico aos membros desta rede.
f) Configuración Avanzada: VXLAN con VLANs
VXLAN pódese combinar con VLANs para separar o tráfico dentro da mesma rede VXLAN. Configurar isto implica definir VLAN tags nos paquetes que atravesan a interface VXLAN, o que é útil para contornas de varios tenants.
Exemplo de Configuración
Engade unha VLAN á interface VXLAN configurando a interface como unha subinterface VLAN:
sudo ip link add link vxlan100 name vxlan100.10 type vlan id 10 sudo ip addr add 10.1.0.1/24 dev vxlan100.10 sudo ip link set vxlan100.10 up
Neste exemplo, a interface vxlan100.10 creouse coa VLAN ID 10. A configuración de VLAN en VXLAN permite crear varios segmentos illados sobre o mesmo túnel.
## Creacion manual del vxlan
ip link add <novo interface> type vxlan id 1000 dstport 4789 remote 10.0.0.1
ip link set <novo interface> up
ip link set <novo interface> mtu 1450
## Para /etc/network/interfaces.d
## novo interface - Interface vxlan
## bridge - bridge (switch) a crear
auto <novo interface>
iface <novo interface> inet manual
pre-up ip link add <novo interface> type vxlan id 1000 dstport 4789 remote 10.0.0.1
ip link set <novo interface> up
ip link set <novo interface> mtu 1450
post-down ip link set <novo interface> down
post-down ip link del <novo interface>
auto <brigge>
iface <bridge> inet manual
bridge_ports <novo_interface>
bridge_stp off
bridge_fd 0
mtu 1450
2. VXLAN en Open vSwitch
En Open vSwitch, os túneles VXLAN configúranse como portos especiais que se engaden aos bridges, permitindo que o tráfico encapsulado chegue a outros dispositivos compatibles con VXLAN.
Para configurar VXLAN en Open vSwitch, necesitas:
- Unha versión recente de Open vSwitch (a maioría das distribucións actuais inclúen VXLAN).
- Conectividade IP entre os hosts que van formar parte da rede VXLAN.
- Compatibilidade coa encapsulación UDP 4789 (o porto estándar para VXLAN).
3. Configuración Básica de VXLAN en Open vSwitch
A continuación preséntanse os pasos para crear unha configuración VXLAN en Open vSwitch.
3.1 Crear un Bridge para VXLAN
En primeiro lugar, crea un bridge en Open vSwitch onde engadirás o porto VXLAN:
ovs-vsctl add-br br-vxlan
Este bridge funcionará como a interface que xestionará o tráfico de VXLAN encapsulado.
3.2 Crear o Porto VXLAN
Para configurar VXLAN, engade un porto VXLAN ao bridge. Neste exemplo, configuraremos o porto VXLAN con local_ip que representa o enderezo IP do host local e remote_ip para o enderezo do host remoto.
Se necesitas que o tráfico VXLAN chegue a múltiples destinos (unha rede multicast ou escenario punto-a-multipunto), usa remote_ip=flow.
ovs-vsctl add-port br-vxlan vxlan0 -- \ set interface vxlan0 type=vxlan options:local_ip=192.168.1.10 options:remote_ip=192.168.1.20 options:key=100
Explicación dos parámetros:
local_ip: O enderezo IP do host onde configuras VXLAN.remote_ip: O enderezo IP do host de destino. Se queres que este porto acepte tráficos de diferentes orixes, usaflowneste campo.key: Identificador único da VXLAN (VNI). Este valor permite que diferentes túneles se illen entre si; neste caso, o VNI é 100.
ovs-vsctl add-port br0 vxlan1 -- set interface vxlan1 type=vxlan \
options:remote_ip=192.168.1.2 options:key=flow options:dst_port=8472ovs-vsctl add-port br0 vxlan0 -- set interface vxlan0 type=vxlan options:remote_ip=flow options:key=flowConfiguración de VXLAN Multicast
Se estás a traballar nun ambiente onde varios nodos deben participar na mesma VXLAN, podes usar multicast en vez dun enderezo IP específico en remote_ip. Para isto, configuras un enderezo multicast para remote_ip:
ovs-vsctl add-port br-vxlan vxlan0 -- \ set interface vxlan0 type=vxlan options:local_ip=192.168.1.10 options:remote_ip=239.1.1.1 options:key=100
Neste caso, 239.1.1.1 é un enderezo multicast, e todos os hosts unidos a esta rede recibirán tráfico enviado a este enderezo multicast.
Comprobación da Configuración de VXLAN
Para verificar a configuración da interface VXLAN, utiliza:
ovs-vsctl show
Este comando mostrará información sobre todos os bridges e interfaces, incluída a configuración de VXLAN.
Tamén podes comprobar que a interface VXLAN está a recibir tráfico co comando tcpdump:
tcpdump -i vxlan0
6. Integración de VXLAN con Contedores e Virtualización
Open vSwitch tamén é amplamente utilizado en contornas con contedores e máquinas virtuais para conectar estes recursos a través de VXLANs. Moitos orquestradores como Kubernetes permiten definir redes VXLAN sobre Open vSwitch para interconectar contedores en distintos nós do clúster.
7. Comparativa entre VXLAN e VLANs
| Funcionalidade | VLAN | VXLAN |
|---|---|---|
| Número máximo de redes | 4096 | ~16 millóns (24 bits) |
| Encapsulación | Ningunha (L2) | UDP/L3 sobre L2 |
| Capacidade de extensión L2 | Limitado ao dominio de L2 | Permite extensión sobre L3 |
| Compatibilidade con SDN | Limitado | Alta, integrado en OpenFlow |
| Uso en contornas de cloud | Pouco común | Común en contornas de cloud |
5. SDN
As Redes Definidas por Software (SDN) son un enfoque para a xestión e control das redes que permite unha maior flexibilidade, escalabilidade e automatización na configuración e operación das infraestruturas de rede.
As SDN son unha maneira de abordar a creación de redes na cal o control é asumido por unha aplicación de software chamada controlador e non polo hardware da rede.
Cando un paquete chega a un conmutador (switch) nunha rede tradicional, as regras que están integradas no firmware privativo e pechado do conmutador indican ao mesmo adónde debe transportar o paquete. O conmutador envía cada paquete ao mesmo destino, seguindo a mesma traxectoria e tratando a todos os paquetes de maneira igual. Nas empresas, os conmutadores intelixentes (administrables) diseñados con circuítos integrados de aplicación específica (ASIC) son suficientemente sofisticados para recoñecer diferentes tipos de paquetes e tratalos de maneira distinta, pero estes conmutadores poden ser moi caros.
Nunha SDN, un SysAdmin (Administrador de Rede) pode moldear o tráfico dende unha consola de control centralizada sen necesidade de intervir en conmutadores individuais. O administrador pode modificar calquera regra dos conmutadores de rede cando sexa necesario, cambiando ou retirando prioridade, ou incluso bloqueando tipos específicos de paquetes cun nivel de control moi detallado.
Isto é especialmente útil nunha arquitectura de múltiples arrendatarios (multi-tenant architecture) de computación na nube, xa que permite ao administrador xestionar as cargas de tráfico de maneira flexible e máis eficiente. Esencialmente, isto permite ao Administrador de Rede utilizar menos conmutadores pequenos e caros, e ter máis control ca nunca sobre o fluxo do tráfico na rede.
A las SDN chámaselle ás veces a «Asesina de Cisco» porque permite aos Enxeñeiros de Redes soportar un tecido de conmutación a través de hardware de múltiples provedores e circuítos integrados de aplicación específica. Actualmente, a especificación máis popular para crear unha SDN é o estándar aberto OpenFlow, que permite aos SysAdmins controlar táboas de enrutamento de maneira remota.
¿Que é unha SDN?
A SDN separa o plano de control (decisións de enrutamento e políticas de rede) do plano de datos (transmisión real de paquetes), o que permite unha xestión máis eficiente da rede. Nun entorno de SDN, os controladores de rede utilízanse para programar o comportamento dos dispositivos de rede (como conmutadores e routers) de xeito centralizado, o que mellora a visibilidade e o control sobre a rede.
Características da SDN
Separación de planos:
- Plano de control: Aquí é onde se toman as decisións sobre como se debe dirixir o tráfico. Este plano xestiónase a través dun controlador SDN.
- Plano de datos: Encárgase da transmisión real de datos. Este plano inclúe dispositivos como conmutadores e routers que se configuran segundo as decisións tomadas no plano de control.
Controlador centralizado:
- O controlador actúa como un cerebro da rede, xestionando a configuración, monitoreo e administración de todos os dispositivos de rede.
Programabilidade:
- Permite que os administradores de rede programen a infraestrutura de rede mediante API (Interfaz de Programación de Aplicacións), o que facilita a automatización de tarefas e a implementación de políticas de rede dinámicas.
Visibilidade e monitoreo:
- Mellora a capacidade de monitorizar o tráfico e os eventos en tempo real, o que permite aos administradores de rede tomar decisións informadas e rápidas.
Flexibilidade e axilidade:
- Permite a rápida adaptación a cambios na rede ou nos requisitos de negocio, como a implementación de novos servizos ou a adaptación a cambios no tráfico.
Seguridade mellorada:
- Facilita a implementación de políticas de seguridade centralizadas e a resposta rápida a incidentes de seguridade.
Funcionalidades dunha SDN
Automatización da rede:
- Permite a automatización de tarefas de configuración e xestión da rede, reducindo o esforzo manual e minimizando erros.
Provisionamento dinámico:
- Posibilita a creación e eliminación de redes e recursos de rede de forma rápida, o que é especialmente útil en entornos de nube.
Xestión de políticas de rede:
- As políticas de seguridade e acceso poden definirse e aplicarse de xeito centralizado, simplificando a xestión da seguridade.
Optimización do tráfico:
- A capacidade de redirixir dinámicamente o tráfico segundo as condicións actuais permite unha mellor utilización dos recursos de rede.
Interoperabilidade:
- A SDN permite que diferentes dispositivos e tecnoloxías se integren e traballen xuntos, mellorando a interoperabilidade da rede.
Redes virtuais:
- Facilita a creación de redes virtuais superpostas que poden segmentar o tráfico e crear ambientes de rede illados.
¿Que aporta unha SDN?
- Custos Reducidos: A automatización e a xestión centralizada poden levar a unha redución de custos operativos e de capital.
- Mellor Rendemento: Ao optimizar a xestión do tráfico e permitir unha maior adaptabilidade, mellórase o rendemento xeral da rede.
- Innovación Rápida: As organizacións poden implementar e probar novos servizos e aplicacións máis rapidamente grazas á flexibilidade da SDN.
- Escalabilidade: As SDN poden escalar facilmente para satisfacer as demandas cambiantes, o que é esencial para as organizacións en crecemento.
- Facilidade de xestión: A centralización e programabilidade da rede simplifican a xestión e a configuración, o que permite aos administradores centrarse en tarefas estratéxicas en lugar de operacións manuais.
Exemplo dunha SDN na práctica
Escenario: Imagina unha empresa que opera nun entorno de nube híbrida e ten múltiples sucursais que require conectividade segura e eficiente.
Implementación:
Controlador SDN: A empresa implementa un controlador SDN como OpenDaylight para xestionar a rede de xeito centralizado.
Conmutadores virtuais: Utilizan Open vSwitch (OVS) nos seus servidores para crear conmutadores virtuais que poden xestionar o tráfico entre as máquinas virtuais e os recursos na nube.
Automatización: Cun script programado no controlador, a empresa pode automatizar a creación de redes virtuais e o aprovisionamento de recursos segundo as necesidades dos usuarios ou aplicacións.
Políticas de seguridade: As políticas de acceso á rede defínense no controlador SDN. Cando un novo usuario intenta acceder á rede, aplícaselle automaticamente unha política de acceso que limita os seus privilexios segundo o seu rol.
Optimización do tráfico: Durante picos de tráfico, o controlador SDN pode redirixir dinámicamente o tráfico a través de diferentes rutas ou balancear a carga entre varios servidores para optimizar o rendemento.
Monitoreo e resposta: A rede é monitorizada en tempo real, o que permite aos administradores identificar problemas rapidamente e tomar decisións informadas, como axustar as políticas de tráfico ou responder a incidentes de seguridade.