El acceso a la máquina virtual mediante la interfaz de red en puente KVM dentro de la red de la empresa no funciona fuera de la LAN de la sala

El acceso a la máquina virtual mediante la interfaz de red en puente KVM dentro de la red de la empresa no funciona fuera de la LAN de la sala

Trabajo en un instituto, así que, como puedes imaginar, tenemos el típico proxy, AD, DNS, etc. Mi grupo está considerando la transición a Linux para nuestros servidores (que contienen varias GPU para diversos fines de investigación) debido a una configuración más sencilla de nuestros entornos (aprendizaje automático, renderizado) y el acceso a las herramientas necesarias para nuestro trabajo. Pero antes de hacerlo, me encargué (con el permiso de nuestro administrador de TI y de mi jefe) de crear una configuración simple que nos dará una perspectiva de lo que necesitamos exactamente.

Utilizo una PC de escritorio normal con Ubuntu Server 20.04 LTS configurado como host. Para gestionarlo utilizo SSH (a través de Putty) o interfaz web (cockpit). En la parte superior del host ejecuto KVM con un grupo de máquinas virtuales QEMU, todas las cuales comparten la misma interfaz de red en puente (solo se puede ejecutar una máquina virtual a la vez debido al paso PCI implementado). Tanto el host como las máquinas virtuales tienen nombres de host que siguen el esquema

<hostname>.<domain>

Dado que nuestro chico de TI ha sido una fuerza impulsora abierta contra Linux en nuestro departamento, cada máquina en el departamento que ejecuta Linux tiene que ser administrada por el empleado, que es el "dueño" de la misma. El administrador no nos brinda ninguna ayuda si tenemos un problema con esas máquinas. Las máquinas Linux también necesitan tener un -Lsufijo para que él sepa que no son su problema. En general, el nombre de host para PC y portátiles sigue el esquema

<department>-<machine type><3 digit numeric value>

asi el completo sera

<department>-<machine type><3 digit numeric value>.<domain>

Digamos que tengo lo siguiente con foo.bar.comser <domain>:

  • ABC-DT001-L.foo.bar.com- PC, host que ejecuta Ubuntu Server 20.04, dirección IP10.21.5.83
  • ABC-DT001-L-VM0.foo.bar.com- VM, invitado que ejecuta Xubuntu 20.04, dirección IP10.21.5.104
  • ABC-NB001.foo.bar.com- computadora portátil, ejecutando Windows 10 con usuario AD, dirección IP10.21.5.104
  • Puente de red- convirtió la interfaz de red única delABC-DT001-La un puente, que a cambio es utilizado por cada VM que planeo ejecutar
  • Conmutador HP ProCurve 1810g-8 J9449A- conmutador administrado al que están conectadas mis máquinas dentro de mi oficina (no tengo acceso a él), dirección IP 10.21.99.10(o eso dice la etiqueta)
  • Puerta de enlace predeterminada- Dirección IP10.21.5.1
  • Servidor DHCP- Dirección IP10.21.1.3
  • servidor DNS- Dirección IP10.21.1.3
  • Servidor WINS primario- Dirección IP10.21.1.10

Desde nuestro departamento de TI me dijeron que si una máquina tiene una dirección MAC permanente siempre puedo, por ejemplo,ABC-DT001-L.foo.bar.compara acceder a miABC-DT001-Lmáquina.

A nivel de KVM, tengo el puente predeterminado ( virbr0o algo así) que se configura al crear una VM para permitir que el sistema de la VM sincronice el tiempo de alguna manera, así como mi propio puente que vincula la VM al único puerto Ethernet que tiene mi host. permitiéndole acceder a Internet así como a la red interna de nuestro instituto. Entonces, en términos de direcciones MAC en mi PC, tengo

  • ABC-DT001-L.foo.bar.com- Dirección MAC14:b3:1f:07:ee:5a
  • ABC-DT001-L-VM0.foo.bar.com- Dirección MAC52:54:00:2a:b8:4f

con respecto a mi puente.

En caso de que esté interesado en el puente predeterminado que tengo 52:54:00:58:04:50(lado del host) y 52:54:00:1e:cf:8b(lado de la VM).

Esto es lo que funciona:

  • ABC-NB001- puede hacer ping y SSHABC-DT001-L
  • ABC-NB001- ¿Puede hacer ping, SSH y VNC conectarse aABC-DT001-L-VM0(puerto 5900 para cockpit, puerto 5901 para cualquier otro visor VNC ya que también ejecuto X11VNC en paralelo a lo que cockpit ya proporciona para permitir el acceso en el futuro solo a la VM y no al servidor subyacente)
  • ABC-DT001-L- puede hacer ping y SSHABC-DT001-L-VM0, puede hacer pingABC-NB001
  • ABC-DT001-L-VM0- puede hacer ping y SSHABC-DT001-L, puede hacer pingABC-NB001

Además puedo hacer ping y acceder a la consola web deABC-DT001-Ldesde nuestros servidores Windows (los que convertiremos a Linux en el futuro). Mis colegas, que trabajan desde casa, también pueden (a través de nuestra VPN) hacer ping y accederABC-DT001-L.

Esto es lo que no funciona:

  • El acceso a losABC-DT001-L-VM0desde nuestros servidores, incluido incluso solo ping
  • El acceso a losABC-DT001-L-VM0desde las máquinas de mis colegas a través de VPN

Por lo tanto, parece que cualquier cosa más allá del conmutador no puede acceder a las máquinas virtuales de ninguna manera posible. Una cosa que he notado, que supongo que es de esperar, es que detrás del conmutador también puedo usar simplemente el nombre de host en lugar del nombre completo para obtener acceso a todas mis máquinas.

Parece que el problema es el puente. Antes de ir a molestar al oso (nuestro departamento de TI), me gustaría intentar resolver el problema (con su ayuda, por supuesto).

información relacionada