Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

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

Hyper-V теряет сеть: Отключение VMQ (Virtual Machine Queue)

Обновлено: 15.08.2026

Архитектура VMQ и симптомы сетевого сбоя

Виртуальные машины (ВМ), работающие на гипервизоре Hyper-V, внезапно теряют сеть (линк отваливается). Пинг до ВМ пропадает (Request timed out), RDP-сессии обрываются, базы данных теряют клиентов. При этом сам физический хост Hyper-V доступен в сети и работает абсолютно нормально. Перезагрузка ВМ или переподключение ее виртуального сетевого адаптера (vNIC) решает проблему временно (на пару часов или дней), после чего сеть падает снова.

Что такое VMQ (Virtual Machine Queue)?

VMQ — это технология аппаратной разгрузки. Она позволяет сетевой карте физического хоста (NIC) сортировать входящие пакеты по MAC-адресам виртуальных машин и отправлять их напрямую в память конкретной ВМ, минуя виртуальный коммутатор (vSwitch). Проблема кроется в багах драйверов некоторых вендоров (Broadcom, Intel), которые не справляются с очередями, и пакеты просто зависают в буфере карты.

Пошаговое дерево решений (Отключение аппаратной разгрузки)

Этот знаменитый баг преследует серверы HPE и Dell, использующие гигабитные карты Broadcom (например, семейство NetXtreme 1GbE). Лучшее решение для карт 1Gbps — полностью отключить эту функцию.

Сценарий 1: Отключение VMQ в свойствах сетевой карты (Хост)

  1. На физическом сервере (хосте Hyper-V) откройте Сетевые подключения (ncpa.cpl).
  2. Нажмите правой кнопкой на физический сетевой адаптер (который подключен к Hyper-V vSwitch) -> Свойства.
  3. Нажмите кнопку Настроить (Configure) -> перейдите на вкладку Дополнительно (Advanced).
  4. В списке найдите параметр Virtual Machine Queues (Очереди виртуальных машин) или VMQ.
  5. Переведите его в состояние Disabled (Отключено).
  6. Нажмите ОК. (Внимание: сетевой линк на хосте "моргнет" на пару секунд). Повторите для всех портов (особенно если они в Team).

Сценарий 2: Глобальное отключение VMQ через PowerShell

Если сетевых карт много, используйте скрипт (выполнять на хосте от имени Администратора):

# Проверка статуса VMQ на всех адаптерах
Get-NetAdapterVmq

# Полное принудительное отключение VMQ на всех физических адаптерах хоста
Disable-NetAdapterVmq -Name "*"

Сценарий 3: Отключение VMQ в настройках самой Виртуальной Машины

Если вы не можете трогать физический адаптер, отключите VMQ (vRSS) на стороне конкретной ВМ:

  1. Откройте Диспетчер Hyper-V -> Параметры проблемной ВМ.
  2. Перейдите: Сетевой адаптер -> Аппаратное ускорение (Hardware Acceleration).
  3. Снимите галочку «Очередь виртуальных машин» (Enable virtual machine queue).

Типовые ошибки администраторов

  • Попытка переустановить Windows: Переустановка гостевой ОС или 'ковыряние' настроек внутри ВМ не поможет, так как пакеты дропаются аппаратно на уровне PCIe шины хоста. Проблема ТОЛЬКО в драйверах хоста.
Виртуальные машины постоянно "отваливаются" и тормозят, срывая работу предприятия?
Тюнинг виртуальных сетей требует глубокой экспертизы в драйверах и архитектуре NDIS. Делегируйте виртуализацию инженерам ITSTM: мы настроим отказоустойчивые сети (SET/LBFO), обновим микрокоды, профилируем I/O и обеспечим 100% аптайм баз данных.
Практический опыт инженера: При использовании современных сетевых карт 10G+ (Mellanox, Intel x520) отключение VMQ приведет к перегрузке нулевого ядра процессора (CPU0 Bottleneck). В таких высокоскоростных сетях вместо отключения VMQ необходимо настроить правильное распределение прерываний (RSS) и базовые процессоры (BaseProcessorNumber) через командлет `Set-NetAdapterVmq`, чтобы аппаратные очереди не пересекались с логическими ядрами, обслуживающими ОС.

Частые вопросы (FAQ)

Не замедлит ли отключение VMQ работу сети?

VMQ (и RSS) реально полезны только для сетей 10Gbps, 40Gbps и выше. Для стандартных гигабитных (1Gbps) адаптеров отключение VMQ не окажет никакого заметного влияния на скорость передачи данных, но зато полностью устранит зависания и потери пакетов.

Почему сеть падает только под нагрузкой?

Драйвер Broadcom не умеет корректно очищать переполненные кольцевые буферы (Ring Buffers). Как только начинается бэкап или копирование файла, очередь переполняется, и драйвер 'встает в ступор', перестав передавать пакеты для этого конкретного MAC-адреса.

Поможет ли установка драйверов от Microsoft?

Наоборот. Встроенные в ОС (Inbox) драйверы Microsoft часто являются устаревшими и содержат этот баг. Вам необходимо скачать последнюю версию Enterprise-драйвера с сайта вендора вашего сервера (HPE / Dell / Lenovo).

Что такое SR-IOV и нужно ли его отключать?

SR-IOV (Single Root I/O Virtualization) — это продвинутая версия аппаратной разгрузки, позволяющая ВМ напрямую обращаться к железу сетевой карты. Если у вас багует VMQ, SR-IOV тоже может работать нестабильно. Для 1G сетей его лучше держать выключенным.

Как проверить, поддерживает ли карта VMQ?

В PowerShell на хосте выполните команду 'Get-NetAdapterVmq'. Она покажет список адаптеров, статус (Enabled/Disabled) и количество доступных аппаратных очередей.