# 1.3.- Configuración de la red con Open vSwitch

# Open Virtual Switch

[![Logo Open vSwitch](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/DRuimage.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/DRuimage.png)

<div class="block iDevice_content align-center" id="bkmrk-logo-open-vswitch%C2%A0%28g"><sup><span class="title">*Logo Open vSwitch*</span> <span class="license"><span class="sep">(</span>[GNU/GPL](http://www.gnu.org/licenses/gpl.html)<span class="sep">)</span></span></sup></div>[Open vSwitch](https://www.openvswitch.org/features/) es un conmutador virtual multicapa con calidad de servicio y de licencia de **código abierto Apache 2.0**. Está diseñado para permitir la automatización masiva de la red a través de extensión programadas, sin dejar de admitir interfaces y protocolos de administración estándar

<p class="callout info">Por defecto, Proxmox usa Linux Bridges (switch virtual al igual que Open vSwitch). </p>

Open vSwitch es un switch virtual, al igual que Linux Bridge y reenvía paquetes entre las interfaces que están conectadas a él (capa 2 de TCP/IP). Generalmente se usa para reenviar paquetes en enrutadores, puertas de enlace o entre máquinas virtuales y espacios de nombres de red en un host (contenedores).

<p class="callout info">La gran ventaja de Open vSwitch era que soportaba STP (Spanning Tree Protocol) pero Linux Bridge ha incluido soporte básico para STP, multicast (multidifusión) y Netfilter desde las series de kernel 2.4 y 2.6 de Linux.</p>

Sin embargo, Linux Bridge, no es del todo compatible con todos los componentes de red y protocolos del resto de la industria del hardware de red.

Linux Bridge queda atrás de Open vSwitch en la mayoría de las pruebas de rendimiento y tiempo de transacción (latencia), donde la diferencia más notable se observó con grandes cargas transaccionales.

Requisito previo: instalar dependencias

```bash
apt update
apt install openvswitch-switch -y
```

<div class="iDevice emphasis0" id="bkmrk-imagen-de-elaboraci%C3%B3" ondblclick="submitLink('edit',113, 0);"></div>[![Instalación de los paquetes necesarios para habilitar Open vSwitch](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/hvgimage.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/hvgimage.png)

<sup><span class="author">Imagen de elaboración propia</span>. <span class="title">*Instalación de los paquetes necesarios para habilitar Open vSwitch*</span> <span class="license"><span class="sep">(</span>[CC BY-NC-SA](http://creativecommons.org/licenses/?lang=es "Creative Commons BY-NC-SA")<span class="sep">)</span></span></sup>

<p class="callout warning">**Importante:** crea una copia de seguridad de la configuración de red actual para cambiar </p>

Abre el shell desde la consola web y ejecuta este comando:

```bash
cp /etc/network/interfaces /etc/network/interfaces.bak
```

[![Copia de seguridad del fichero de configuración de red del nodo Proxmox](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/10yimage.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/10yimage.png)

<sup><span class="author">Imagen de elaboración propia</span>. <span class="title">*Copia de seguridad del fichero de configuración de red del nodo Proxmox*</span> <span class="license"><span class="sep">(</span>[CC BY-NC-SA](http://creativecommons.org/licenses/?lang=es "Creative Commons BY-NC-SA")<span class="sep">)</span></span></sup>

Los OVS Bridge son más recomendables que los Linux Bridge para realizar un cluster de Proxmox.

Eliminaremos el Linux Bridge "vmbr0" creado por defecto en Proxmox VE, pero no le daremos a "Aplicar configuración" hasta haber terminado con los cambios:

[![Imagen de elaboración propia. Eliminar el Linux Bridge "vmbr0" (CC BY-NC-SA)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/JZiimage.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/JZiimage.png)

<sup><span class="author">Imagen de elaboración propia</span>. <span class="title">*Eliminar el Linux Bridge "vmbr0"*</span> <span class="license"><span class="sep">(</span>[CC BY-NC-SA](http://creativecommons.org/licenses/?lang=es "Creative Commons BY-NC-SA")<span class="sep">)</span></span></sup>

  
Sin actualizar los cambios, daremos a "Crear" un OVS Bridge:

[![Crear un Open Virtual Switch](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/t2bimage.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/t2bimage.png)

<sup><span class="author">Imagen de elaboración propia</span>. <span class="title">*Crear un Open Virtual Switch*</span> <span class="license"><span class="sep">(</span>[CC BY-NC-SA](http://creativecommons.org/licenses/?lang=es "Creative Commons BY-NC-SA")<span class="sep">)</span></span></sup>

Llamaremos al nuevo Open vSwitch como "vmbr0" para que coincida con el anterior nombre de Linux Bridge y de esta manera no se vean afectadas las interfaces de red de las MV y contenedores creados previamente:

[![Creación del OVS Bridge](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/j9Pimage.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/j9Pimage.png)

<div class="block iDevice_content align-center" id="bkmrk-imagen-de-elaboraci%C3%B3-3"><sup><span class="author">Imagen de elaboración propia</span>. <span class="title">*Creación del OVS Bridge*</span> <span class="license"><span class="sep">(</span>[CC BY-NC-SA](http://creativecommons.org/licenses/?lang=es "Creative Commons BY-NC-SA")<span class="sep">)</span></span></sup></div><div class="block iDevice_content" id="bkmrk--9"></div><p class="callout warning">**¡ATENCIÓN!** a diferencia de una configuración con Linux Bridge, debemos de habilitar un "OVS IntPort" para acceder a GUI de Proxmox:</p>

[![Crear un OVS IntPort para el acceso a web administrativa de Proxmox](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/148image.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/148image.png)

<sup><span class="author">Imagen de elaboración propia</span>. <span class="title">*Crear un OVS IntPort para el acceso a web administrativa de Proxmox*</span> <span class="license"><span class="sep">(</span>[CC BY-NC-SA](http://creativecommons.org/licenses/?lang=es "Creative Commons BY-NC-SA")<span class="sep">)</span></span></sup>

  
Ahora sí aplicamos los cambios:

[![Aplicar cambios para reiniciar el servicio de red](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/tKUimage.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/tKUimage.png)

<div class="block iDevice_content align-center" id="bkmrk-imagen-de-elaboraci%C3%B3-4"><sup><span class="author">Imagen de elaboración propia</span>. <span class="title">*Aplicar cambios para reiniciar el servicio de red*</span> <span class="license"><span class="sep">(</span>[CC BY-NC-SA](http://creativecommons.org/licenses/?lang=es "Creative Commons BY-NC-SA")<span class="sep">)</span></span></sup></div>Si todo ha salido bien en un momento tendremos preparada nuestro OVS Bridge. Si queremos que la IP del OVS IntPort se obtenga por DHCP tendremos que modificar el fichero /etc/network/interfaces de forma manual:

[![Modificación del fichero /etc/network/interfaces para que OVS IntPort obtenga una configuración de red por DHCP](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/9LRimage.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/9LRimage.png)

<div class="block iDevice_content align-center" id="bkmrk-imagen-de-elaboraci%C3%B3-5"><sup><span class="author">Imagen de elaboración propia</span>. <span class="title">*Modificación del fichero /etc/network/interfaces para que OVS IntPort obtenga una configuración de red por DHCP*</span> <span class="license"><span class="sep">(</span>[CC BY-NC-SA](http://creativecommons.org/licenses/?lang=es "Creative Commons BY-NC-SA")<span class="sep">)</span></span></sup></div>Si por alguna razón cometiste un error tipográfico o algún otro error en tu configuración y tienes problemas para conectarte a través del navegador web:

Vaya a su servidor Proxmox e inicie sesión localmente y ejecute estos comandos:

```bash
cp /etc/network/interfaces.bak /etc/network/interfaces
ifreload -a
```

Intenta seguir otra vez estos mismos pasos.

Si editamos el OVS Bridge "vmbr0" nos daremos cuenta que está haciendo de puente entre la interfaz de red ens18 y el OVS IntPort "vmbr0\_mang":

[![Edición de OVS Bridge vmbr0](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/Ub7image.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/Ub7image.png)

<sup><span class="author">Imagen de elaboración propia</span>. <span class="title">*Edición de OVS Bridge vmbr0*</span> <span class="license"><span class="sep">(</span>[CC BY-NC-SA](http://creativecommons.org/licenses/?lang=es "Creative Commons BY-NC-SA")<span class="sep">)</span></span></sup>

Comprobaremos ahora si funciona el puente de red de OVS Bridge "vmbr0" arrancando un contenedor y verificando su configuración de red y su conexión a Internet, haciendo un ping a un servidor DNS públicos de Google:

[![Configuración de red y ping al DNS de Google 8.8.8.8](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/scaled-1680-/Qolimage.png)](https://doc-proxmox.datosporlasnubes.com/uploads/images/gallery/2024-05/Qolimage.png)

<div class="iDevice emphasis0" id="bkmrk--16" ondblclick="submitLink('edit',113, 0);"><div class="block iDevice_content" id="bkmrk--17"></div></div><sup><span class="author">Imagen de elaboración propia</span>. <span class="title">*Configuración de red y ping al DNS de Google 8.8.8.8*</span> <span class="license"><span class="sep">(</span>[CC BY-NC-SA](http://creativecommons.org/licenses/?lang=es "Creative Commons BY-NC-SA")<span class="sep">)</span></span></sup>

<article class="iDevice_wrapper ParasabermasfpdIdevice em_iDevice em_iDevice_parasabermasfpd" id="bkmrk-para-saber-m%C3%A1s-para-"><div class="iDevice emphasis_parasabermasfpd" ondblclick="submitLink('edit', 114, 0);"><header class="iDevice_header">## Para saber más

<span style="color: rgb(0, 0, 0);">Para seguir profundizando:</span>

[https://pve.proxmox.com/wiki/Network\_Configuration](https://pve.proxmox.com/wiki/Network_Configuration)

</header><div class="iDevice_inner"><div class="iDevice_content_wrapper"><div class="block iDevice_content">  
</div></div></div></div><div class="iDevice emphasis_parasabermasfpd" ondblclick="submitLink('edit', 114, 0);"><div class="iDevice_inner"><div class="iDevice_content_wrapper"><div class="block iDevice_content" id="bkmrk--18"></div></div></div></div></article>