Virtualbox bridged networking driver miniport что это

Обновлено: 07.07.2024

image

По работе мне часто приходится работать с перепрошитыми роутерами на DD-WRT или OpenWRT. Все время как-то получалось обходиться без роутера дома, но те возможности, которые дают эти прошивки, реально классные. Вот и задумался о приобретении роутера, такого чтоб тянул все сервисы, которые мне могут понадобиться. Остановился на выборе Asus RT-N16, но, правда, дороговата эта игрушка оказалась для меня. Это при том, что реальной необходимости в роутере не было, т.к. отлично спасала сетевая Wi-Fi карточка TP-LINK WN851ND.

Вот и пришла в голову идея о виртуальном роутере, опытом, по настройке которого, я сейчас с вами поделюсь.

Немного о плюсах и минусах:

1. +Низкая стоимость
дополнительные расходы у меня составили 150р на покупку 2й сетевой карты,
покупка сразу двух карточек обойдется в пределах 1000р

2. +Высокая производительность.
Максимум чем мы ограничены – это характеристики самого компьютера.

3. +Нет привязки к четкому железу.
Дает свободу по настройке нашего роутера

4. –Зависимость от компьютера.
Внешним фактором для этого роутера является ОС, которая не всегда работает стабильно.

5. –Постоянная работа компьютера.
После установки тихого кулера это вообще не проблема.

6. –Есть сложности в настройке.
Не каждый поймет и осилит, а тем более увидит в этом смысл

DD-WRT или OpenWRT?

OpenWRT крутая прошивка, но на x86 есть проблемы с загрузчиком.
(Не работала программная перезагрузка, т.е. только полное выключение виртуальной машины и заново ее включение.
После обновления VirtualBox до 4.3.4, вообще перестала запускаться.)

Проблем с DD-WRT тоже не получилось избежать, но она была всего одна и останавливаться на ней я не буду.

image


Изначальная картина моих сетевых подключений

Для начала скачаем и установим VirtualBox, коль таковой
отсутствует, и архив, в котором присутствуют все необходимые программы и файлы.

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

Первая настройка:

Первую настройку проще всего сделать через другую виртуальную машину с Гостевой ОС,
подключенную к роутеру по внутренней сети.
Настройку сети вы можете видеть на скришоте.

image

Если вы увидели следующую картинку, радуйтесь!
У вас получилось!

image

Тут достаточно просто ввести новый логин и пароль.
Смело нажимайте Change Password и после этого выключаем обе машины (роутер и ОС).

Настраиваем сеть:

1) Создаём новые интерфейсы.
В главном окне VirtualBox нажимаем комбинацию Ctrl+G.
Переходим Сеть->Виртуальные сети хоста. Создаем два
виртуальных адаптера и сразу в настройках ip поставим все в автомат:

image

2) Настраиваем сеть роутера.
Включаем все четыре сетевых адаптера.
Проверяем, чтобы везде тип адаптера был PCnet-FAST III.
Везде я разрешил неразборчивый режим.
В первом адаптере делаю сетевой мост с адаптером, в который у меня подведен интернет и
т.к. у меня идет привязка по MAC адресу, прописал точно такой же как у адаптера.

image

Второй адаптер делаем тип подключения Виртуальный адаптер хоста и
выбираем первый адаптер в имени.
Мак адрес для красоты я написал 000000000002
и в сетевых подключениях назвал подключение как 2) Router_02

image

Третий адаптер делаем по аналогии со вторым, только двойки
меняем на тройки.

image

Четвертый пока оставим неподключенным

image

А теперь договоримся:

Мы будем весь канал интернета перенаправлять на роутер и раздавать по виртуальным адаптерам.
Второй адаптер нам необходим для доступа в интернет именно этой (хостовой) машины,
а третий для раздачи сети по LAN. Иначе, если раздавать интернет, через который сидим, то
будут проблемы с маршрутизацией, как показала практика.

Заводим полностью интернет на роутер:

Отключаем в свойствах сетевого интерфейса интернета все службы, клиенты и протоколы,
кроме VirtualBox Bridged Networking Driver

image

Раздаем интернет по Lan:

Т.к. все четыре адаптера роутера у нас будут заняты, делаем сетевой мост средствами ОС.

Октлючаем всё в свойствах второй сетевой карты и уже потом объединяем в сетевой мост с 3) Router_03

image

Раздаем интернет по Wi-Fi:

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

image

После запуска точки доступа в сетевых подключениях
у вас появится еще один виртуальный адаптер Microsoft Virtual WiFi Miniport Adapter.
Все настройки IP ставим автоматически и добавляем в сетевой мост с четвертым адаптером роутера

image

Скрытый запуск роутера.
Открываем с помощью procexp.exe свойства процесса роутера и копируем параметры запуска.
Редактируем файл StartRouterVirtualBox.VBS и заменяем параметры на свои.

image

Можно скрипт кинуть просто в автозагрузку.
Я предпочел другой вариант – Планировщик заданий
Создал задачу с названием «1) StartRouterVirtualBox», указал выполнять с наивысшими правами.
В триггерах создал условие при входе в систему и в действиях указал путь до скрипта.

Скрытый запуск программы MyPublicWiFi.
Создаем задачу «2) MyPublicWiFi».
Меняем учетную запись на «система» (если у вас Windows 8, то «Система») (написать ручками)
Делаем наивысшие права и делаем задачу скрытой.
В действиях указываем запуск программы,
а в триггере создаем «запуск при входе любого пользователя» с задержкой в 30 сек.

Настройка роутера:

Я не буду повторяться о том как настроить DD-WRT.
Настройку интернета и всей прошивки вы можете прочитать здесь и естественно гугл в помощь, а также видео, которое я записал.

Продолжаем знакомство с программой Virtualbox. В этой статье мы подробно рассмотрим раздел сетевых настроек виртуальной машины и познакомимся с типами подключения сетевых адаптеров. Рассмотрим работу соединений при использовании виртуальной машины в качестве локального сервера.

Общие сетевые настройки

Выберите раздел Сеть в окне настроек виртуальной машины.

virtualbox настройки

Раздел состоит из четырех вкладок, каждая вкладка - отдельный сетевой адаптер. Виртуальной машине может быть назначено до четырех сетевых адаптеров, каждый из них может выполнять различные функции в зависимости от типа подключения. Для виртуальной машины достаточно одного сетевого адаптера, правда иногда требуется подключение двух сетевых карт, бывает нужно при создании локального сервера.

В меню Дополнительно можно увидеть дополнительные настройки сетевого адаптера.

virtualbox настройки

Тип адаптера - настройка позволяющая выбрать эмуляцию сетевой карты определенного вида. По умолчанию создается адаптер с эмуляцией сетевой карты - Intel PRO/1000 MT Desktop

virtualbox настройки

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

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

MAC-адрес (Media Access Control) - уникальный идентификатор устройства в сети, один из главных параметров по которому может определяться тот или иной компьютер. MAC-адрес вшивается в каждую сетевую карту в процессе создания, то же что и imei в мобильных телефонах. В железных картах MAC изменить нельзя, но можно подменить программно. В Virtualbox изменить можно, нажав на синий кружочек в виде двух стрелочек. Генерируется автоматически при создании адаптера.

Подключить кабель - то же самое что подключить/отключить кабель в реальной сетевой карте, при снятой галочке сетевой интерфейс перестает быть доступным, но продолжает работать. Не стоит путать с другой галочкой в самом верху - Включить сетевой адаптер, отвечающей за включение/отключение самого сетевого адаптера.

Типы подключений сетевых адаптеров

Существует семь типов подключений сетевых адаптеров. Каждый создает собственный режим взаимодействия между виртуальным и физическим сетевыми устройствами.

Не подключен

Режим симулирует выдернутый из разъема сетевой кабель. Virtualbox сообщает системе что сетевой адаптер существует, но является неактивным.

NAT (Network Address Translation)

Тип подключения присваивающийся каждой виртуальной машине по умолчанию. Отвечает минимальным требованиям для работы в сети интернет и не требует первоначальной настройки.

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

NAT имитирует подключение к маршрутизатору. Маршрутизатором выступает сетевой модуль Virtualbox, обрабатывающий исходящие пакеты и пересылающий их хост-системе, точно так же происходит обработка входящего трафика. Маршрутизатор создается между каждой виртуальной машиной и хост-системой. Посредством такого разделения виртуальная машина становится защищенной от контактов с другими машинами и проникновений со стороны внешней сети.

Виртуальная машина получает сетевой адрес от встроенного DHCP-сервера. Машине присваивается адрес из диапазона 10.0.X.0/24, где "X" обозначает адрес интерфейса, определяемый по формуле +2. Таким образом "X" будет равен 2, если имеется только один активный NAT-интерфейс. Гостевая операционная система получит адрес 10.0.2.15, сетевому шлюзу назначается адрес 10.0.2.2, сервер имен (DNS) получит 10.0.2.3.

Сетевой мост

Сетевой мост эмулирует карту подключенную к сети напрямую. Адаптер подключается к распределяющему устройству внутри сети, после чего машина получает стандартный ip-адрес из ее диапазона и в составе сети появляется еще один "компьютер".

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

Внутренняя сеть

Тип подключения симулирует закрытую сеть, доступную только для входящих в ее состав машин. Сеть полностью закрыта для хост-системы и прочих внешних устройств.

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

Примером использования внутренней сети является система Whonix, состоящая из двух виртуальных машин. Одна машина выступает в роли шлюза в сеть TOR, вторая машина является рабочей системой. Рабочая система соединяется с шлюзом через внутреннюю сеть, который в свою очередь отправляет весь трафик в TOR.

Виртуальный адаптер хоста

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

В хост-системе появляется устройство VirtualBox Host-Only Network. Оно имеет собственную подсеть 192.168.56.0 и шлюз с адресом - 192.168.56.1. Устройство соединяет подсеть и хост-систему без прямого выхода во внешнюю сеть.

Универсальный драйвер

Режим использует драйверы специальных типов взаимодействий, входящие в пакет расширений VirtualBox. Используется крайне редко и в обычной работе не нужен.

Сеть NAT

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

Виртуальная машина как локальный сервер

Если использовать виртуальную машину в качестве локального сервера, то пришло время рассмотреть типы соединений именно с этой точки зрения. Все типы нас не интересуют, в данной части речь пойдет всего лишь о четырех типах соединений.

  • NAT
  • Сеть NAT
  • Сетевой мост
  • Виртуальный адаптер хоста

Для каждого типа существуют свои условия, при соблюдении которых выбор типа подключения будет оправдан.

virtualbox настройки
NAT и Сеть NAT

Если компьютер подключен к сети напрямую, без дополнительного сетевого оборудования, просто кабелем вставленным в разъем сетевой карты или 3G/4G/ADSL модемом, то ваш тип подключения NAT или Cеть NAT.

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

virtualbox настройки

Сеть NAT представляет из себя подобие локальной подсети, являющейся общей для всех виртуальных машин входящих в ее состав.

virtualbox настройки

Рассуждая с точки зрения использования виртуальной машины в качестве локального сервера, главным недостатком данных типов подключения является их недоступность извне. Из-за этого не работают некоторые нужные функции: подключение к серверу по SSH, любые обращения к тестовым сайтам.

Ограничения NAT-режимов можно обойти пробросив порты для соединений или добавив сетевой адаптер с типом подключения - Виртуальный адаптер хоста. Оба способа обеспечивают входящие соединения между хост-системой и локальным сервером.

Виртуальный адаптер хоста

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

Сетевой мост

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

Как то мне задали вопрос: если нет роутера, то почему NAT, а не Сетевой мост? Действительно, почему? Если режим сетевого моста так хорош, то почему бы не использовать его, неважно есть у меня домашний маршрутизатор или нет?

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

Маршрутизатор

В моем распоряжении имеется несколько компьютеров и прочих устройств, типа планшетов и смартфонов. Все они объединены локальной сетью домашнего маршрутизатора. При подключении к сети, каждое устройство получает адрес из рабочего диапазона. Маршрутизатор подключен к сети провайдера и имеет статический внешний ip-адрес.

virtualbox настройки

В состав сети входят две виртуальные машины, находящиеся на компьютере с адресом 192.168.1.2. Хоть виртуальные машины и работают на одном компьютере, они имеют разные ip-адреса. Достигается это за счет использования сетевого моста.

Сетевой мост использует физическую сетевую карту компьютера, создавая собственное прямое подключение к маршрутизатору. Установив соединение, сетевой адаптер виртуальной машины получает ip-адрес из диапазона сети. Для маршрутизатора это выглядит будто к сети подключили еще одно устройство.

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

Без маршрутизатора

Теперь я выдернул сетевой кабель из роутера и подключил напрямую к сетевой карте компьютера (хост-системы). Домашняя сеть пропала и все стало выглядеть следующим образом.

virtualbox настройка

Виртуальная машина соединяется с маршрутизатором, но теперь это маршрутизатор провайдера. Виртуальной машине будет назначен динамический ip-адрес из его диапазона. У хост-системы теперь статический ip-адрес домашнего маршрутизатора, так как у него была привязка по MAC.

virtualbox настройки

virtualbox настройки

Теперь весь трафик между хост-системой и виртуальной машиной проходит через подсеть провайдера являющейся враждебной средой. Трафик может быть прослушан или перехвачен. Также неизвестно как провайдер отнесется к тому, что вы занимаете сразу два ip-адреса, обычно провайдеры выделяют один адрес на одного клиента.

Так что если у вас нет маршрутизатора и ваш компьютер подключается к сети напрямую, то вам надо использовать NAT или Сеть NAT, но ни в коем случае не Cетевой мост.

В следующей части статьи будут рассмотрены примеры настроек различных сетевых режимов.

Что нужно:
— чтобы в Debian работал интернет (сделал, работает);
— чтобы веб-сервер в Debian открывал сайты, которые запрашиваются в браузере из-под Windows.

В настройках VirtualBox для Debian сделал два сетевых адаптера. Один поставил в режим сетевого моста (eth0), второй в режим NAT (eth1), чтобы был интернет.

ipconfig

Посмотрел вывод ipconfig из-под Windows:

Тут виден адрес сетевого адаптера VirtualBox 192.168.56.1, а также адрес сетевого адаптера Host-OS 192.168.1.34. В файл hosts Windows внёс запись:
192.168.56.1 test.loc

Дальше зашёл в Debian и добавил в файл /etc/network/interfaces следующую запись:


После чего перезагрузил. В настройках nginx прописал, чтобы он слушал 80-ый порт и отзывался на домен test.loc, запустил nginx. На всякий случай проверил вывод команды ifconfig , чтобы проверить, присвоился ли нужный IP-адрес

eth0 Link encap:Ethernet HWaddr 08:00:27:b7:a6:fe
inet addr:192.168.56.1 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:feb7:a6fe/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:39 errors:0 dropped:0 overruns:0 frame:0
TX packets:37 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4558 (4.4 KiB) TX bytes:6580 (6.4 KiB)

eth1 Link encap:Ethernet HWaddr 08:00:27:70:5d:2e
inet addr:10.0.3.15 Bcast:10.0.3.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe70:5d2e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4 errors:0 dropped:0 overruns:0 frame:0
TX packets:45 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1300 (1.2 KiB) TX bytes:7552 (7.3 KiB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:33 errors:0 dropped:0 overruns:0 frame:0
TX packets:33 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:13461 (13.1 KiB) TX bytes:13461 (13.1 KiB)

Как видно — всё нормально. Теперь в Host-OS открываю браузер, набираю test.loc — ошибка, адрес недоступен. Чтобы проверить, нормально ли работает сервер nginx, пробую в /etc/hosts добавить запись 127.0.0.1 test.loc. Открываю браузер в Debian и перехожу по test.loc — nginx работает, открывает всё нормально.

Пробую из Windows пропинговать адрес Debian (192.168.56.1) — всё пингуется нормально, пакеты не теряются. Открываю в Windows Putty и пробую подконнектиться к Debian, выдаёт ошибку Network error: Connection refused

Где я допустил ошибку? Погуглил уже множество инструкций, ничего подходящего не нашёл.

на предыдущий вопрос Я спросил, как настроить m0n0wall в виртуальной машине. Теперь я хотел бы установить сетевой аддаптор на своей машине, который будет использоваться только для гостевой виртуальной машины, то есть не пропускать трафик с хост-машины. До сих пор я не мог найти способ сделать это. Я использую VBox 4.0.0.

У меня есть две физические сетевые карты, одна из которых я хотел бы использовать хост и одна для гостя.

Я попытался отключить эти два поля красным (который затем отключил коробки зеленым цветом) и оставил галочку "VirtualBox Bridged Networking Driver", но это не сработало (или, может быть, я ожидал, что это будет работать легче, чем я надеялся).

enter image description here

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

Я только что протестировал это работает Ubuntu 11.10 гость на Windows 7 хост с VirtualBox 4.1.16.

Я установил конфигурацию Virtualbox гостевой виртуальной машины я установил сетевой режим "мост" и подключен к локальной сети моего хоста.

на хосте я отключил все, кроме "VirtualBox Bridged Networking Driver" в списке свойств соединения.

Я впоследствии смог получить доступ к интернету из моей гостевой ОС, но не с хоста.

мой предназначенная польза была как виртуальный прибор обойти требование к моей сети университета для машин Виндовс установить собственническое отслеживая программное обеспечение. Университет выполняет только снятие отпечатков пальцев ОС перед аутентификацией в сети, поэтому можно загрузиться в Linux, подделать MAC-адрес, аутентифицировать, перезагрузиться в windows, подделать тот же MAC-адрес и подключиться к сети без проверки подлинности или отслеживания программного обеспечения.

Я еще не тестировал эту технику с виртуальной ОС настроен описанным выше способом, но я обновлю свой ответ с полным тестированием, когда я это сделаю.

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

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

кажется, что это на самом деле невозможно, так как сетевая карта хоста должна каким-то образом взаимодействовать с гостем, поэтому отключение функций на карте не будет работать. Все еще возможно сделать m0n0wall/gateway в VM.

Я был такой же проблемой с моей корпоративной машиной Windows 7.

У меня есть два соединения Ethernet, одно соединение с моей рабочей сетью, а другое-с маршрутизатором DSL. Это второе соединение, которое я использую для своих виртуальных машин.

Итак, когда я подключил DSL-соединение, мои рабочие приложения перестали работать должным образом.

лучше, чем изменить стоимость маршрутов из командной строки я нашел второй ответ, поступающий от uSlackr наиболее легко и лучшее решение, сняв все, кроме:

  • Virtual PC Network Filter Driver
  • VirtualBox Мост Сетевой Драйвер

конечно, я использую опцию мостового адаптера на Virtual Box для адаптера DSL

Читайте также: