Разрешить доступ к виртуальной машине извне хост-машины только через порт

Разрешить доступ к виртуальной машине извне хост-машины только через порт

У меня есть VM A и VM B, работающие на хост-машине H. Обе эти VM используют NAT. Я хочу, чтобы эта VM была доступна для внешней машины в той же сети, но только через определенные порты. Например, предположим, что машина XYZ хочет получить доступ к VM, она должна иметь возможность доступа к VM только через определенный порт через HOST-IP::PORT.

Это то, что я сделал, чтобы выполнитьэтот.

Lets say my VM IP is 1.2.3.4

In vmware workstation 
-> edit
-> Network editor
-> Vmnet8(NAT) NAT settings
-> Port Forwaring Add 
-> Host Port 9191, Type TCP, VM IP 1.2.3.4, VM Port 5001
Then in the vm
-> Firewall setting allowed incoming from port 5001 

Но теперь, когда я пытаюсь с моей машины XYZ выполнить команду ping HOSTIP:port, я не могу успешно выполнить команду ping.

решение1

Ping использует icmp и не имеет понятия порта. Так что вы просто пингуете свою хост-машину.

Если у вас Windows, вы можете использовать telnet.

telnet HOSTIP 9191

Telnet доступен в разделе «Включение и отключение компонентов Windows».

Это, по крайней мере, протестирует переадресацию порта.

Обратите внимание, если он подключается, экран будет казаться "черным" или покажет какой-то текст в зависимости от сервиса. Если он не говорит connection failed, то он работает.

Связанный контент