Как разделить VPN-соединение в гостевой виртуальной машине VMWare с хостом

17

Необходимость

Этот вопрос актуален для всех тех, кто хочет обойти раздражающую VPN своей корпорации и получить доступ к своей рабочей / корпоративной сети со своего частного компьютера, особенно если корпоративное клиентское программное обеспечение VPN не может работать на их частном компьютере.

Домашнее задание

Этот вопрос очень похож на этот , на который нет ответа :(

Соревнование

Мы не можем запустить корпоративный VPN-клиент с частного компьютера, поэтому мы преобразовали рабочий ноутбук в виртуальную машину VMWare. VPN-клиент прекрасно работает в гостевой виртуальной машине, теперь мы хотим поделиться им с хостом (частным компьютером).

Спецификации:

  • Частный компьютер (хост-ОС) - Mac OS X Lion 64bit
  • Корпоративный ноутбук (гостевая виртуальная машина) - WinXP 32bit, работающий в режиме сетевого моста
  • VPN-клиентом на гостевой виртуальной машине является Checkpoint SecuRemote NGX R60 HFA03
  • Пока VPN работает в гостевой виртуальной машине, хост все еще может пропинговать гостя и наоборот
Hennes
источник

Ответы:

16

Мы настраиваем виртуальную машину с двумя сетевыми картами, одна локальная для связи с хостом, другая для связи с Интернетом. Затем мы заставляем хост использовать гостя в качестве маршрутизатора, стирая старый шлюз.

1) Сконфигурируйте свою виртуальную машину для запуска с 2 сетевыми адаптерами, один для мостового доступа, другой для подключения только к хосту. Сконфигурируйте соединение «Только для хоста», чтобы у DHCP-сервера было 192.168.56.100, а для раздачи IP-адресов 192.168.56.1 (скажем, для хоста) и 192.168.56.2 для гостя. На хосте я предполагаю, что интерфейс, связанный с гостем, называется vboxnet0 , если нет, измените, пожалуйста , соответственно.

Позвольте мне дать вам ссылку на то, как это сделать: посмотрите этот отличный ответ AskUbuntu

2) запустите вашу виртуальную машину, убедитесь, что вы можете подключиться к Интернету и можете пропинговать хост / с хоста, затем подключитесь через VPN.

3) На хосте измените шлюз по умолчанию на гость 192.168.56.2:

     route delete default
     route add default 192.168.56.2 dev vboxnet0

5) Теперь давайте вернемся к гостю: здесь вы найдете инструкции о том, как разделить ваше VPN-соединение с другими соединениями для Windows .

6) На хосте убедитесь, что у вас есть подключение, например, с помощью

    ping -c1 8.8.8.8

Если это работает, и вы можете подключиться к Интернету, все готово. Если это работает, но вы не можете подключиться к Интернету, это означает, что ваша конфигурация DNS повреждена, это очень легко исправить, см., Например, здесь .

Однако если пинг выше не может подключиться к Google, это означает, что есть проблема с гостем . Возможные причины включают ограничительный брандмауэр или некоторую ошибку ввода. Для диагностики проверьте таблицы маршрутизации на гостевой и хост-машине или полностью отключите брандмауэр.

И спасибо за предоставленный забавный проект.

MariusMatutiae
источник
Как бы я это сделал, если бы моим гостем был Linux, а моим хостом была Windows?
phant0m
@ phant0m Это похоже, но не идентично. Вы должны действительно задать другой вопрос, чтобы оставить место для правильного ответа.
MariusMatutiae
@MariusMatutiae возможно ли это сделать, не меняя шлюз по умолчанию и просто добавляя маршрут?
13
@ 13aal Извините, что так долго отвечал, я полностью пропустил ваше сообщение. Да, вы можете сделать это. Просто оставьте на хосте шлюз в точности таким, какой он есть, и добавьте новый маршрут в таблицу маршрутизации через гостя следующим образом: предположим, что вы хотите попасть только на сайт 1.2.3.4 через vpn, выполните ip route add 1.2. .3.4 / 32 через 192.168.56.2 dev vboxnet0, и все готово. Вы можете сделать это и для сетей, например 1.2.3.4/24 . Приветствия и извинения за поздний ответ еще раз.
MariusMatutiae
0

Вопрос в том, чтобы направить трафик с хоста виртуальной машины через VPN гостевой виртуальной машины (т.е. Checkpoint Secure Remote). NAT & ICS не будет работать, так как он специально заблокирован большинством совместных реализаций CSR.

Вкратце: вы можете настроить прокси-сервер в гостевой виртуальной машине и настроить соответствующий хост для использования прокси. Что касается CSR, ваш трафик происходит изнутри гостевой виртуальной машины и с радостью передает его.

user248492
источник
0

Есть более простой способ, если вы можете разместить виртуальную машину (с выбранной ОС и средой) на компьютере с программным обеспечением VPN. (Инструкции ниже предназначены для VMWare Player).

Короче говоря:

  1. Подключитесь к VPN на хосте.
  2. Соедините адаптер vpn хоста с соответствующим сетевым адаптером виртуальной машины.

    а. Это был VMnet0 в моем случае.

    б. Я рекомендую использовать vmnetcfg.exe для этого. Он поставляется с рабочей станцией VMWare, но это процесс, выполняемый вручную, чтобы извлечь его вручную. (Найдите шаги для этого на сайте SO или SU).

  3. Настройте гостя для совместного использования (NAT) IP-адреса хоста

Более подробные инструкции по шагам 1 и 3 см. По адресу: виртуальное частное соединение виртуального хоста

firetiger77
источник
1
Это не отвечает на вопрос с учетом ограничений. Он уже сказал, что хост не может запустить программное обеспечение VPN.
Генерал