Как связаться с гостем Vbox с хоста при использовании сети NAT


13

Используя Fedora или Ubuntu для хоста с отключенными межсетевыми экранами с каждой стороны (vbox guest & host), что мне нужно сделать, чтобы добраться до гостевой машины с помощью интерфейса NAT, как это было бы с мостовым интерфейсом? (Только с хоста vbox!)

Обновление : ifconfigна хост-машине:

# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:41:56:6B:78:4E  
      inet addr:192.168.1.2  Bcast:.192.168.1.255  Mask:255.255.255.0
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:271850 errors:0 dropped:0 overruns:0 frame:0
      TX packets:144494 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:256776500 (244.8 MiB)  TX bytes:10670238 (10.1 MiB)
      Interrupt:16 Memory:fc500000-fc520000 

lo        Link encap:Local Loopback  
      inet addr:127.0.0.1  Mask:255.0.0.0
      UP LOOPBACK RUNNING  MTU:16436  Metric:1
      RX packets:77698 errors:0 dropped:0 overruns:0 frame:0
      TX packets:77698 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:104227086 (99.3 MiB)  TX bytes:104227086 (99.3 MiB)

vboxnet0  Link encap:Ethernet  HWaddr 0A:00:27:00:00:00  
      BROADCAST MULTICAST  MTU:1500  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

Ответы:


12

Согласно этой документации , текущие версии VirtualBox не предоставляют внутренние интерфейсы NAT для хоста. Вы можете настроить специальные правила переадресации портов для доступа к блокам, но даже хост не может получить доступ ко всему интерфейсу. Вы должны использовать мостовые сети для этого.


Я обновил Вопрос. Нет, у меня нет никаких IP-адресов по умолчанию от Virtualbox.
LanceBaynes

Смотрите обновленный ответ. Извините, прошло уже много времени с тех пор, как я использовал NAT в VirtualBox, и машина, на которой я его использую, имеет подинтерфейсы, сделанные мной, по-видимому, не VB.
Калеб

12

Эта команда будет перенаправлять весь TCP-трафик, поступающий на интерфейс localhost (127.0.0.1) через порт 33890, на порт 3389 гостя.

$ VBoxManage modifyvm "xp" --natpf1 "guestrdp,tcp,127.0.0.1,33890,,3389"

Пожалуйста, добавьте это как комментарий к моему ответу, а не как отдельный ответ.
Калеб

1
Сначала я преобразовал это в комментарий, но похоже, что это действительно добавляет важную часть ответа
Майкл Мрозек

@Michael: В любом случае это не так важно, но на самом деле решение не в том, о чем его вопрос просит. Переадресация портов отличается от демонстрации сетевого интерфейса таким же образом, как это делает мост, поэтому я не включил точный синтаксис в свой ответ. Команда, которую он показывает, взята из документации, которую я предложил и с которой связывался в случае, если переадресация портов была приемлемой альтернативой.
Калеб

1

Я не проверял это на хосте Linux.

Звучит так, как будто вы хотите использовать NAT, чтобы ваш гость мог выходить в сеть, но также хотел получить доступ к гостю напрямую с хоста без переадресации портов.

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

Конфигурация NAT позволяет вашему гостю выйти, адаптер только для хоста позволяет вашему хосту войти.

Я обычно использую сети NAT, поэтому мои виртуальные машины могут общаться друг с другом. В графическом интерфейсе Windows оба параметра управляются в меню Файл-> Настройки-> Сеть.

Вкладка «Сети NAT» - добавить сеть «NAT». Отредактируйте его и дайте ему имя или пользовательский диапазон IP-адресов, если хотите.

Вкладка «Сеть только для хоста» - отредактируйте интерфейс по умолчанию и убедитесь, что адрес ipv4 находится в той же сети (но не в диапазоне dhcp!), Как настроена вкладка сервера dhcp. мой не соответствовал из коробки, так что сеть не работала.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.