Назад | Перейти на главную страницу

Как мне подключиться к моей виртуальной машине Ubuntu по ssh, когда мой Mac подключен к VPN?

Я могу использовать ssh в моей виртуальной машине Ubuntu (работающей в VMware Fusion), когда я не использую VPN моего работодателя. (Это работает как при подключении виртуальной машины к сети через NAT, так и через мост.) Но когда я подключаюсь к VPN, я больше не могу подключиться к моей виртуальной машине по ssh:

$ ssh 172.16.193.128
ssh: connect to host 172.16.193.128 port 22: Operation timed out

Я пробовал использовать сетевое соединение как NAT и через мост, и у меня та же проблема. Я даже пробовал переключиться с моста на NAT после подключения к VPN.

Я могу пинговать свой Mac с виртуальной машины при подключении к VPN.

Что вызывает эту проблему? Есть какие-нибудь советы по устранению неполадок? Есть ли обходной путь?

(Обратите внимание, что я хочу иметь возможность использовать ssh в виртуальной машине, чтобы я мог смонтировать ее файловую систему с помощью MacFUSE и редактировать файлы с помощью моего редактора Mac OS X и т. Д.)

Я подозреваю, что когда вы подключаетесь к VPN, он изменяет таблицы маршрутизации на вашем компьютере и перенаправляет этот маршрут в VPN. Я верю бегу netstat -r в то время как оба подключены и отключены от VPN, и различие результатов будет способом проверить это.

Я предполагаю, что вы не можете пинговать виртуальную машину с Mac при подключении, но можете при отключении.

Я считаю, что вы можете обойти это, используя обратный туннель SSH. (Вот одно объяснение, как это сделать - обратите внимание, что я на самом деле не пробовал.)

В качестве альтернативы, есть ли у виртуальной машины другой способ получить к ней доступ? Можете ли вы использовать mDNS (Bonjour) для подключения, скажем, с помощью hostname.local, где hostname - это имя хоста виртуальной машины?

Вы также можете отказаться от использования маршрута по умолчанию для VPN-туннеля. Таким образом, весь трафик, кроме трафика вашей сети VPN, будет отправляться нормально. Однако в моем офисе у нас есть несколько сетей, которые необходимы при подключении к VPN. Мне каждый раз приходится добавлять определенные маршруты после создания VPN-туннеля.

Предположим: 10.0.0.100 для VPN назначен адрес Mac 10.0.0.0 с подсетью 255.255.255.0 для основной рабочей сети 10.0.100.0 с подсетью 255.255.255.0 для второй рабочей сети

Под Windows: route add 10.0.100.0 mask 255.255.255.0 10.0.0.100 Под Linux: route add -net 10.0.100.0 netmask 255.255.255.0 gw 10.0.0.100