Conexión de servidores a una VLAN | INTROSERV
EUR
european

EUR

usa

USD

Spanish Es
Ex. VAT Ex. VAT 0%

Conexión de servidores a una VLAN

Esta guía explica cómo configurar VLAN en servidores Linux para aislar y controlar el tráfico de red. Los pasos siguientes cubren Ubuntu 22.04, Debian 11 y AlmaLinux 9 / Rocky Linux 9.

Info

Antes de configurar las VLAN en el servidor, asegúrese de que el puerto del switch esté configurado correctamente. Para las VLAN etiquetadas, el puerto del switch debe permitir los ID de VLAN necesarios. Para el tráfico sin etiquetar, el puerto debe estar en modo de acceso y tener asignada la VLAN correspondiente.

Comprobar el módulo del kernel 8021q

En todas las distribuciones, compruebe que el módulo del kernel 8021q esté cargado antes de configurar las VLAN:

lsmod | grep 8021q

Si el módulo no está cargado, ejecute:

sudo modprobe 8021q

Para hacerlo permanente, añada el módulo a /etc/modules:

echo "8021q" | sudo tee -a /etc/modules

Ubuntu 22.04

Ubuntu 22.04 utiliza netplan para la configuración de red.

Identificar la interfaz de red

Ejecute el siguiente comando para encontrar el nombre de la interfaz:

ip link show

En los ejemplos siguientes, la interfaz es enp0s8.

Configurar la red para un puerto de acceso sin etiquetar

Esta sección explica cómo asignar una dirección IP estática directamente a la interfaz física, sin crear una subinterfaz VLAN.

Abra el archivo de configuración de netplan:

sudo nano /etc/netplan/*.yaml

Añada la siguiente configuración. Utilice direcciones IP diferentes en cada servidor:

Servidor 1:

network: version: 2 ethernets: enp0s8: dhcp4: no addresses: - 192.168.1.1/24 routes: - to: default via: 192.168.1.254

Servidor 2:

network: version: 2 ethernets: enp0s8: dhcp4: no addresses: - 192.168.1.2/24 routes: - to: default via: 192.168.1.254

Warning

El parámetro gateway4 está obsoleto desde netplan 0.100 y generará una advertencia. Utilice routes: como se muestra arriba.

Pruebe la configuración antes de aplicarla. El comando espera hasta 120 segundos para recibir una confirmación y revierte automáticamente los cambios si no se confirman, lo que resulta útil en servidores remotos:

sudo netplan try

Si la configuración es válida, aplíquela:

sudo netplan apply

Compruebe que la dirección se haya asignado:

ip addr show enp0s8

Configurar VLAN etiquetadas

Abra el archivo de configuración de netplan y añada las interfaces VLAN. Utilice direcciones IP diferentes para cada servidor en cada VLAN:

Servidor 1:

network: version: 2 ethernets: enp0s8: dhcp4: no vlans: vlan10: id: 10 link: enp0s8 addresses: - 192.168.10.1/24 vlan20: id: 20 link: enp0s8 addresses: - 192.168.20.1/24

Servidor 2:

network: version: 2 ethernets: enp0s8: dhcp4: no vlans: vlan10: id: 10 link: enp0s8 addresses: - 192.168.10.2/24 vlan20: id: 20 link: enp0s8 addresses: - 192.168.20.2/24

Warning

El uso de direcciones IP duplicadas provocará un conflicto. Cada servidor debe tener una dirección IP única en cada VLAN.

Info

Normalmente, solo una interfaz VLAN debe tener una puerta de enlace predeterminada. Asignar una puerta de enlace a varias interfaces VLAN puede provocar problemas de enrutamiento, a menos que se haya configurado un enrutamiento avanzado.

Pruebe y aplique la configuración:

sudo netplan try sudo netplan apply

Compruebe el resultado:

ip addr

Para verificar que el etiquetado VLAN funciona correctamente:

ip -d link show vlan10 ip -d link show vlan20

Compruebe la conectividad:

ping 192.168.10.2 ping 192.168.20.2

Debian 11

Debian 11 utiliza el archivo /etc/network/interfaces para la configuración de red.

Instalar el paquete vlan

En una instalación limpia de Debian, instale el paquete vlan antes de configurar las interfaces VLAN:

sudo apt update sudo apt install vlan

Identificar la interfaz de red

ip link show

En los ejemplos siguientes, la interfaz es enp0s8.

Configurar la red para un puerto de acceso sin etiquetar

Esta sección explica cómo asignar una dirección IP estática directamente a la interfaz física, sin crear una subinterfaz VLAN.

Añada lo siguiente a /etc/network/interfaces en cada servidor.

Warning

El comando ip addr add asigna una dirección temporalmente y no sobrevivirá a un reinicio. Utilice la configuración persistente siguiente para hacerla permanente.

Servidor 1:

auto enp0s8 iface enp0s8 inet static address 192.168.1.1/24 gateway 192.168.1.254

Servidor 2:

auto enp0s8 iface enp0s8 inet static address 192.168.1.2/24 gateway 192.168.1.254

Aplique la configuración sin reiniciar:

sudo systemctl restart networking

Compruebe que la dirección está activa:

ip addr

Compruebe que los servidores pueden comunicarse entre sí:

ping 192.168.1.2

Configurar VLAN etiquetadas

Añada las interfaces VLAN a /etc/network/interfaces en cada servidor. Utilice direcciones IP diferentes para cada servidor en cada VLAN.

Servidor 1:

auto enp0s8.10 iface enp0s8.10 inet static address 192.168.10.1/24 gateway 192.168.10.254 auto enp0s8.20 iface enp0s8.20 inet static address 192.168.20.1/24

Servidor 2:

auto enp0s8.10 iface enp0s8.10 inet static address 192.168.10.2/24 gateway 192.168.10.254 auto enp0s8.20 iface enp0s8.20 inet static address 192.168.20.2/24

Aplique la configuración:

Warning

Reiniciar el servicio de red en un servidor remoto puede interrumpir la sesión SSH actual.

sudo systemctl restart networking

Compruebe el resultado:

ip addr

Para verificar que el etiquetado VLAN funciona correctamente:

ip -d link show enp0s8.10 ip -d link show enp0s8.20

Compruebe la conectividad:

ping 192.168.10.2 ping 192.168.20.2

AlmaLinux 9 / Rocky Linux 9

AlmaLinux 9 y Rocky Linux 9 utilizan NetworkManager para la configuración de red. La herramienta recomendada para gestionar las conexiones es nmcli. El método antiguo mediante /etc/sysconfig/network-scripts/ no es compatible con las distribuciones basadas en RHEL 9.

Identificar la interfaz de red

nmcli device status

En los ejemplos siguientes, la interfaz es enp0s8.

Comprobar las conexiones existentes

Antes de añadir una nueva conexión, compruebe si ya existe un perfil de conexión para la interfaz:

nmcli connection show

Si existe un perfil activo en enp0s8, elimínelo para evitar conflictos. Utilice el nombre del perfil exactamente como aparece en la salida anterior. Omita este paso si el perfil existente fue creado por su proveedor de alojamiento o por cloud-init:

nmcli connection delete "Wired connection 1"

Configurar la red para un puerto de acceso sin etiquetar

Asigne una dirección IP estática a la interfaz física.

Servidor 1:

nmcli connection add type ethernet con-name "enp0s8-primary" ifname enp0s8 \ ipv4.method manual ipv4.addresses 192.168.1.1/24 \ ipv4.gateway 192.168.1.254 \ connection.autoconnect yes nmcli connection up enp0s8-primary

Servidor 2:

nmcli connection add type ethernet con-name "enp0s8-primary" ifname enp0s8 \ ipv4.method manual ipv4.addresses 192.168.1.2/24 \ ipv4.gateway 192.168.1.254 \ connection.autoconnect yes nmcli connection up enp0s8-primary

Compruebe que la dirección se haya asignado:

ip addr show enp0s8

Compruebe la conectividad entre los servidores:

ping 192.168.1.2

Configurar VLAN etiquetadas

Cree una interfaz VLAN sobre la interfaz física. Utilice direcciones IP diferentes en cada servidor para cada VLAN.

Servidor 1:

nmcli connection add type vlan con-name vlan10 ifname enp0s8.10 \ vlan.parent enp0s8 vlan.id 10 \ ipv4.method manual ipv4.addresses 192.168.10.1/24 \ connection.autoconnect yes nmcli connection add type vlan con-name vlan20 ifname enp0s8.20 vlan.parent enp0s8 vlan.id 20 ipv4.method manual ipv4.addresses 192.168.20.1/24 connection.autoconnect yes nmcli connection up vlan10 nmcli connection up vlan20

Servidor 2:

nmcli connection add type vlan con-name vlan10 ifname enp0s8.10 \ vlan.parent enp0s8 vlan.id 10 \ ipv4.method manual ipv4.addresses 192.168.10.2/24 \ connection.autoconnect yes nmcli connection add type vlan con-name vlan20 ifname enp0s8.20 vlan.parent enp0s8 vlan.id 20 ipv4.method manual ipv4.addresses 192.168.20.2/24 connection.autoconnect yes nmcli connection up vlan10 nmcli connection up vlan20

Warning

El uso de direcciones IP duplicadas provocará un conflicto. Cada servidor debe tener una dirección IP única en cada VLAN.

Compruebe el resultado:

ip addr

Para verificar que el etiquetado VLAN funciona correctamente:

ip -d link show enp0s8.10 ip -d link show enp0s8.20

Compruebe la conectividad:

ping 192.168.10.2 ping 192.168.20.2

Solución de problemas

Si las interfaces VLAN no aparecen o no reciben tráfico:

  • compruebe que el puerto del switch permita los ID de VLAN necesarios;
  • confirme que el vSwitch o el grupo de puertos del hipervisor esté configurado para permitir el paso de etiquetas VLAN;
  • asegúrese de que la interfaz principal correcta esté especificada en la configuración;
  • verifique que el módulo del kernel 8021q esté cargado: lsmod | grep 8021q.

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Русский
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA