A rota de rede somente para host do Virtualbox é eliminada pelo cliente Pulse Secure VPN

2

O Virtualbox torna-se indisponível para conexões de entrada do sistema operacional host quando a VPN está ativada. Assim, não posso usar clientes http / ssh / rdp para acessar o sistema operacional convidado do sistema operacional host enquanto o Pulse Secure VPN permanece conectado.

Host OS: OSX High Sierra. Meu entendimento é que um cliente VPN não deve antecipar as rotas no espaço de endereços IPv4 privado. Alguma solução alternativa para resolver isso?

    
por wick 12.12.2017 / 16:06

1 resposta

2

Acabei criando um script para iniciar minha máquina virtual. A limitação é que você precisa ativar a VM quando a VPN está desligada porque o Pulse Secure bloqueia a criação de rotas necessárias.

Eu fiz este script um comando encaixado por conveniência -

#!/bin/bash

# visudo as root, add your_username ALL = (ALL) NOPASSWD:ALL

# vboxmanage list vms

guestip="192.168.86.3"
guestmac="8:0:27:22:4c:27"
vmname="WIN_ENT_10_64B"

# if the VM is running, leave it alone in peace:
vboxmanage showvminfo $vmname |grep "running (since"
[ "$?" -eq "0" ] && exit

# hide terminal window:
osascript -e 'tell application "Finder" to set visible of process "Terminal" to false'

# shutdown vbox network:
while [ -n "'netstat -rnf inet |grep $guestip'" ]; do
  sudo ifconfig vboxnet0 down
  sleep 1
done

# start VM and wait:
vboxmanage startvm $vmname --type separate
while [ -z "'netstat -rnf inet |grep $guestip'" ]; do
  sleep 1
done

# delete original route:
sudo route -n delete ${guestip%.*}.0

# create a network singularity in routing table:
sudo route -n add $guestip/32 -interface vboxnet0

# create the host on the network:
sudo arp -s $guestip $guestmac

osascript -e 'tell application "Terminal" to quit' &

Os scripts presumem que você pode usar o sudo sem uma senha.

guestip é configurado manualmente no sistema operacional convidado na "interface somente host" (normalmente # 2). Quando você cria um "adaptador de rede somente host" no VirtualBox, ele tem o DHCP ativado por padrão. Desativo o DHCP e atribuo um IP estático no sistema operacional convidado manualmente por motivos de consistência (aqui - 192.168.86.3, máscara de rede 255.255.255.0 ou CIDR / 24, DNS deixado em branco).

guestmac é o endereço MAC da interface de rede no sistema operacional convidado que possui o IP 192.168.86.3. Não confunda com o endereço MAC do "adaptador de rede somente host" na configuração do VirtualBox. Este último é configurado com 192.168.86.1/24 em nosso caso (MAC a: 0: 27: 0: 0: 0 abaixo).

Após a conclusão do script (o aplicativo terminal desaparece do cais), a saída esperada de netstat -rnf inet deve incluir entradas semelhantes:

192.168.86.3       8:0:27:22:4c:27    UHLS            3     4884 vboxnet
192.168.86.3/32    a:0:27:0:0:0       ULSc            0        0 vboxnet

Essas entradas persistirão em conexões / desconexões de VPN e permitirão que você acesse sua VM localmente, independentemente do estado da VPN.

    
por 15.12.2017 / 13:37