Saludos nuevamente.
En este nuevo post vengo con algo referente a la configuración de red de Proxmox VE.
Pienso que muchos de los que ya han utilizado a Proxmox VE como plataforma de virtualización se han dado cuenta de su potente característica de Clúster HA para la [auto]migración de las VM cuando hay algún fallo en uno o varios de los hipervidores. Acá en Santiago de Cuba me he tropezado con varios admines que me plantean el mismo problema: cuando la máquina virtual se migra de un hipervisor a otro se pierde la conectividad de la misma.
Bueno, el año pasado cuando estaba ayudando a un amigo mío a configurar un pequeño Clúster HA de Proxmox VE con dos servidores DELL PowerEdge T420 me puse a averiguar en Internet cómo resolver este problema. Claro está que él contaba con una ventaja: tenía un switch L2 Allied Telesis AT-GS950/24 que permitía hacer unas cuantas cosas cómicas. Por lo tanto, lo que voy a explicar aplica solamente en caso de que el admin disponga de switches L2 administrables (ah, y preferentemente Gigabit Ethernet o 10 Gigabit Ethernet) y tarjetas de red que soporten IEEE 802.1Q/P en los hipervisores.
La infra de laboratorio que montamos fue la siguiente:
Con el paso de los meses dicha infra fue cambiando para adaptarla a sus necesidades (que son muchas porque está muy limitado en recursos).
Entonces me di a la tarea de ver cómo solucionaba el problema de la conectividad de las VMs. Los pasos fueron los siguientes:
1.- Ver si la tarjeta de red de los hipervisores tenía las características deseadas:
Con respecto a las interfaces de red, pueden ser de los tipos siguientes:
- Realtek RTL8139B, RTL8110SC(L), RTL8111C, RTL8169S (estás las oferta COPEXTEL) [PCI 32 y 64 bits]
- Allied Telesis (PCI 64 bits)
- Intel® PRO/1000 GT/MT/PT de uno, dos o cuatro puertos, donde la GT es la más barata de todas. Estas tarjetas están recomendadas para redes donde se manejen muchas VLANs. (http://www.openredes.com/)
- Broadcom (vienen on-board en muchos servidores)
Estos modelos tienen entre otras características:
- RFC 894 – Ethernet II encapsulation
- IEEE 802.1D MAC bridges
- IEEE 802.1Q/P Virtual LANs
- IEEE 802.2 logical link control
- IEEE 802.3ab 1000T
- IEEE 802.3ad (LACP) link aggregation
- IEEE 802.3u 100TX
- IEEE 802.3x full-duplex operation
- IEEE 802.3z Gigabit Ethernet
Bueno, si la tarjeta de red cumple con las condiciones iniciales deseadas, pues, pasar al siguiente paso.
2.- Crear las VLANs y configurar puertos en modo IEEE 802.1Q (VLAN Tagging) en el switch
Como se dijo anteriormente, el switch en cuestión era un Allied Telesis AT-GS950/24, el cual trae un gestor web para configurarlo de manera más fácil, aunque también se puede hacer en modo CLI (el set de instrucciones no será como el de Cisco, pero se le parece aaaaaaaaaaaaaalgo). En él configuramos 6 subredes, donde 5 estaban destinadas a subredes internas y la sexta era para el enlace externo hacia la Red CUBA (Intranet CUBA es su alcance solamente). Sí, había que aprovechar al máximo el switch para poder hacer VRRP con los posibles PC-Routers que nos decidiésemos a instalar (de momento dos).
NOTA IMPORTANTE: Para entender los conceptos de VLAN, puerto tagged, puerto untagged, VRRP, etc., recomiendo darse un saltico por Wikipedia o Ecured antes de seguir.
La configuración del switch fue la siguiente:
- Modo de configuración de las VLANs (en nuestro caso la 802.1Q Tagged VLAN)
- Lista de VLANs (Crear las VLANs primero, las cosas parte por parte para que se den mejor)
- Configuración de los puertos de la VLAN 1
Resultado parcial:
NOTA: Dejé el puerto 24 para la VLAN 1 por sia caso pasa algo inesperado.
- Configuración de los puertos de la VLAN 2
Resultado parcial:
- Configuración de los puertos de la VLAN 3
Resultado parcial:
- Configuración de los puertos de la VLAN 4
Resultado parcial:
- Configuración de los puertos de la VLAN 5
Resultado parcial:
- Configuración de los puertos de la VLAN 6
Resultado parcial:
- Configuración de pertenencia de los puertos a sus VLANs correspondientes
Una vez que se hagan todos los cambios necesarios en el switch, queda salvar los cambios en el mismo para que sean permanentes.
3.- Configurar el PC-Router para que pueda enrutar todo el tráfico entre las subredes
NOTA: La configuración del PC-Router es extensa, en esta parte sólo me centraré en la configuración de las interfaces de red, que son las que, inicialmente, permiten que haya encaminamiento entre las 5 subredes internas. Ya el tema del encaminamiento de la VLAN 6 es harina de otro costal, dado que interviene el NATing/PATing entre los servidores que actúan como DMZ y las redes externas.
Bueno, hablé de la configuración de las VLANs, entonces el direccionamiento IP de ellas es el siguiente:
- VLAN 1: Dispositivos de conectividad, 10.0.1.0/28
- VLAN 2: Gestión de los Hipervisores Proxmox, 10.0.1.8/29
- VLAN 3: Administradores de Red de la Empresa, 10.0.1.16/29
- VLAN 4: Servidores de Red de la Empresa, 10.0.1.32/28
- VLAN 5: Red LAN de la Empresa, 10.0.1.128/25
- VLAN 6: Red WAN – Red CUBA (ETECSA), 190.6.YYY.120/29
Donde la distribución de los puertos en el switch queda así:
Con respecto a las interfaces de red, el PC-router físico tiene una sola interfaz de tipo on-board Realtek 8111.
Entonces, teniendo esto en cuenta, a modo de ejemplo se muestra un pequeño segmento del código de la configuración de las interfaces de red del VyOS en el PC-Router físico:
set interfaces ethernet eth0 vif 1 address 10.0.1.1/29
set interfaces ethernet eth0 vif 1 description «VLAN de los Equipos de Internetworking»
set interfaces ethernet eth0 vif 2 address 10.0.1.9/29
set interfaces ethernet eth0 vif 2 description «VLAN de Gestión de los Hipervisores»
set interfaces ethernet eth0 vif 3 address 10.0.1.17/29
set interfaces ethernet eth0 vif 3 description «VLAN de los Administradores de Red»
set interfaces ethernet eth0 vif 4 address 10.0.1.33/28
set interfaces ethernet eth0 vif 4 description «VLAN de los Servidores de Red»
set interfaces ethernet eth0 vif 5 address 10.0.1.129/25
set interfaces ethernet eth0 vif 5 description «VLAN de la Red LAN de la Empresa»
set interfaces ethernet eth0 vif 6 address 190.6.YYY.122/29
set interfaces ethernet eth0 vif 6 description «Red WAN – Red CUBA»
4.- Configuración de las interfaces de red de los Hipervisores Proxmox VE
Ahora toca el turno a la configuración de la red de los Proxmoxes, y para tener una idea de lo que se va a hacer primeramente hay que interiorizar la siguiente imagen:
NOTA: Por cierto, cuando hicimos esto, la versión de VyOS hasta ese momento era la 1.0.4, hasta ayer que revisé su sitio web andan por la 1.1.6 y cocinando la versión 2.
Si ya se está claro de lo que se va a hacer, vamos al plato fuerte. La filosofía es asignar un bridge para cada VLAN, donde el único que tenía una dirección IP directa es el que va a permitir la gestión del hipervisor:
Configuración del hipervisor 1
auto lo
iface lo inet loopback
iface eth0 inet manual
auto vmbr1
iface vmbr1 inet manual
bridge_ports eth0.1
bridge_stp off
bridge_fd 0
auto vmbr2
iface vmbr2 inet static
address 10.0.1.10
netmask 255.255.255.248
gateway 10.0.1.9
bridge_ports eth0.2
bridge_stp off
bridge_fd 0
auto vmbr3
iface vmbr3 inet manual
bridge_ports eth0.3
bridge_stp off
bridge_fd 0
auto vmbr4
iface vmbr4 inet manual
bridge_ports eth0.4
bridge_stp off
bridge_fd 0
auto vmbr5
iface vmbr5 inet manual
bridge_ports eth0.5
bridge_stp off
bridge_fd 0
auto eth1
iface eth1 inet static
address 10.0.0.1
netmask 255.255.255.252
network 10.0.0.0
broadcast 10.0.0.3
pointtopoint 10.0.0.2
Configuración del hipervisor 2
auto lo
iface lo inet loopback
iface eth0 inet manual
auto vmbr1
iface vmbr1 inet manual
bridge_ports eth0.1
bridge_stp off
bridge_fd 0
auto vmbr2
iface vmbr2 inet static
address 10.0.1.11
netmask 255.255.255.248
gateway 10.0.1.9
bridge_ports eth0.2
bridge_stp off
bridge_fd 0
auto vmbr3
iface vmbr3 inet manual
bridge_ports eth0.3
bridge_stp off
bridge_fd 0
auto vmbr4
iface vmbr4 inet manual
bridge_ports eth0.4
bridge_stp off
bridge_fd 0
auto vmbr5
iface vmbr5 inet manual
bridge_ports eth0.5
bridge_stp off
bridge_fd 0
auto eth1
iface eth1 inet static
address 10.0.0.2
netmask 255.255.255.252
network 10.0.0.0
broadcast 10.0.0.3
pointtopoint 10.0.0.1
Ah, por cierto, esto se puede hacer a través del gestor gráfico, pero nos gustó más hacerlo en modo texto.
Reiniciamos los hipervisores para que cogieran los cambios en la red y creamos las máquinas virtuales de manera tal que, en dependencia de la VLAN a la que pertenece la VM (normalmente la de los servidores, si dichas VMs son eso mismo). Incluso si se desea tener una estación de trabajo virtual para probar los servicios de la red como si fuese un usuario más, perfectamente se puede hacer.
Entonces, al migrar las máquinas virtuales entre los hipervisores, las mismas se encuentran con la misma configuración de red en el hipervisor por donde pasa (cada bridge asociado a su VLAN), así que no pierde la conectividad.
😀





hermano, necesito tu ayuda,, si quieres me escribes a correo para que me puedas explicar mejor, es la 1 ves que pruebo el proxmox , jeje
me hace falta virtualizar en proxmox 4.3 un pfsense (como firewall) y un debian (como proxy, apache y etc) la pc en cuestión tiene la tarjeta en board y 2 tarjetas pci, la conexión es a través de un adsl ,, como podría configurar la red en ese caso, pq me tope que cuando fui a asignarle la tarjetas de red al pfsense me aparecían cosas como VirtlIO(paravirtualizado) y VMware vmxnet3 y suna realtek y otra intel pero ni rastro de la otra , pero en nodo-system-redes me aparesen me salen eth0 eth1 eth2 vmbr0 pero sin los nombre y no se cual es cual
Saludos, William.
Mira, en esta URL http://nihilanthlnxc.cubava.cu/2016/04/28/publicada-la-version-4-2-de-proxmox-ve/#comment-235, que es la respuesta a un comentario anterior, puedes ver a grandes rasgos el esquema a seguir. No obstante, te explicaré.
Primero que todo, decir que no uso pfSense y, hasta ahora, no me considero fan de esa distro y sé que tiene un montón de características buenas. Veo que todos los vientos están soplando en su dirección.:-)
Me dices que tienes un nodo con 3 tarjetas de red. Ahí te recomiendo que las uses todas, o sea:
– Una para la conexión con el router ADSL de ETECSA.
– Una para la subred de servidores
– Una para la subred LAN donde están todas las estaciones de trabajo
Condición mandatoria: Debes tener ya de antemano los rangos de direcciones IP que vas a utilizar para cada subred y sus parámetros (dirección IP de la puerta de enlace, máscara de subred y broadcast).
En tu Proxmox VE usarás 3 bridges, cada uno asociado a su tarjeta de red física. Una vez que tengas eso, creas tu máquina virtual KVM (repito KVM, no Contenedor LXC), y en la parte de la red le asignas tres tarjetas de red virtuales (OJO: no sé cómo el BSD subyacente del pfSense gestiona los buses VirtIO, por lo que debes probar tanto con ese, como con Intel PRO 1000, o sea, E1000), cada una asociada a un bridge.
Ah, suponiendo que pongas el Proxmox VE en la subred de servidores, al bridge correspondiente deberás establecerle una dirección IP porque, en caso contrario, no podrás gestionarlo.
NOTA: No sé si esto te alentará o desanimará, pero no uso mucho la WebGUI cuando manipulo el networking del Proxmox VE, me gusta más el CLI.
Después de todo eso, pues, ya lo que tienes que hacer es configurar tu pfSense como si fuera un PC-router físico. Lo demás ya lo sabes.
Espero te sirva. 🙂
hermano me puedes escribir al correo, para mandarte unas fotos de lo que hice, que no se que me faltara, el caso es que no consigo que el adsl vea la tarjeta wan del pfsense . grasias
Saludos, William.
OK, lo haré.
necesito ayuda con eso, aca tengo un trabajito pesadito para eso escribeme por telegram para ver eso
Saludos, hermano.
Dime, cómo es la cosa, para ver en qué te puedo ayudar.
🙂
Hola como estas, estoy teniendo un problema, tengo montado proxmox 4.4 el servidor tiene una IP/30 y luego tengo 13 IP/28 para asignar a las virtuales, creo contenedores y asigno un bridge y una IP /28 y no tiene salida a internet ni nada, que estoy haciendo mal?
Saludos, Alejandro.
Primero que todo, gracias por su comentario.
Realmente no da muchos elementos sobre la topología de lo que quiere hacer exactamente. Asumo que el nodo tiene dos tarjetas de red y quiere utilizar las direcciones IP de su rango CIRD /28 (14 disponibles), porque ya del primer rango (el que me dice que es /30) usó la que quedaba disponible. Ahora bien, ¿dispone de un PC-Router o Router para establecer las rutas o…? ¿Dispone de un vPC-Router instalado en una VM en el nodo?
Con la poca información que ha proporcionado no le puedo ayudar mejor. 🙁
Amigo, necesito de su ayuda,
Tengo un server con 2 tarjetas de red, instalé Proxmox v4.0, primera vez que intento realizar la virtualización. La idea que tengo es crear 3 VM donde en una tendré el proxy para dar acceso a internet a varios clientes, en otra VM el server de correo, y en la otra VM el servidor web con Apache para hospedar el sitio web de la institución y q se acceda a él desde internet. Cada una de estas VM deben tener una IP para el acceso a la LAN de los clientes, y a su vez deben poder comunicarse por la WAN, que imagino tendré que configurarla en las interfaces del propio servidor, o no sé si tendré q asignarle una IP pública a cada VM. Cómo puedo hacer esto?, cuál sería la configuración de cada VM y el de sus interfaces de red?. Yo cuento con más de 3 IP públicas para este trabajo. Espero por su ayuda lo más urgente posible. Gracias
Excelente articulo, si utilizamos un switch cisco 2950 y creamos un troncal , digamos al puerto 23 y 24 para ambos servidores proxmox?
Tengo entendido que una vez configurado el switch y los servidores, puede una VM tener 2 NIC pero virtuales, a cada nic le corresponderia una VLAN, ejemplo : eth0 – Vmbr1/VLAN10 + eth1 – Vmbr1/VLAN20, en la VLAN10 a un rango 192.168.10.0/24, al VLAN20 a un rango 192.168.20.0/24… Habra una configuracion especial para el caso de los proxmox trabajando las interfaces en modo troncal?
Gracias y saludos.
Saludos, Mario.
Primero que todo, gracias por su comentario.
Sí, y no sólo un Cisco 2950, puede usar cualquier tipo de switch L2 que permita crear trunks y VLANs del tipo IEEE 802.1Q/P (por favor, no se le ocurra usar switches TP-LINK de esos que son administrables solamente por web y no tienen puerto serie, creo que son los SG2224WEB o similares, no recuerdo bien).
Se puede crear un troncal con dos puertos, asumiendo que el switch es GbE, y que los mismos sean VLAN Tagged en las VLANs que desee autorizar; luego se crean los bridges asociados a dichas VLANs basados en la interfaz bond del nodo Proxmox VE. De ahí, es sólo crear el EV y asociarlo al bridge (VLAN) correspondiente. En la mayoría de las veces he hecho eso con puertos simples por falta de disponibilidad, pero ahora que tengo un equipamiento más o menos responsable puedo hacerlo usando bonding/trunking.
Créame cuando le digo que es algo maravilloso hacer eso tanto en Proxmox VE, como en OpenStack.
Espero le sirva.
Tengo un problema con mi proxmox mo interfaz web en mi navegador no funcionan y entonces todos los contenedores dentro de el dan ping pero el ip del proxmox no, que puede estar pasando
Saludos, Karelia.
Primero que todo, gracias por su comentario.
Hum… Ese comportamiento está un poco extraño. De hecho, cuando se establece la dirección IP de gestión en el Proxmox VE durante su instalación, esta es visible desde donde se permita; pero si no la ve, debe revisar toda la cadena.
Espero le sirva.
🙂