Как получить доступ к VM внутри VM через VNC?

По некоторым причинам я установил виртуальные машины внутри виртуальной машины, например так:

A (B (C))

где A - это физическая машина, B - это vm, а тип сети - NAT. И C также является виртуальной машиной, и тип сети является мостовым.

Операционные системы - Ubuntu 12.04, а гипервизоры - KVM.

Я могу получить доступ к B через VNC и через ssh из A, но для CI не могу использовать ssh, потому что C не имеет IP-адреса в начале. И я предполагаю, что могу получить доступ к C только через VNC.

Я пробовал что-то вроде (на А):

iptables -t nat -A PREROUTING -d $ip-of-A -p tcp --dport 6500 -j DNAT --to-destination $ip-of-B:5900

(Я говорил об этом)

Но это не работает. И я читаю справочные страницы iptables и надеюсь, что кто-нибудь может помочь:)

1 ответ

У меня недостаточно репутации, чтобы комментировать.

Предполагая, что все машины имеют один сетевой адаптер. B - это NAT, а C - это мост. Вы можете получить доступ к B через A.

Может ли C получить доступ через B?

Может ли C получить доступ через A?

Если доступ к C возможен через B, вам придется переадресовать порт из A в B и перенаправить этот порт из B в порт 5900 из C.

Предполагая, что порт 65535 порта A пересылается на порт 65535 порта B, порт 65535 порта B будет перенаправлен на порт 5900 порта C для доступа к VNC. То же самое можно сделать для SSH и других сервисов.

Другие вопросы по тегам