
У меня есть хост-машина и Linux VM внутри нее, через VMWare. Там VM настроена на использование NAT, что, как я думаю, означает, что у хоста нет отдельного сетевого интерфейса для VM.
Могу ли я подключиться к этой виртуальной машине по ssh с какой-то другой машины? Как узнать, какой порт использовать на хосте для настройки переадресации портов?
Я знаю, что это может быть проще сделать, если я переключу виртуальную машину на мостовой адаптер, но мне было интересно, возможно ли это с NAT.
решение1
Это можно сделать, настроив переадресацию портов в конфигурации сети NAT.
Вы забыли упомянуть используемый вами продукт. Если это VMware Workstation Professional, то вы можете настроить переадресацию портов следующим образом:
- Перейдите в меню -> Правка -> Редактор виртуальной сети
- Выберите строку с «VMNET8 NAT NAT»
- Нажмите на кнопку «Настройки NAT»
- Кнопка «Добавить»
- Здесь вы можете добавить порт на вашем хосте, на котором вы хотите принимать ваш SSH. Я бы предложил использовать что-то другое, например 22, чтобы ваш хост мог использовать SSH при необходимости. Например, введите 2022 для порта хоста.
- Добавьте IP-адрес виртуальной машины.
- Добавить порт виртуальной машины 22
- добавить описание
Нажмите ОК.
Теперь вы сможете получить доступ к виртуальной машине через SSH, подключившись к хосту через порт 2022.
решение2
Кроме того, вы можете установить шлюз по умолчанию внутри клиентов.
Сначала перехватите сеть VMware NAT default gateway IP address
по этому пути:
- Главное меню
- Редактировать
- Редактор виртуальной сети
- Выберите
NAT
сеть - Нажмите на кнопку
Nat Setting
и найдитеGateway IP
Во-вторых, установите этот IP-адрес на своих машинах VMware как default gateway address
.