6

Существует множество вопросов о проблемах переадресации портов VirtualBox, но ни одного, с моими конкретными деталями. Детали настройки:

У меня установлена 64-битная Windows 7 Professional, установленная в VirtualBox 4.1.2 и размещенная в Mac OS X 10.6.8. У меня есть несколько веб-серверов, работающих на localhost на разных портах в рамках установки Windows. Я не могу всю свою жизнь использовать переадресацию портов, чтобы получить доступ к этим веб-серверам из Mac OS X.

Мои настройки выглядят так; да у меня есть адаптер NAT:

И в моем файле конфигурации VirtualBox соответствующая часть выглядит следующим образом:

<NAT>
  <DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
  <Alias logging="false" proxy-only="false" use-same-ports="false"/>
  <Forwarding name="RLPWeb" proto="1" hostport="7084" guestip="127.0.0.1" guestport="7084"/>
  <Forwarding name="UtilWeb" proto="1" hostport="4040" guestip="127.0.0.1" guestport="4040"/>
  <Forwarding name="WCARLP" proto="1" hostport="8084" guestip="127.0.0.1" guestport="8084"/>
  <Forwarding name="WCAUtil" proto="1" hostport="4848" guestip="127.0.0.1" guestport="4848"/>
</NAT>

Я отключил брандмауэр Windows, чтобы он не мешал, и я не использую брандмауэр в Mac OS X.

В любом случае, когда я пытаюсь перейти, например, по http://127.0.0.1:4040/ в любом из моих браузеров Mac OS X, время ожидания истекает.

Файл журнала для этой виртуальной машины показывает, что она правильно читает настройки и подразумевает, что делает все правильно:

00:00:08.286 NAT: set redirect TCP host port 4848 => guest port 4848 @ 127.0.0.1
00:00:08.286 NAT: set redirect TCP host port 8084 => guest port 8084 @ 127.0.0.1
00:00:08.286 NAT: set redirect TCP host port 4040 => guest port 4040 @ 127.0.0.1
00:00:08.286 NAT: set redirect TCP host port 7084 => guest port 7084 @ 127.0.0.1
00:00:08.290 Changing the VM state from 'LOADING' to 'SUSPENDED'.
00:00:08.290 Changing the VM state from 'SUSPENDED' to 'RESUMING'.
00:00:08.290 Changing the VM state from 'RESUMING' to 'RUNNING'.
00:00:08.337 Display::handleDisplayResize(): uScreenId = 0, pvVRAM=000000012017d000 w=1834 h=929 bpp=32 cbLine=0x1CA8, flags=0x1
00:00:09.139 AIOMgr: Host limits number of active IO requests to 16. Expect a performance impact.
00:00:13.454 NAT: DHCP offered IP address 10.0.2.15

Я попытался установить Host IP на 127.0.0.1 , и я попытался установить Guest IP пустым, а также 10.0.2.15 . Ничто из этого не помогает.

Что еще я могу посмотреть, чтобы устранить эту проблему?

3 ответа3

0

Вы пытались подключить соединение от Windows VM к Mac? Нахождение под трансляцией сетевых адресов NAT оказался головной болью и для меня, находясь внутри виртуальной машины. Наличие моста предоставляет виртуальной машине IP-адрес, который может видеть хост. Учитывая ситуацию с переадресацией портов, это не должно быть проблемой, но я бы попытался перенаправить порты с реальных IP-адресов, а не с преобразованных.

0

Я заметил проблемы с переадресацией портов на хосте macOS X VirtualBox.

Использование сетевого адаптера PCnet-Fast III (Am79C973) и образа Oracle Developer Day в качестве гостя.

Всякий раз, когда я приостанавливаю гостя и возобновляю его, все портовые порты теряются.

Я не уверен, связаны ли проблемы с сетевым адаптером или с гостем, но я не вижу, как гость мог знать о переадресации порта.

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

0

В соответствии с официальной документацией VirtualBox предпочтительный способ сделать это - установить в сети режим Host-Only или Bridged.

tl; dr: использовать Bridged, а не NAT.

источник: https://www.virtualbox.org/manual/ch06.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .