Используя VirtualBox, я создал виртуальную машину со следующими настройками сети VirtualBox :
Attached to: Bridged Adapter
Name: wlan0
...
..
.
wlan0 - это беспроводной интерфейс моего ноутбука, который подключен к домашнему маршрутизатору, модель которого зависит от места, где я работал ... в разных местах разные модели маршрутизаторов.
Эта настройка работала хорошо, то есть гостевая ОС может взаимодействовать с Интернетом и другими ПК, подключенными к беспроводной сети. Моя проблема, когда я иду в некоторые места, которые имеют определенную модель маршрутизатора, например модель: ZXHN F660 .
Проблема с некоторыми моделями маршрутизаторов, такими как ZXHN F660, заключается в том, что гостевая ОС не получает ответа DHCP при настройке сетевого интерфейса во время загрузки.
Я назначил IP-адрес гостевой ОС вручную, чтобы протестировать возможный обходной путь, но скорость потери пакетов была настолько высока, что сделала сеть бесполезной.
Я проверил настройку моей хост-ОС так, чтобы она не использовала DHCP (используя статическую конфигурацию IP), поэтому в случае, если маршрутизатор просто отвечает на один запрос DHCP на беспроводное соединение, хост-операционная система не тратит впустую только эту пулю, но ничего, даже хост-ОС Не используйте DHCP для получения конфигурации сети, гостевая ОС не получает ответ от маршрутизатора при попытке настроить сетевой интерфейс во время загрузки. Обратите внимание, что я тестирую последний с помощью команды dhcpclient, и он такой же.
Я отбрасываю некоторые ограничения IP-адресов для каждой беспроводной связи, потому что могу пинговать после назначения статического IP-адреса гостевой ОС (но, как я уже сказал, частота потери пакетов слишком высока).
Какой механизм использует эти маршрутизаторы для запрета ответов DHCP? Есть обходной путь?
Я на Ubuntu 14.04 с последней версией VirtualBox.
РЕДАКТИРОВАТЬ
Работа в сети с операционной системой хоста хорошо работает со всеми протестированными мной маршрутизаторами, поэтому исключается проблема, связанная с сетевой картой хоста.
источник
Ответы:
Вы не можете подключиться к соединению клиента WiFi. Это запрещено спецификацией 802.11. Если бы вы могли, не было бы необходимости настраивать WDS в существующей точке доступа при расширении беспроводной сети - мы могли бы просто установить клиентское соединение с точкой доступа и подключиться к ней.
Некоторые маршрутизаторы по-разному нарушают спецификацию 802.11, чтобы заставить вещи, которые официально не должны работать, «просто работать» для удобства своих клиентов. Но вы абсолютно не можете положиться на это.
Проблема в том, что виртуальная машина и физическая машина имеют разные адреса сетевого оборудования. Соединяясь с Wi-Fi-соединением, вы предоставляете две разные аппаратные адреса точке доступа. Но у точки доступа есть только один беспроводной клиент, и это дает ей только один слот для аппаратного адреса.
Если мост передает пакеты с их исходными аппаратными адресами источника, спецификация 802.11 требует, чтобы точка доступа направляла пакеты, предназначенные только для одного из этих аппаратных адресов. Если мост проходит через пакеты с одинаковым аппаратным адресом, у него не будет надежного способа узнать, какие пакеты отправляются на хост, а какие - на виртуальную машину.
Правильным решением в соответствии со спецификацией 802.11 является WDS, который позволяет каждому беспроводному пакету иметь два аппаратных адреса назначения: один для конечной беспроводной точки и один для интерфейса Ethernet назначения. Но без WDS его можно подделать, только нарушив спецификации.
Вообще говоря, Wi-Fi и соединение не очень хорошо сочетаются. Вы можете использовать общий доступ к Интернету или что-либо на основе маршрутизации, а не мостов. Wi-Fi достаточно похож на Ethernet, чтобы люди ожидали, что он будет точно таким же, как Ethernet. Но это не так, и это одно из тех мест, где все по-другому.
источник
К сожалению, не все компоненты WLAN созданы равными. Даже в 2014 году некоторые беспроводные сетевые адаптеры будут плохо работать с некоторыми точками доступа.
Я совершенно уверен, что это не имеет ничего общего с VirtualBox - попробуйте выполнить команду ping с вашего хоста в другое место в сети, и я уверен, что вы увидите такую же потерю пакетов.
Я также уверен, что DHCP - это не причина, а симптом проблемы: процесс рукопожатия DHCP очень уязвим для потери пакетов, поэтому он может легко завершиться несколько раз подряд, создавая впечатление полного отказа.
Вещи, которые вы можете попробовать:
источник