Bridge virtualbox mac os

Как разделить интернет-соединение в Mac OS X с Virtualbox vm, используя только Host

В одной строке: возможно ли следующее: AirPort только vbox-Host -> виртуальные машины

На Mac OS X у меня есть VirtualBox с виртуальной машиной. На данный момент я настроил 2 интерфейса для моей виртуальной машины. eth0 — нормальный мост для моей виртуальной машины для доступа в Интернет (когда AirPort подключен). eth1 установлен только для хоста, поэтому я могу получить доступ к своей виртуальной машине с хоста, когда Wi-Fi/AirPort не работает. Так что в основном это как адаптер 1, когда есть Wi-Fi, адаптер 2, когда его нет.

Я хотел бы иметь только одну конфигурацию, чтобы сделать ее проще. Я подумал, что могу просто сохранить конфигурацию «Только хост», и на хосте (Mac OS X) перейти в общий доступ к Интернету и выбрать «поделиться с AirPort» для vboxnet0 (виртуальный интерфейс vb). Только чтобы узнать, что vboxnet0 не отображается в списке интерфейсов в настройках Mac OS X.

Я знаю, что на хосте Linux вы можете установить что-то под названием bridge-utils и использовать это для соединения двух интерфейсов. Есть ли что-нибудь подобное для Mac?

1 ответ 1

На самом деле это довольно просто, но требует определенного уровня технических знаний о сети и маршрутизации.

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

То, что вы пытаетесь достичь, может быть сделано очень хорошо без необходимости какого-либо NAT.

По сути, теория такова: вы создаете отдельную сеть, которая является сетью только для хоста, включаете пересылку IP на Mac и настраиваете статический маршрут в аэропорту.

Допустим, ваша обычная сеть — 192.168.1.0/24, аэропорт — 192.168.1.1, а ваш Mac — 192.168.1.200. Для этого вам понадобится статический IP-адрес на Mac. Для сети «Только хост» уже назначен диапазон IP-адресов, и в качестве аргумента, скажем, 10.0.0.0/24 с концом Mac на 10.0.0.1 и виртуальной машиной, работающей на 10.0.0.8.

Итак, мы хотим добиться:

Включение IP-пересылки на Mac достаточно просто. Если вы используете версию 10.5 или ниже, найдите файл /etc /hostconfig и найдите строку для IP-пересылки (я забыл, что это не так), и установите для нее значение YES. Во всех других версиях OS /X, а также в 10.5 или ниже, вы можете изменить /etc/sysctl.conf и добавить:

После этого вы можете включить переадресацию без перезагрузки, набрав (от имени пользователя root):

Итак, теперь сетевые пакеты могут попасть из основной сети в сеть только для хоста. Но как нам рассказать остальной сети об этой сети только для хоста? На данный момент об этом знает только Mac.

Ну, это опять-таки простое дело. Вам не нужно сообщать об этом всем хостам в сети, только одна общая точка вызова для всех устройств — шлюз по умолчанию — в данном случае это Аэропорт.

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

Вы ищете настройки, где вы можете указать статические маршруты. Он может быть помечен как таковой или как таблица маршрутизации или что-то подобное. Когда вы найдете его, вам нужно настроить маршрут для сети Host Only через ваш Mac. Это где наличие статического адреса на вашем Mac имеет важное значение. Маршрут, который нужно настроить, будет использовать что-то вроде следующих настроек (из примера выше). Замените цифры фактическими IP-адресами и сетевыми масками):

Как только вы настроите этот маршрут, любой трафик, предназначенный для вашей сети Host Only, будет сначала направляться в аэропорт, который будет отвечать «На самом деле, вы не хотите говорить со мной, вы хотите говорить с 192.168.1.200» « и трафик будет перенаправлен на ваш Mac — который, в свою очередь, передаст его в сеть Host Only.

Единственное, в чем можно быть уверенным, это то, что гостевая операционная система, работающая на ВМ, имеет шлюз по умолчанию, установленный для ее работы в сети. Это должен быть конец Mac в сети Host Only (10.0.0.1 в приведенном выше примере).

Так как же это получить виртуальную машину в интернете? Что ж, довольно просто: в действительности ваша сеть расширяется до сети Host Only, а все остальное позаботится маршрутизатор (Airport). Он имеет дело с NAT и знает, какой трафик предназначен для основной сети, а какой — для сети только для хоста.

Читайте также:  Подключение по локальной сети неопознанная сеть windows

Источник

Bridge virtualbox mac os

With bridged networking, Oracle VM VirtualBox uses a device driver on your host system that filters data from your physical network adapter. This driver is therefore called a net filter driver. This enables Oracle VM VirtualBox to intercept data from the physical network and inject data into it, effectively creating a new network interface in software. When a guest is using such a new software interface, it looks to the host system as though the guest were physically connected to the interface using a network cable. The host can send data to the guest through that interface and receive data from it. This means that you can set up routing or bridging between the guest and the rest of your network.

Even though TAP interfaces are no longer necessary on Linux for bridged networking, you can still use TAP interfaces for certain advanced setups, since you can connect a VM to any host interface.

To enable bridged networking, open the Settings dialog of a virtual machine, go to the Network page and select Bridged Network in the drop-down list for the Attached To field. Select a host interface from the list at the bottom of the page, which contains the physical network interfaces of your systems. On a typical MacBook, for example, this will allow you to select between en1: AirPort, which is the wireless interface, and en0: Ethernet, which represents the interface with a network cable.

Bridging to a wireless interface is done differently from bridging to a wired interface, because most wireless adapters do not support promiscuous mode. All traffic has to use the MAC address of the host’s wireless adapter, and therefore Oracle VM VirtualBox needs to replace the source MAC address in the Ethernet header of an outgoing packet to make sure the reply will be sent to the host interface. When Oracle VM VirtualBox sees an incoming packet with a destination IP address that belongs to one of the virtual machine adapters it replaces the destination MAC address in the Ethernet header with the VM adapter’s MAC address and passes it on. Oracle VM VirtualBox examines ARP and DHCP packets in order to learn the IP addresses of virtual machines.

Depending on your host operating system, the following limitations apply:

Mac OS X hosts. Functionality is limited when using AirPort, the Mac’s wireless networking system, for bridged networking. Currently, Oracle VM VirtualBox supports only IPv4 and IPv6 over AirPort. For other protocols, such as IPX, you must choose a wired interface.

Linux hosts. Functionality is limited when using wireless interfaces for bridged networking. Currently, Oracle VM VirtualBox supports only IPv4 and IPv6 over wireless. For other protocols, such as IPX, you must choose a wired interface.

Also, setting the MTU to less than 1500 bytes on wired interfaces provided by the sky2 driver on the Marvell Yukon II EC Ultra Ethernet NIC is known to cause packet losses under certain conditions.

Some adapters strip VLAN tags in hardware. This does not allow you to use VLAN trunking between VM and the external network with pre-2.6.27 Linux kernels, or with host operating systems other than Linux.

Oracle Solaris hosts. There is no support for using wireless interfaces. Filtering guest traffic using IPFilter is also not completely supported due to technical restrictions of the Oracle Solaris networking subsystem. These issues may be addressed in later releases of Oracle Solaris 11.

On Oracle Solaris 11 hosts build 159 and above, it is possible to use Oracle Solaris Crossbow Virtual Network Interfaces (VNICs) directly with Oracle VM VirtualBox without any additional configuration other than each VNIC must be exclusive for every guest network interface.

When using VLAN interfaces with Oracle VM VirtualBox, they must be named according to the PPA-hack naming scheme, such as e1000g513001. Otherwise, the guest may receive packets in an unexpected format.

Copyright В© 2004, 2020 Oracle and/or its affiliates. All rights reserved. Legal Notices

Источник

MacOS X + VirtualBox = любовь: Запускаем макось под виртуальной машиной

Содержание статьи

Единственно верный способ почувствовать прелесть Mac OS X — купить компьютер или ноутбук Mac. Удобно, быстро, стабильно и без геморроя — человеческий подход в лучших традициях Mac. Желая познать непознаваемое, а именно — Mac OS X на обычном PC, энтузиасты активно допиливают различные виды Хакинтоша, ругаются словами «кекст» и боятся апдейтов системы. Еще сложнее было заставить макось работать под виртуальной машиной, но это только до сегодняшнего дня.

Читайте также:  Аналог planner 5d для windows

Экспериментальная поддержка

Все началось с того, что я решил попробовать написать приложение для iPhone/iPad и тут же встрял из-за досадного ограничения. Оказалось, SDK разработчика и все сопутствующие инструменты доступны только для платформы Mac OS Х. По правде говоря, Mac я собираюсь купить уже довольно давно, особенно после мучительных танцев с Хакинтошом, но, увы, заветный Macbook Pro 15″ как был, так и остается лишь пунктом в списке «Хочу купить».

Колдовать снова с установкой Mac OS на свой PC, не имея гарантии, что смогу хотя бы запустить нужный софт, не было никакого желания. Опыт подсказывал, что ничего хорошего не выйдет и с виртуальными машинами. Ни одно решение для виртуализации, будь оно от Microsoft, Parallels, VMware или Sun, без шаманства (важный момент!) не позволяет запустить Mac OS в качестве гостевой ОС! Вернее говоря, не позволяло. Изучая changelog программы VirtualBox’а (теперь уже распространяемое под эгидой компании) Oracle, которую в последнее время использую в качестве основного средства виртуализации, наткнулся на очень интересную строчку: «Experimental support for Mac OS X Server guests». Опция впервые появилась в версии 3.2.0 и далее часто упоминается. Получается, в качестве гостевой OS теперь можно установить макось? Слово «server» сначала сбило с толку, но быстро выяснилось, что это есть не что иное, как лицензионное ограничение Mac OS X. Дело в том, что лицензия допускает установку ОС только на компьютеры и ноутбуки Mac. Все остальное, включая Хакинтоши и прочие извращения, по большому счету запрещены — вполне логичный шаг со стороны компании Apple. А вот ограничение внутри самой VirtualBox, как оказалось, искусственное. Быстро нашлось немало отзывов о том, что под VirtualBox’ом отлично устанавливается последняя версия Mac OS X, то есть Snow Leopard (такое вот кодовое имя релиза). Тут надо иметь в виду, что подобный опыт напрямую нарушает лицензию системы, поэтому может рассматриваться исключительно в образовательных целях.

Создание виртуальной машины

Главное требование для установки Mac OS X — поддержка процессором спецификации VT-x. Intel Virtualization Technology for x86 поддерживается практически всеми современными процессорами Intel, включая большинство Сore 2 Duo/Quad и модных i3/i5/ i7. Мы проводили эксперимент на Core 2 Duo E8500 и Windows 7 в качестве основной системы. Во многих случаях система должна завестись и на процессоре от AMD, но только при условии, что тот имеет поддержку технологии виртуализации AMV-V. Далее потребуется официальный диск с Mac OS X или его образ (у нас была версия 10.6.3), конечно же, легально купленный (это тебе не Windows!). Если образ сграблен под Mac OS и имеет разрешение .dmg, то привести его в привычный ISO-вид поможет утилита dmg2img (vu1tur.eu.org/tools): dmg2img source_file. dmg destination_file.iso. Далее необходимо создать «правильную» виртуальную машину, на которую и будет установлена система. Собственно, начать нужно с того, что указать тип гостевой системы — «Mac OS X Server». Что приятно, такой тип выбирается автоматически — стоит только в названии виртуалки использовать слова «mac» или, скажем, «leopard». Крайне желательно выделить виртуаль ной машине минимум 1024 Мб оперативки и создать виртуаль ный жесткий диск на 20 Гб (вполне можно использовать опцию «Dynamically expanding storage»). После создания виртуалки не лишним будет открыть ее свойства и, во-первых, отключить эмуляцию floppy-диска, а во-вторых, установить количество видеопамяти, равное 128 Мб. В качестве IDE-контроллера должен быть выставлен тип ICH6, но это работает и по умолчанию.

Далее есть два пути. Первый и самый правильный — обойтись силами одной только VirtualBox. Для этого необходимо закрыть программу (крайне важно, иначе ничего не получится!) и найти XML-конфиг только что созданной виртуалки. В XP он находится здесь: C:\Documents and Settings\ \.VirtualBox\ Machines\ \ .xml, в Vista/ Windows 7 C:\Users\ \.VirtualBox\Machines\ \ .xml. Под Linux’ом ищи XML внутри /home. В этом файле есть несколько строк, описывающих так называемые ExtraDataItem. Найди это место поиском в любом текстовом редакторе и добавь еще две строчки:

После этого можно сохранить конфиг и заново запускать VirtualBox. Последний штрих — выбрать в качестве cdrome образ с Mac OS X и стартовать виртуальную машину. В 90% случаев запустится графический инсталлятор, и можно будет спокойно установить ось. Откуда берутся эти 10% неудач, сказать сложно. Однако если вдруг во время загрузки выплывает какая-нибудь kernel-ошибка, или многообещающе появится серый экран с курсором, но на этом все и останавливается, можно попробовать другой путь. В этом случае уже не надо никак шаманить с конфигом виртуалки (если добавил туда ExtraDataItem’ы, то их надо удалить). Идея в том, чтобы использовать альтернативный загрузчик — Empire EFI (prasys.co.cc/tag/empire-efi). Штука распространяется в виде ISO-файла (например, empireEFIv1085.iso), которую надо примонтировать к виртуалке и отдать команду на старт. Во время загрузки появится уже темный интерфейс Empire EFI — в этот момент надо демонтировать текущий образ альтернативного загрузчика и подключить ISO’шку со Snow Leopard. Обновляем информацию о диске ( ), жмем — вуаля, опять же получаем окно установщика Mac OS X.

Читайте также:  Windows batch command file

Установка и настройка

Тем или иным способом появляется графический интерфейс установщика системы, который приветливо предлагает выбрать язык для установки. Далее, спросив, куда необходимо установить ОС, он почему-то не предложит никаких вариантов. Все потому, что еще не размечен жесткий диск (виртуальный). Для того, чтобы создать структуры и отформатировать разделы, запускаем дисковую утилиту из раздела «Утилиты» верхнего меню. Тут выбираем вкладку «Стереть», потом жмем кнопку «стереть», и утилита сама все сделает за нас. Теперь указываем установщику размеченный раздел — и начинается процедуры установки. Reboot.

Полностью рабочая система с достойным разрешением, поддержкой клавиатуры/мыши, а также сетевого адаптера — вот, что тебя ждет сразу после перезагрузки компьютера. Единственное — придется пройти процедуру идентификации клавиатуры (мастер потребует нажать на клавиши рядом с ’ами), а также создать учетную запись пользователя. Тут надо помнить, что раскладка клавиатуры переключается комбинацией + . От всех процедур регистрации и создания учетки в сервисе MobileMe можно смело отказаться, как и от процедуры переноса данных с другого компьютера Mac (ведь как заботливо, а!?). Далее, когда со всеми этими вопросами от нас отстанут, можно, наконец, пощупать саму систему.

Щелкаем по окошкам, запускаем различные программы, пробуем открыть страницы в браузере Safari. Тут же скачиваем Textmate, легендарный текстовый редактор для Mac OS X, в виде непривычного dmg-файла (формат дистрибутивов в Mac OS X) и устанавливаем — опять же, все отлично работает. Конечно, совсем не так шустро, как на самом Mac’е, и не так быстро, как в случае Хакинтоша, но при этом вполне комфортно. В эйфории от того, что не надо мучиться с кекстами и прочими шаманствами, можно даже не заметить отсутствие звука — в системе нет драйвера для звукового контроллера ICH AC97, который эмулирует VirtualBox. Вероятно, этот факт сильно напрягал энтузиастов, поэтому на форуме виртуалки быстро появились необходимые дрова. Добротный установщик, доступный на forums.virtualbox.org/viewtopic.php?f=4&t=30843, избавит даже от возни с ручной правкой kext’ов. Просто скачай PKG-файл, запусти его и перезапусти систему. Помимо отсутствия звука меня напрягало фиксированное разрешение, установленное в гостевой ОС, равное 1024×768. К счастью, и для этого есть маленький хинт, который опять же необходимо провернуть в конфиге виртуалки. Открываем XML-файл в текстовом редакторе и после всех ExtraDataItem добавляем новую строку:

Параметр N — это числа от 0 до 4, означающие разрешения 640×480, 800×600, 1024×768, 1280×1024, 1440×900 соответственно.

С помощью этой строки мы указываем, что виртуальная машина должна использовать так называемый VirtualBox EFI. EFI — это Extensible Firmware Interface, новый индустриальный стандарт, который должен заменить БИОС в качестве основного интерфейса.

Увы, в рамках используемого виртуальной машиной EFI другие разрешения не поддерживаются, но даже 1440×900 вполне достаточно для комфортной работы. Вот чего пока не хватает, так это поддержки надстройки Guest Additions, с помощью которой, например, можно очень просто обмениваться файлами между хостовой и гостевой машиной. Сейчас для этого придется использовать протокол SMB. Для этого сначала нужно его включить. Переходим в настройки: «Меню u„ Системные настройки „Љ Интернет и беспроводная сеть „| Общий доступ» и включаем «Общий доступ к файлам». В «параметрах» необходимо активировать протокол SMB. Теперь к любой Windows-машине с расшаренными ресурсами можно подключиться через меню «Переход „Ђ Подключение к серверу». Надо лишь указать адрес хоста в адресной строке: smb://10.0.2.2. Кстати говоря, значение 10.0.2.2 неслучайно: в большинстве случаев (то есть с сетевыми настройками VB и виртуальной машины по умолчанию) это будет адрес хостовой машины.

Купить MAC

Сама по себе поддержка Mac OS X в качестве гостевой ОС — это очередной шаг вперед ребят из команды VirtualBox. Многие из них живут и работают в Питере и еще пару лет назад с радостью показывали мне только что введенную поддержку 3D-ускорения внутри гостевых систем. Потом появился flash-клиент для доступа к виртуальным машинам. Теперь — новая фича, и опять «полный улет». С другой стороны, как бы просто ни было поставить макось под виртуалкой, это никогда не заменит настоящего Mac’а: быстрого компьютера или ноутбука с прекрасным экраном, чумовым тачпадом и долгой батареей. Помни об этом.

Источник

Оцените статью