O acesso à VM usando a interface de rede em ponte KVM dentro da rede da empresa não funciona fora da LAN da sala

O acesso à VM usando a interface de rede em ponte KVM dentro da rede da empresa não funciona fora da LAN da sala

Eu trabalho em um instituto, então, como você pode imaginar, temos o proxy típico, AD, DNS e assim por diante. Meu grupo está pensando em fazer a transição para Linux em nossos servidores (contendo diversas GPUs para diversos fins de pesquisa) devido à configuração mais fácil de nossos ambientes (aprendizado de máquina, renderização) e acesso às ferramentas necessárias para nosso trabalho. Mas antes de fazermos isso, tomei a iniciativa (com permissão do nosso administrador de TI e do meu chefe) de criar uma configuração simples que nos dará alguma perspectiva sobre o que exatamente precisamos.

Eu uso um PC de mesa normal com Ubuntu Server 20.04 LTS definido como host. Para gerenciá-lo utilizo SSH (via Putty) ou interface web (cockpit). Na parte superior do host, executo o KVM com um monte de VMs QEMU, todas compartilhando a mesma interface de rede em ponte (apenas uma única VM pode ser executada por vez devido à passagem PCI em vigor). O host, bem como as VMs, possuem nomes de host seguindo o esquema

<hostname>.<domain>

Como nosso cara de TI tem sido uma força motriz anti-Linux em nosso departamento, cada máquina do departamento que executa Linux deve ser administrada pelo funcionário, que é o “dono” dela. Não recebemos nenhuma ajuda do administrador se tivermos um problema relacionado a essas máquinas. As máquinas Linux também precisam ter um -Lsufixo para que ele saiba que não são problema dele. Em geral o nome de host para PCs e notebooks segue o esquema

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

então o completo será

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

Digamos que eu tenha o seguinte foo.bar.comsendo <domain>:

  • ABC-DT001-L.foo.bar.com- PC, host executando Ubuntu Server 20.04, endereço IP10.21.5.83
  • ABC-DT001-L-VM0.foo.bar.com- VM, convidado executando o Xubuntu 20.04, endereço IP10.21.5.104
  • ABC-NB001.foo.bar.com- notebook, rodando Windows 10 com usuário AD, endereço IP10.21.5.104
  • Ponte de rede- converteu a interface de rede única doABC-DT001-Lpara uma ponte, que em troca é usada por todas as VMs que pretendo executar
  • Interruptor HP ProCurve 1810g-8 J9449A- switch gerenciado ao qual minhas máquinas estão conectadas dentro do meu escritório (não tenho acesso a ele), endereço IP 10.21.99.10(ou pelo menos é o que diz a etiqueta)
  • Gateway padrão- Endereço de IP10.21.5.1
  • Servidor DHCP- Endereço de IP10.21.1.3
  • Servidor dns- Endereço de IP10.21.1.3
  • Servidor WINS primário- Endereço de IP10.21.1.10

Do nosso departamento de TI me disseram que se uma máquina tiver um endereço MAC permanente eu sempre posso, por exemploABC-DT001-L.foo.bar.compara acessar meuABC-DT001-Lmáquina.

No nível KVM, tenho a ponte padrão ( virbr0ou algo assim) definida ao criar uma VM para permitir que o sistema da VM sincronize o tempo de alguma forma, bem como minha própria ponte que liga a VM à única porta Ethernet que meu host possui, permitindo-lhe acessar a Internet e também a rede interna do nosso instituto. Então, em termos de endereços MAC no meu PC, eu tenho

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

em relação à minha ponte.

Caso você esteja interessado na ponte padrão que tenho 52:54:00:58:04:50(lado do host) e 52:54:00:1e:cf:8b(lado da VM).

Aqui está o que funciona:

  • ABC-NB001- pode fazer ping e SSHABC-DT001-L
  • ABC-NB001- pode fazer ping, SSH e VNC se conectaremABC-DT001-L-VM0(porta 5900 para cockpit, porta 5901 para qualquer outro visualizador VNC, já que também executo o X11VNC em paralelo ao que o cockpit já fornece para permitir acesso no futuro apenas à VM e não ao servidor subjacente)
  • ABC-DT001-L- pode fazer ping e SSHABC-DT001-L-VM0, pode fazer pingABC-NB001
  • ABC-DT001-L-VM0- pode fazer ping e SSHABC-DT001-L, pode fazer pingABC-NB001

Além disso, posso fazer ping e acessar o console da web doABC-DT001-Lde nossos servidores Windows (aqueles que iremos converter para Linux no futuro). Colegas meus, trabalhando em home office, também podem (através de nossa VPN) fazer ping e acessarABC-DT001-L.

Aqui está o que não funciona:

  • Acesso aABC-DT001-L-VM0de nossos servidores, incluindo apenas ping
  • Acesso aABC-DT001-L-VM0das máquinas dos meus colegas através de VPN

Portanto, parece que qualquer coisa além do switch não consegue acessar as VMs de nenhuma maneira possível. Uma coisa que notei, que acho que é de se esperar, é que por trás do switch também posso simplesmente usar o nome do host em vez do nome completo para obter acesso a todas as minhas máquinas.

Parece que o problema é a ponte. Antes de cutucar o urso (nosso departamento de TI), gostaria de tentar resolver o problema (com sua ajuda, é claro).

informação relacionada